balena-supervisor/test/integration/config
Christina Ying Wang 828bd22ba0 Add PowerFanConfig config backend
This config backend uses ConfigJsonConfigBackend to update
os.power and os.fan subfields under the "os" key, in order
to set power and fan configs. The expected format for os.power
and os.fan settings is:
```
{
  os: {
    power: {
      mode: string
    },
    fan: {
      profile: string
    }
  }
}
```

There may be other keys in os which are not managed by the Supervisor,
so PowerFanConfig backend doesn't read or write to them. Extra keys in os.power
and os.fan are ignored when getting boot config and removed when setting
boot config.

After this backend writes to config.json, host services os-power-mode
and os-fan-profile pick up the changes, on reboot in the former's case
and at runtime in the latter's case. The changes are applied by the host
services, which the Supervisor does not manage aside from streaming
their service logs to the dashboard.

Change-type: minor
Signed-off-by: Christina Ying Wang <christina@balena.io>
2024-12-09 18:43:51 -08:00
..
config-txt.spec.ts Add support for repeated overlays 2024-02-27 14:52:41 -03:00
configJson.spec.ts Support "os" key with object values in ConfigJsonConfigBackend 2024-12-09 18:29:26 -08:00
extlinux.spec.ts Migrate all device config tests to integration. 2022-11-14 11:12:52 -03:00
extra-uenv.spec.ts backends: Add Jetson Orin NANO custom device-tree support 2023-07-11 18:11:32 +03:00
odmdata.spec.ts Migrate all device config tests to integration. 2022-11-14 11:12:52 -03:00
power-fan.spec.ts Add PowerFanConfig config backend 2024-12-09 18:43:51 -08:00
splash-image.spec.ts Update @balena/lint to v7 2024-03-01 18:27:30 -03:00
utils.spec.ts Add PowerFanConfig config backend 2024-12-09 18:43:51 -08:00