Commit Graph

4383 Commits

Author SHA1 Message Date
Felipe Lalanne
118875e12e Fix apiUpdatePollInterval default to line up with API 2022-02-15 12:49:03 -03:00
Felipe Lalanne
a4d91d381a Create touch and getBootTime utility functions
Change-type: patch
2022-02-15 12:49:03 -03:00
bulldozer-balena[bot]
4e2b959481
Merge pull request #1881 from balena-os/1876-add-api-lock-checks
Add update lock checks to PATCH /v1/device/host-config endpoint
2022-02-15 15:40:04 +00:00
Christina Wang
5f1a77da25 Add update lock check to PATCH /v1/device/host-config
This is necessary with the changes as of balenaOS 2.82.6, which watches config.json
and will restart balena-hostname and some other services automatically on file change.

Change-type: patch
Relates-to: #1876
Signed-off-by: Christina Wang <christina@balena.io>
2022-02-14 22:22:00 +00:00
Christina Wang
4f446103f4 Remove lockingIfNecessary in favor of updateLock.lock
The functionality is pretty much the same, so we don't need the two
functions in two different places.

Signed-off-by: Christina Wang <christina@balena.io>
2022-02-14 22:06:18 +00:00
Balena CI
ff35af11b1 v12.11.33 2022-02-09 21:14:13 +02:00
bulldozer-balena[bot]
c1802ae80b
Merge pull request #1880 from balena-os/local-ipv6
Add support for local ipv6 reporting
2022-02-09 19:10:04 +00:00
Felipe Lalanne
72f6cbe4c7 Add support for local ipv6 reporting
With more and more devices in ipv6 only networks, this ensures the
local addresses are reported to the cloud as part of the state patch.

Change-type: patch
2022-02-08 19:06:13 -03:00
Balena CI
5e0cf27bba v12.11.32 2022-02-02 17:55:02 +02:00
bulldozer-balena[bot]
eaaa4eeec6
Merge pull request #1878 from balena-os/write-sync-config-json
Write sync config json
2022-02-02 15:53:26 +00:00
Felipe Lalanne
d071cd1507 Use writeAndSync when writing to config.json
`/mnt/boot` is a vfat partition which does not support atomic file
rename. The best course of action is to write and sync as fast as
possible to prevent corruption (although it still may happen)

Change-type: patch
2022-02-01 18:56:18 -03:00
Felipe Lalanne
a0ed00d8f3 Perform safeRename on writeFileAtomic
This forces a sync of the file as soon as the rename happens to prevent
corruption.
2022-02-01 18:56:18 -03:00
Balena CI
c5670ba366 v12.11.31 2022-02-01 23:49:09 +02:00
bulldozer-balena[bot]
b6bc81cadf
Merge pull request #1868 from balena-os/finish-event
Ensure the `finish` event is always reported when fetching images
2022-02-01 21:47:22 +00:00
Felipe Lalanne
fa0e28de6d Clean up image event reporting 2022-02-01 18:35:50 -03:00
Balena CI
6796383437 v12.11.30 2022-01-27 20:54:34 +02:00
bulldozer-balena[bot]
53d7d9c6c8
Merge pull request #1874 from balena-os/fake-304
Throw if target states gets a 304 without an ETAG
2022-01-27 18:52:06 +00:00
Felipe Lalanne
f471ad736c Throw if target states gets a 304 without an ETAG
The API uses 304 as a mechanism for load management on target state
requests. This may cause that the supervisor receives a 304 response
without having received a copy of the target state first, leading to
issues. This change checks for an etag when receiving a 304, throwing an
exception otherwise.

