Commit Graph

4876 Commits

Author SHA1 Message Date
flowzone-app[bot]
21becded50
v16.7.8 2024-11-28 21:23:30 +00:00
flowzone-app[bot]
f3aade7c06
Merge pull request #2389 from balena-os/exclusive-locking-refactor
Refactor update-locks implementation
2024-11-28 21:22:34 +00:00
Felipe Lalanne
8b3b9a5b7b
Respect lockOverride when using withLock 2024-11-27 16:40:58 -03:00
Felipe Lalanne
9c09329b86
Clean up remaining locks on state settle
Locks could remain from a previous supervisor run that didn't get to
settle the state. This ensures that cleanup will happen for remaining
locks every time the state is settled.

Change-type: patch
2024-11-27 16:40:58 -03:00
Felipe Lalanne
3c6e9dd209
Refactor update-locks implementation
The refactor simplifies the implementation and ensures that locks per
app can only be held by one supervisor task at the time.

Change-type: patch
2024-11-27 16:40:50 -03:00
Felipe Lalanne
d8f54c05e7
Refactor lockfile module
Updated interfaces for clarity

Change-type: patch
2024-11-15 18:25:50 -03:00
flowzone-app[bot]
0a9de69994
v16.7.7 2024-11-11 19:02:38 +00:00
flowzone-app[bot]
b3b1fddfa5
Merge pull request #2386 from balena-os/allow-dns-from-custom-bridge-ifaces-for-firewall
Firewall: allow DNS requests from custom Docker bridge networks
2024-11-11 19:01:51 +00:00
Christina Ying Wang
7e1cafa866 Firewall: allow DNS requests from custom Docker bridge networks
We only allow DNS requests through `balena0` interface, but this
is the default Docker bridge which is used for containers that
don't have a custom bridge. However, the Supervisor creates a
custom bridge for all containers unless another network mode is
specified.

Change-type: patch
Signed-off-by: Christina Ying Wang <christina@balena.io>
2024-11-08 17:02:34 -08:00
flowzone-app[bot]
dd24fc1404
v16.7.6 2024-11-07 21:02:43 +00:00
flowzone-app[bot]
91a9058a88
Merge pull request #2385 from balena-os/firewall-docs
Update firewall documentation
2024-11-07 21:01:46 +00:00
Felipe Lalanne
1b747f6d65
Update firewall documentation
Removes experimental warning and updates issues

Change-type: patch
2024-11-07 11:04:32 -03:00
flowzone-app[bot]
89ab01a082
v16.7.5 2024-11-07 13:34:08 +00:00
flowzone-app[bot]
75a3b3bea0
Merge pull request #2383 from balena-os/delete-apps-by-uuid-not-in-target
Delete apps not in target from db by appUuid instead of appId
2024-11-07 13:33:15 +00:00
Christina Ying Wang
3d3f659f16 Delete apps not in target from db by appUuid instead of appId
Resolve an issue in balenaMachine instances that were installed at <v14.1.0,
in which a Supervisor app with random UUID is kept in the target db due to its appId
being the same, even after the BM instance has upgraded to v14.1.0 which patches
the correct reserved Supervisor app UUIDs in. This results in two Supervisors running
on devices under the BM instance which persists after BM upgrade.

See: https://balena.fibery.io/search/T7ozi#Inputs/Pattern/Two-supervisors-are-running-on-device-3370
Change-type: patch
Signed-off-by: Christina Ying Wang <christina@balena.io>
2024-11-04 14:15:55 -08:00
flowzone-app[bot]
a8053b9217
v16.7.4 2024-10-28 14:40:46 +00:00
balena-renovate[bot]
4989db4105
Merge pull request #2374 from balena-os/renovate/npm-express-vulnerability
Update express to v4.20.0 [SECURITY]
2024-10-28 14:39:58 +00:00
balena-renovate[bot]
f2aaf7372d
Update express to v4.20.0 [SECURITY]
Update express from 4.19.2 to 4.20.0

Change-type: patch
2024-10-28 14:07:00 +00:00
flowzone-app[bot]
52a9db43bc
v16.7.3 2024-10-28 14:04:26 +00:00
Felipe Lalanne
0c958efbca
Merge pull request #2375 from balena-os/alexgg/sb
Add NXP support to balenaOS secure boot
2024-10-28 11:03:27 -03:00
Alex Gonzalez
619f644299 Add NXP support to balenaOS secure boot
On NXP iMX devices the partitions are not encrypted with LUKS but with
the lower level dm-crypt subsystem.

Adapt the partition mount script to use dmsetup which works for both
LUKS and dm-crypt encrypted partitions.

Change-type: patch
Signed-off-by: Alex Gonzalez <alexg@balena.io>
2024-10-18 13:53:14 -03:00
flowzone-app[bot]
43bb9523f0
v16.7.2 2024-10-18 15:21:01 +00:00
flowzone-app[bot]
6954e7c6cf
Merge pull request #2380 from balena-os/bookworm
Use bookworm image to source journalctl binaries
2024-10-18 15:19:13 +00:00
Felipe Lalanne
57a17ea207
Use bookworm image to source journalctl binaries
Debian no longer publishes linux/arm/v5 images for bullseye, breaking
support for raspberry pi zero.

This change might not solve the issue indefinitely
as we don't know how long debian will continue publishing armv5 images.

