balena-io / open-balena-api

The core API of openBalena
https://balena.io/open
GNU Affero General Public License v3.0
58 stars 29 forks source link

update strategy and handover timeout not being detect with BALENA_ prefix #735

Open 20k-ultra opened 3 years ago

20k-ultra commented 3 years ago

There is a legacy device configuration called SUPERVISOR_UPDATE_STRATEGY and SUPERVISOR_HANDOVER_TIMEOUT which are prefixed with RESIN_ or now BALENA_ however it only works with RESIN_. This is because of https://github.com/balena-io/open-balena-api/blob/17f79c6b01bf9d58a8531c471ac0b8de590d0f9d/src/features/device-state/routes/state.ts#L200-L205 specifically looking for variables with RESIN_.

20k-ultra commented 3 years ago

I'm just documenting this issue. We don't mind that this exists because this is just for backwards compatibility. If you encounter this issue you must set the update strategy in your services as a label in the docker-compose file: https://www.balena.io/docs/reference/supervisor/docker-compose/#labels.

pipex commented 2 years ago

Reopening this issue since there is no resolution either in the documentation or the API.

Although it is true that the way the supervisor understands release strategies is through labels, the we have also discussed having application level release strategies (see https://github.com/balena-os/balena-supervisor/issues/1103) and this method would be compatible with that, so I'm not entirely sure we want to move away from this method.

The simplest short term solution seems to be to update the code linked by @20k-ultra including the BALENA_SUPERVISOR_UPDATE_STRATEGY and BALENA_SUPERVISOR_HANDOVER_TIMEOUT

jellyfish-bot commented 2 years ago

[inspaya] This issue has attached support thread https://jel.ly.fish/b1dd2ce2-1a3f-4809-b9bc-b821fa7b9073