1127 Commits

Author SHA1 Message Date
Pagan Gazzard
81966446d9 Update to balena-lint and enable javascript linting
Change-type: patch
2020-03-24 09:28:12 +00:00
Matthew McGinn
ab7e8b5514 logging: fix up some typos
Change-type: patch
Signed-off-by: Matthew McGinn <matthew@balena.io>
2020-03-16 15:28:50 -04:00
Pagan Gazzard
6e3db3bd60 Update dependencies
Change-type: patch
2020-03-13 17:18:05 +00:00
Cameron Diver
5c50f656c3 Allow semver comparison on l4t versions in contracts
We add an implicit .0 to the end of l4t versions which do not fulfill
semver, which allows us to always match using comparison operators, such
as < and <=.

Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-03-06 15:54:04 +00:00
Cameron Diver
7d47661928 Allow l4t versions with three numbers as well as two
Closes: #1210
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-03-06 10:27:43 +00:00
Rich Bayliss
e0d2bdfaa9
config: Support loading SSDT via ConfigFS
Change-type: patch
Signed-off-by: Rich Bayliss <rich@balena.io>
2020-03-05 13:30:06 +00:00
Cameron Diver
cf76875f64
Improve dependent and preload typings
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-02-25 14:50:21 +07:00
Cameron Diver
c21da8f3db
Convert device-state module to typescript
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-02-25 14:50:21 +07:00
Cameron Diver
2309442555
Improve application-manager typings
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-02-25 14:50:20 +07:00
Cameron Diver
e161888516
Improve and extend internal typings
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-02-25 14:50:20 +07:00
Ivan
b5772740ae Add a containerId request parameter for journal-logs api endpoint, and pass it along to journalctl process options.
Change-Type: minor
Signed-off-by: Ivan <ivanign04.alt@gmail.com>
2020-02-22 16:42:38 -07:00
Cameron Diver
89a9d85e87
Add procfs label
Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-02-13 11:00:34 +07:00
Cameron Diver
947deb3cc6
Add a sysfs feature label
The new label `io.balena.features.sysfs` will mount the host /sys into
the container at /sys.

Relates to issue: #743

Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-02-13 11:00:34 +07:00
Cameron Diver
7dcb4fa887
Clean up the feature label function
Bring the labels into a more declarative format and run through them to
apply the various labels and env vars.

Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-02-13 11:00:33 +07:00
Cameron Diver
a27ce4f1dc
Dont error on a target state with multiple apps
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-02-10 12:06:12 +07:00
Rich Bayliss
fe5fd2b7ef
bug: Delay sending logs until the device is provisioned
Connects-to: #1189
Change-type: patch
Signed-off-by: Rich Bayliss <rich@balena.io>
2020-02-06 10:21:27 +00:00
Cameron Diver
3ff3bce605 Allow getting the target state when not in local mode
Change-type: patch
Closes: #1176
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-01-30 11:24:59 +00:00
Pagan Gazzard
027701297b Update knex types
Change-type: patch
2020-01-17 13:59:24 +00:00
Pagan Gazzard
1a393dbb19 Update lodash types
Change-type: patch
2020-01-17 13:51:55 +00:00
Pagan Gazzard
0ef9cc189b Update types and fix issue with treating string as a number
Change-type: patch
2020-01-17 13:06:27 +00:00
Cameron Diver
6e7a190ff0
Remove unnecessary awaits
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-01-16 11:14:39 +00:00
Cameron Diver
53b6e8f1bb
Increase minimum backoff delay and use poll interval as max
This change will start the minimum backoff from 15s (up from 500ms) and
will use the appUpdatePollInterval configuration variable as the max.

Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-01-16 11:14:00 +00:00
Cameron Diver
426d8cd10a
Ensure that we always have the pi4 overlay assigned
Change-type: patch
Closes: #1171
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-01-08 17:06:19 +00:00
Cameron Diver
4b0f431f9b
Throttle state report patches to once per 10 seconds
Change-type: patch
Closes: #1158
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-12-19 12:32:38 +00:00
Cameron Diver
2d4ac24403
Report the correct error when we cannot remove a network
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-12-18 15:02:18 +00:00
Cameron Diver
8317a1843b
Always do a standard docker download on first pull
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-12-17 10:34:28 +00:00
Cameron Diver
4a74dffea9
Don't allow cross-app delta requests
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-12-16 12:58:09 +00:00
Cameron Diver
6db1f03411
fix: ⬇️ Force a regular pull when moving from v2 to v3 deltas
Change-type: patch
Fixes: #1072
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-12-16 10:42:46 +00:00
Roman Mazur
4895bb300a
Add steps info to applyState error message
This helps to debug/diagnose problems with state application faster.

