balena-supervisor/src
Cameron Diver 6f79702099
state-engine: Add rate limited steps to device-config
In the case of an airgapped supervisor, with a target state that
requests the vpn be enabled, the supervisor will constantly loop on
trying to set the vpn to on. Unfortunately the vpn requires an internet
connection to be configured, so it will never be turned on.

We add the concept of no-ops to the device-config state change steps,
and don't end the state engine transition while these are present
(similar to how image pulls are implemented).

Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-03-07 18:39:30 +00:00
..
compose feature: Add BALENA_API_URL environment variable when using the balena-api feature label 2019-02-28 11:41:28 +00:00
config feature: Add BALENA_API_URL environment variable when using the balena-api feature label 2019-02-28 11:41:28 +00:00
device-api Add the release to the status endpoint 2019-02-05 17:57:58 +00:00
lib Run iptables rules synchronous to avoid locking errors 2019-02-19 17:43:04 +00:00
logging-backends config: Replace supervisorOfflineMode and offlineMode with unmanaged 2018-12-14 15:01:41 +00:00
migrations device-config: Add migration for SUPERVISOR_DELTA_APPLY_TIMEOUT 2019-02-25 13:22:02 +01:00
types Specify TODO in DeviceApplicationState comment 2019-01-08 11:59:56 +00:00
api-binder.ts Increase max payload size in bodyparser to avoid PayloadTooLarge errors 2019-02-25 13:18:55 +01:00
app.coffee Introduce workaround for IPv6 DNS resolution until nodejs becomes RFC 3484 compliant 2018-03-07 07:01:43 -08:00
application-manager.coffee Increase max payload size in bodyparser to avoid PayloadTooLarge errors 2019-02-25 13:18:55 +01:00
application-manager.d.ts misc: Improve typings 2019-02-05 17:57:57 +00:00
db.ts Use dictionary for db key 2019-01-23 16:30:43 +00:00
device-config.ts state-engine: Add rate limited steps to device-config 2019-03-07 18:39:30 +00:00
device-state.coffee state-engine: Add rate limited steps to device-config 2019-03-07 18:39:30 +00:00
event-tracker.ts config: Replace supervisorOfflineMode and offlineMode with unmanaged 2018-12-14 15:01:41 +00:00
host-config.ts refactor: Change config modules export type to new-style 2019-01-02 18:12:22 +00:00
local-mode.ts config: Properly type the change events from config module 2019-01-21 11:13:14 +00:00
logger.ts Improve error messages, and add description to ImageAuth error 2019-02-13 15:44:42 +00:00
network.ts Convert network module to typescript 2018-11-28 15:15:06 +00:00
proxyvisor.coffee Increase max payload size in bodyparser to avoid PayloadTooLarge errors 2019-02-25 13:18:55 +01:00
supervisor-api.ts fix: Only apply supervisor api authentication after healthcheck entry 2019-01-29 14:19:45 +00:00
supervisor.coffee fix: Properly bind context to healthchecks 2019-01-29 14:19:45 +00:00