Change-type: patch
2024-10-18 10:42:52 -03:00
flowzone-app[bot]
cb465a1d81
v16.7.1 2024-09-26 14:28:10 +00:00
Christina Wang
c429daafc9
Merge pull request #2373 from balena-os/add-compose-init-support
Add support for init field from compose
2024-09-26 07:27:01 -07:00
Christina Ying Wang
ed1c18e369
Add support for init field from compose
Init supports boolean values, and is not included in the config when
not defined.

Change-type: patch
Signed-off-by: Christina Ying Wang <christina@balena.io>
2024-09-26 10:39:59 -03:00
flowzone-app[bot]
e01aaaaafb
v16.7.0 2024-09-02 15:33:44 +00:00
flowzone-app[bot]
23d74b7ca3
Merge pull request #2342 from balena-os/update-status
Report app release update status to the API
2024-09-02 15:32:39 +00:00
Felipe Lalanne
e9a52e6786 Store rejected apps in the database
This moves from throwing an error when an app is rejected due to unmet
requirements (because of contracts) to storing the target with a
`rejected` flag on the database.

The application manager filters rejected apps when calculating steps to
prevent them from affecting the current state. The state engine uses the
rejection info to generate the state report.

Change-type: minor
2024-08-30 10:52:11 -04:00
Felipe Lalanne
227fee9941 Set the app update status when reporting state
Change-type: minor
2024-08-30 10:52:11 -04:00
Felipe Lalanne
48e526ec43 Refactor contracts validation code
This updates the interfaces on lib/contracts and the validation in
the application-manager module.
2024-08-30 10:52:11 -04:00
Felipe Lalanne
e9f460fd75 Add update status to types
Change-type: minor
2024-08-30 10:52:11 -04:00
Felipe Lalanne
9b819e4837 Update typescript to 5.5.4 2024-08-30 10:52:11 -04:00
flowzone-app[bot]
649a20fbe0
v16.6.1 2024-08-29 16:36:13 +00:00
flowzone-app[bot]
70a4fa3274
Merge pull request #2369 from balena-os/remove-patch-device
Remove unused patchDevice function
2024-08-29 16:35:17 +00:00
Felipe Lalanne
788afee9a1
Remove unused patchDevice function
This function was a remainder of the dependent devices code that no
was removed on #2105

Change-type: patch
2024-08-29 10:34:43 -04:00
flowzone-app[bot]
5a1c81a408
v16.6.0 2024-08-28 22:47:12 +00:00
flowzone-app[bot]
da6f4bdbaf
Merge pull request #2284 from balena-os/enable-redsocks-dnsu2t
Enable redsocks dnsu2t
2024-08-28 22:46:17 +00:00
Christina Ying Wang
186a412ecf Add dnsu2t support to API docs for PATCH /v1/device/host-config
Signed-off-by: Christina Ying Wang <christina@balena.io>
2024-08-28 14:01:58 -07:00
Christina Ying Wang
eaa07e97a9 Add support for redsocks dnsu2t config
Users may specify dnsu2t config by including a `dns` field
in the `proxy` section of PATCH /v1/device/host-config's body:
```
{
  network: {
    proxy: {
      dns: '1.1.1.1:53',
    }
  }
}
```

If `dns` is a string, ADDRESS and PORT are required and should be
in the format `ADDRESS:PORT`. The endpoint with error with
code 400 if either ADDRESS or PORT are missing.

`dns` may also be a boolean. If true, defaults will be configured.
If false, the dns configuration will be removed.

If `proxy` is patched to empty, `dns` will be removed regardless
of its current or input configs, as `dns` depends on an active
redsocks proxy to function.

Change-type: minor
Signed-off-by: Christina Ying Wang <christina@balena.io>
2024-08-28 14:01:51 -07:00
Christina Ying Wang
8bf346a6fd Parse dnsu2t block to dns config
Signed-off-by: Christina Ying Wang <christina@balena.io>
2024-08-28 13:51:46 -07:00
Christina Ying Wang
b775f8f14d Stringify dns subsection of redsocks input config to dnsu2t
Signed-off-by: Christina Ying Wang <christina@balena.io>
2024-08-28 13:51:46 -07:00
Christina Ying Wang
e724f60beb Strip additional fields from HostConfiguration type
Signed-off-by: Christina Ying Wang <christina@balena.io>
2024-08-28 13:51:46 -07:00
flowzone-app[bot]
78f0561988
v16.5.8 2024-08-27 22:41:44 +00:00
balena-renovate[bot]
ead2c5b772
Merge pull request #2368 from balena-os/renovate/npm-webpack-vulnerability
Update webpack to v5.94.0 [SECURITY]
2024-08-27 22:40:50 +00:00
balena-renovate[bot]
a480266c56
Update webpack to v5.94.0 [SECURITY]
Update webpack from 5.76.0 to 5.94.0

Change-type: patch
2024-08-27 22:08:57 +00:00
flowzone-app[bot]
13c42ef014
v16.5.7 2024-08-27 21:18:32 +00:00
flowzone-app[bot]
6577ded0cd
Merge pull request #2366 from balena-os/using-infer-steps-lock-unit-test
Add unit test for usingInferStepsLock
2024-08-27 21:17:44 +00:00
Christina Ying Wang
51e59725f8 Add unit test for usingInferStepsLock
Change-type: patch
Signed-off-by: Christina Ying Wang <christina@balena.io>
2024-08-26 13:44:51 -07:00