Change-type: patch
Signed-off-by: Roman Mazur <roman@balena.io>
2019-12-12 16:22:43 +02:00
Roman Mazur
d9c669ebad
Hide init method in configJson
ConfigJson users now don't need to worry about initialization.
It's done lazily on the first public method call.

Implementation is also rewritten to follow async/await pattern.

Change-type: patch
Signed-off-by: Roman Mazur <roman@balena.io>
2019-12-11 19:19:47 +02:00
Cameron Diver
03a701cded
Always filter environment configuration
This means that if an image is created with a committed container, we
won't assume that it does not contain the balena env vars

Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-12-09 11:28:34 +00:00
Rich Bayliss
c3cf8fbca2
volumes: Allow the use of the 'driver' setting in volumes
A compose file can now contain a volume which uses a different driver
from the default one; local.

Change-type: patch
Signed-off-by: Rich Bayliss <rich@balena.io>
2019-12-02 11:59:44 +00:00
Cameron Diver
8cece238a9 Set a mock l4t version for use with optional containers
Before this change a mixed device fleet with a subset using l4t would
not be able to have containers which only run on the l4t based boards.
We add a mock l4t version so the contracts will always be denied on
non-l4t boards, but the release itself won't fail to validate.

Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-11-29 11:07:04 +00:00
Cameron Diver
f4605d897e
Handle cancelDelay not being a function
Change-type: patch
Closes: #1080
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-11-28 11:28:04 +00:00
Cameron Diver
1a6c9d489a
Consider linux4tegra versions in container contracts
Also remove ability to match on OS versions

Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-11-27 10:22:35 +00:00
Cameron Diver
e44c7073f9
Fix retrieval of container log timestamp from db
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-11-20 11:23:11 -08:00
Theodor Gherzan
8589dbf3d1
Refactor code to use async/await syntax
Signed-off-by: Theodor Gherzan <theodor@balena.io>
2019-11-16 19:43:22 +00:00
Theodor Gherzan
1570fd424b
Create config.txt if there isn't one already
Change-type: patch
Signed-off-by: Theodor Gherzan <theodor@balena.io>
2019-11-16 18:43:31 +00:00
Theodor Gherzan
659697ff79
Extract backup logic to migration
Part of device-state refactor
Fix the wrong usage of TargetState as DeviceApplicationState

Change-type: patch
Signed-off-by: Theodor Gherzan <theodor@balena.io>
2019-11-15 17:39:48 +00:00
Theodor Gherzan
54e9c2edd8
Run new prettier on code base
Signed-off-by: Theodor Gherzan <theodor@balena.io>
2019-11-15 14:51:24 +00:00
Pagan Gazzard
05a566dcb5 Switch to balenaos-in-container
Change-type: patch
2019-11-12 13:50:05 +00:00
Michel Wohlert
597f95e169 Check if appId is a number before purging
Change-Type: patch
Signed-off-by: Michel Wohlert <michel@1012consulting.io>
2019-11-10 08:07:57 -08:00
Theodor Gherzan
cf79ed8cdb
Extract normaliseLegacy as normalise to migration module
Change-type: patch
Signed-off-by: Theodor Gherzan <theodor@balena.io>
2019-11-07 17:48:50 +00:00
Cameron Diver
053e111626
Define the database type of the application
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-11-07 09:47:19 +00:00
Cameron Diver
09a8231fde
Extract loadTargetFromFile function to preload module
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-11-07 09:47:19 +00:00
Cameron Diver
fea80c5205
Define TargetApplicationState in types and remove Application type
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-11-06 17:52:16 +00:00
Roman Mazur
2143180d27
event-tracker: Use std mixpanel types
Custom type definitions are removed for mixpanel module since they are embedded
into their npm package.

Change-type: patch
Signed-off-by: Roman Mazur <roman@balena.io>
2019-11-05 18:09:09 +02:00
Cameron Diver
8223bf2ccb Report any optional containers that aren't being run
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-11-05 14:44:22 +00:00
Cameron Diver
f75b8aad2b
Support optional containers based on their contract
Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-11-05 10:11:30 +00:00
Cameron Diver
b5a427f2b9
Convert some coffeescript tests to typescript
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-10-30 10:58:32 +00:00