Change-type: patch
2022-01-26 11:27:15 -03:00
Balena CI
fba0317620 v12.11.29 2022-01-20 15:03:26 +02:00
bulldozer-balena[bot]
db6f226b7a
Merge pull request #1766 from balena-os/vipulgupta2048-patch-1-1
patch: Update fleet terminology for application update locks
2022-01-20 13:01:15 +00:00
Vipul Gupta (@vipulgupta2048)
277ab39dab Replace application --> fleet
Signed-off-by: Vipul Gupta (@vipulgupta2048) <vipul@balena.io>
2022-01-20 18:17:30 +05:30
Vipul Gupta
6357d3541e patch: Update fleet terminology for application update locks 2022-01-20 18:17:30 +05:30
Vipul Gupta (@vipulgupta2048)
a631e86997 patch: Update fleet terminology for the Supervisor API
Signed-off-by: Vipul Gupta (@vipulgupta2048) <vipul@balena.io>
2022-01-20 18:15:25 +05:30
Balena CI
ca7e42b2c7 v12.11.28 2022-01-19 17:31:27 +02:00
bulldozer-balena[bot]
ec263d3028
Merge pull request #1864 from balena-os/dmidecode
Use dmidecode to read cpuid in non ARM devices
2022-01-19 15:28:57 +00:00
Balena CI
fcaef150a8 v12.11.27 2022-01-18 15:03:33 +02:00
bulldozer-balena[bot]
8a773d0759
Merge pull request #1869 from balena-os/update-locking-env-var-changes
docs: Clarify that update locks prevent restarts from env var changes
2022-01-18 13:01:04 +00:00
Thodoris Greasidis
111db22177 docs: Clarify that update locks prevent restarts from env var changes
Resolves: https://github.com/balena-io/docs/issues/2175
Change-type: patch
2022-01-18 14:19:20 +02:00
Pagan Gazzard
ae501048f5 Ensure the finish event is always reported when fetching images
Change-type: patch
2022-01-18 11:45:13 +00:00
Balena CI
4a383b2b31 v12.11.26 2022-01-18 12:44:59 +02:00
bulldozer-balena[bot]
18242c7b0a
Merge pull request #1867 from balena-os/delta-timeout
Increase delta request timeout to 59s to better align with our backends
2022-01-18 10:42:34 +00:00
Pagan Gazzard
157fd95196 Increase delta request timeout to 59s to better align with our backends
Change-type: patch
2022-01-18 10:02:13 +00:00
Balena CI
1274cefa9b v12.11.25 2022-01-17 23:30:09 +02:00
bulldozer-balena[bot]
4cbef6046b
Merge pull request #1866 from balena-os/fix-token-memoization
Fix memoization of registry token request
2022-01-17 21:28:12 +00:00
Pagan Gazzard
fd1f646073 Fix memoization of registry token request
Change-type: patch
2022-01-17 16:52:43 +00:00
Felipe Lalanne
d06b8e053e Use dmidecode to read cpuid in non ARM devices
Cpu id is set to null so far for non ARM devices (e.g. Intel NUC). This
parses the output of dmidecode to get the cpu id and system model.

Change-type: patch
2022-01-13 22:49:42 +00:00
Balena CI
9c4e4acedf v12.11.24 2022-01-13 22:26:02 +02:00
bulldozer-balena[bot]
70ec8c9af4
Merge pull request #1847 from balena-os/apps-json-rename
Rename apps.json after initial preload
2022-01-13 20:24:23 +00:00
Felipe Lalanne
c7fc7aacf8 Use dmidecode to read cpuid in non ARM devices
Cpu id is set to null so far for non ARM devices (e.g. Intel NUC). This
parses the output of dmidecode to get the cpu id and system model.

Change-type: patch
2022-01-06 21:01:53 +00:00
Balena CI
0d4c902e35 v12.11.23 2022-01-06 18:39:59 +02:00
bulldozer-balena[bot]
751b23f9e7
Merge pull request #1835 from balena-os/add-supervisor-update-info
add-supervisor-update-info
2022-01-06 16:38:04 +00:00
fisehara
6ab314f8c0 Add troubleshooting notice for macOS
When developing on macOS (Darwin) DBus may have to be installed.

Change-type: patch
Signed-off-by: fisehara <harald@balena.io>
2021-12-30 15:39:59 +00:00
fisehara
0c8c1864ae add-supervisor-update-info
Adding clarity to the supervisor /v1/update endpoint that the endpoint will not trigger a supervisor update itself.

Change-type: patch
Signed-off-by: fisehara <harald@balena.io>
2021-12-28 19:58:51 +01:00
Balena CI
4abb7040de v12.11.22 2021-12-22 06:30:36 +02:00
bulldozer-balena[bot]
b18ee6cc35
Merge pull request #1834 from balena-os/update-poll-interval-desc
Refactor `SUPERVISOR_POLL_INTERVAL` description to mention back off
2021-12-22 04:29:08 +00:00
Miguel Casqueira
51ab203264 Refactor SUPERVISOR_POLL_INTERVAL description to mention back off
Change-type: patch
Signed-off-by: Miguel Casqueira <miguel@balena.io>
2021-12-21 23:17:15 -05:00
Balena CI
4f980e0056 v12.11.21 2021-12-18 17:54:33 +02:00
bulldozer-balena[bot]
922129b954
Merge pull request #1852 from balena-os/local-lookup-fix
Fix .local dns resolution when returning multiple addresses
2021-12-18 15:52:10 +00:00
Felipe Lalanne
08147e6a86 Ensure happy-eyeballs uses supervisor dns lookup
Happy-eyeballs performs [dns lookups](https://github.com/balena-io-modules/happy-eyeballs/blob/master/src/happy-eyeballs.ts#L23)
for the requested addresses, however, because of the order of imports it
was not using the supervisor custom `dns.lookup` that handles `.local`
name resolution, making address resolution fail in those cases.

Moving the import after the `dns.lookup` patch fixes the problem.
2021-12-16 11:59:59 -03:00
Felipe Lalanne
39c667803d Fix .local dns resolution when returning multiple addresses
The supervisor performs its own local resolution for `.local`
addresses due to a limitation in [musl](https://wiki.musl-libc.org/future-ideas.html).
The resolution function was not following exactly the nodejs [dns.lookup
specification](https://nodejs.org/api/dns.html#dnslookuphostname-options-callback)
which could cause certain clients to fail (in this case happy-eyeballs). This
updates the function to follow the specification.

Change-type: patch
2021-12-16 11:59:54 -03:00