- commits: - subject: Don't wrap UpdatesLockedErrors with a detailed error hash: dda627021991f45818ce723e0ee83c085b2c785d body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 11.0.4 date: 2020-04-07T12:15:24.426Z - commits: - subject: Allow spaces in volume definitions hash: 0950b66c52f2af10fcd44cb60f1b18007dd8aef0 body: '' footer: Closes: '#1247' closes: '#1247' Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 11.0.3 date: 2020-04-07T09:38:43.764Z - commits: - subject: Update to balena-register-device 6.0.1 hash: 81927d78612aa5944aab8a1322735e32c311d927 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 11.0.2 date: 2020-04-06T16:47:10.397Z - commits: - subject: Don't mangle names when minimising with webpack hash: 6fe3bfa4f2668fd364a977ccf4830e91b07fd47a body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 11.0.1 date: 2020-04-06T12:39:03.990Z - commits: - subject: ⚡ Update synchronisation scripts for supervisor development hash: 8ab63656bd483645fe0238fee2a1824158f3f453 body: | We move the old sync.js script to tools/, and delete the now-broken sync-debug.js. We add a command `npm run sync`, which starts a livepush process with the supervisor on a device. footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: "\U0001F527 Move to an alpine base image and drop i386-nlp support" hash: 3690acbd70df726030b648a1c32a9b2b21015232 body: > We also remove the Makefile to go to a simpler build system, as long with the retry_docker_push.sh file. We remove the rest of the automation tools as they're no longer used and update the circle.yml file. We also remove debug builds, as these aren't needed moving forward, and were only to enable livepush builds. footer: Change-type: major change-type: major Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 11.0.0 date: 2020-04-06T12:07:51.757Z - commits: - subject: Convert test/18-startup.coffee to typescript hash: d3221ca235aa0bd22191516f3eeebcabdf32e94b body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Convert test/19-compose-utils.coffee to javascript hash: 70b07055513f8948bf4c9867718ed4df3df61bc1 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Convert test/18-compose-network.coffee to javascript hash: 98e956831a4f8dc9e7e08bc98b21c0f8dd89e263 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Convert test/17-config-utils.spec.coffee to javascript hash: d3cf650ac48e94a1f7040b72b497e11945671015 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Convert test/16-ports.spec.coffee to typescript hash: dcb01cb8632c6a438e3989e6cbcdf2639d0367ba body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Convert test/15-conversions.spec.coffee to javascript hash: 515fb059f409ba33b0537c778e7d8191bf387a48 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Convert test/12-logger.spec.coffee to javascript hash: fd4cec31e7473d53ffa6a8650b341e7dec49a2cf body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.11.3 date: 2020-04-02T13:29:44.498Z - commits: - subject: Pass in deviceId when fetching device tags hash: 3c59944ce126570cc814626f20a9d67d6e67ff4d body: '' footer: Change-type: patch change-type: patch Closes: '#1237' closes: '#1237' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.11.2 date: 2020-03-31T11:48:13.361Z - commits: - subject: "\U0001F527 Update resin-lint -> balena-lint in lintstaged" hash: 2433f9a343d26233fff3d5bed14a548feded23ad body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.11.1 date: 2020-03-30T17:41:43.882Z - commits: - subject: Add BALENA_DEVICE_ARCH environment variable for containers hash: 3af89cd13fce04f43332c1d4502e2edf07a22141 body: '' footer: Closes: '#1232' closes: '#1232' Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.11.0 date: 2020-03-30T15:42:53.398Z - commits: - subject: Don't throw an error when getting an unhealthy state hash: 6b827a3f57f242e36e2a008632a28199ba569f63 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.10.15 date: 2020-03-30T09:10:59.937Z - commits: - subject: Convert src/device-api/common.coffee to javascript hash: 15fca80d2ddb16b368f0d2c34fb56b5b9bb6217f body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.10.14 date: 2020-03-28T13:43:13.705Z - commits: - subject: Switch to mz for the proxyvisor hash: 6ab69e1a69cf839538812aff3b9dc72c5a7937ef body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Convert proxyvisor to javascript hash: c1e5b98ae562851be61f74583743298803bf5195 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.10.13 date: 2020-03-27T17:53:13.782Z - commits: - subject: Remove unnecessary code from application-manager hash: 686f72ecf78d3f7a1b93102fd161cca8c562bfb7 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Switch to a named export for application-manager hash: 968e2ba0fb1dc99b826e8f32a23d10945697f340 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.10.12 date: 2020-03-26T23:53:03.757Z - commits: - subject: Convert device-api/v1 to javascript hash: 56c13fb96346e9100a60f1da881f6cf670c2793f body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.10.11 date: 2020-03-25T12:19:20.194Z - commits: - subject: Update livepush hash: 2ff8fccb5e71a851634f8bd668f63526f48ea4c4 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.10.10 date: 2020-03-24T18:10:13.063Z - commits: - subject: Add type checking for javascript files hash: 9c3295c91248f125e20ccfb10a064f2a2def0431 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.10.9 date: 2020-03-24T16:40:43.161Z - commits: - subject: Pin resin-cli-visuals to avoid build error of lzma-native hash: 35e73941c57ff63164cf0876fbb9509107e5e3f2 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Update dependencies hash: f2c606e1f9d37b6fefc345e42659b9ed364cba40 body: | We also pin livepush in place while https://github.com/balena-io-modules/livepush/issues/67 is fixed. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.10.8 date: 2020-03-24T14:54:44.950Z - commits: - subject: Avoid any transpilation of node_modules hash: 8fccc4a107fa965dfd60a861ba5e831c12632631 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.10.7 date: 2020-03-24T12:46:30.864Z - commits: - subject: Add transpilation for javascript files to ease node 6 compatibility hash: 8fc11df95912c6fd15d05c1cdc9fcdba854b2727 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Add a precheck that linting/tests work on node 10 hash: 7945bb5a77f29775233dea2695e1c20d79545f57 body: | This allows us to avoid re-linting for every arch footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Update to balena-lint and enable javascript linting hash: 81966446d97b3989e65be22b7d2dec379d3bcb32 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.10.6 date: 2020-03-24T09:31:13.247Z - commits: - subject: 'Tests: Add missing await' hash: 7e6d32516de84dbaed222651e48895dc0136b2e7 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.10.5 date: 2020-03-23T19:05:23.280Z - commits: - subject: 'docs: Clarify update locks for multicontainer applications' hash: a6b0c50d8effc9c63fe92d68cb4efbe397a1e05f body: '' footer: Change-type: patch change-type: patch Signed-off-by: Gareth Davies <gareth@balena.io> signed-off-by: Gareth Davies <gareth@balena.io> author: Gareth Davies version: 10.10.4 date: 2020-03-16T21:12:52.849Z - commits: - subject: 'logging: fix up some typos' hash: ab7e8b55140cc3169e9337f8c29a77468b13be7c body: '' footer: Change-type: patch change-type: patch Signed-off-by: Matthew McGinn <matthew@balena.io> signed-off-by: Matthew McGinn <matthew@balena.io> author: Matthew McGinn version: 10.10.3 date: 2020-03-16T19:31:23.505Z - commits: - subject: Bump acorn from 5.7.3 to 5.7.4 hash: f8363fc72b21386cc3561be576d8f21ec0463c89 body: | Bumps [acorn](https://github.com/acornjs/acorn) from 5.7.3 to 5.7.4. - [Release notes](https://github.com/acornjs/acorn/releases) - [Commits](https://github.com/acornjs/acorn/compare/5.7.3...5.7.4) footer: Change-type: patch change-type: patch Signed-off-by: 'dependabot[bot] <support@github.com>' signed-off-by: 'dependabot[bot] <support@github.com>' author: 'dependabot[bot]' version: 10.10.2 date: 2020-03-16T15:05:54.513Z - commits: - subject: Update dependencies hash: 6e3db3bd602d30ae3d377a1526c9b904c90a6cf3 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.10.1 date: 2020-03-13T17:21:22.854Z - commits: - subject: Allow semver comparison on l4t versions in contracts hash: 5c50f656c33954de6f4c07f8b6c892b4bf9953cf body: | 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 <=. footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Allow l4t versions with three numbers as well as two hash: 7d47661928288160c0a636cb630cb0ccc2292d91 body: '' footer: Closes: '#1210' closes: '#1210' Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.10.0 date: 2020-03-06T15:56:42.924Z - commits: - subject: 'config: Support loading SSDT via ConfigFS' hash: e0d2bdfaa98fe8c8d56fe981e530e6c96aef92a6 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Rich Bayliss <rich@balena.io> signed-off-by: Rich Bayliss <rich@balena.io> author: Rich Bayliss version: 10.9.2 date: 2020-03-05T13:33:03.818Z - commits: - subject: Convert device-state module to typescript hash: c21da8f3dbafe965ad0fae12b027066208debd12 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Improve application-manager typings hash: 23094425555f0d1ef9c04c2bc500c19f62984503 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Improve and extend internal typings hash: e161888516e7f234154245cfc8c9f82b6e2b656b body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.9.1 date: 2020-02-25T07:53:23.189Z - commits: - subject: >- Add a containerId request parameter for journal-logs api endpoint, and pass it along to journalctl process options. hash: b5772740ae3685fceceeda513fca4ff86a183d14 body: '' footer: Change-Type: minor change-type: minor Signed-off-by: Ivan <ivanign04.alt@gmail.com> signed-off-by: Ivan <ivanign04.alt@gmail.com> author: Ivan version: 10.9.0 date: 2020-02-24T00:17:42.799Z - commits: - subject: Add procfs label hash: 89a9d85e8743926cecbc82e8c53d37bca6f845b9 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Add a sysfs feature label hash: 947deb3cc62ddabb5f7309eb4ccaefaed1379b08 body: | The new label `io.balena.features.sysfs` will mount the host /sys into the container at /sys. Relates to issue: #743 footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Clean up the feature label function hash: 7dcb4fa887a6141475d40583f08acd500731a3f5 body: | Bring the labels into a more declarative format and run through them to apply the various labels and env vars. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.8.0 date: 2020-02-13T04:03:23.393Z - commits: - subject: Add a noinit option to sync-debug hash: c47ef6d42abfe840cfa833a9f8f3789e142299e6 body: | The noinit option will avoid doing a complete sync to the supervisor on startup. This is useful when there has only been code changes, and no modules etc have been added. It can be helpful when running on a network with no external internet access, as everything needed is already inside the container. To aid this we also move to yargs, rather than try to do all of the parsing ourselves. footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.7.0 date: 2020-02-12T09:36:50.912Z - commits: - subject: Update balenaos-in-container to pickup aufs2overlay changes hash: 4da1faced6746b9a9d90a90aa00bee18d581bc1e body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.37 date: 2020-02-10T16:36:43.597Z - commits: - subject: Switch to using resin-lint for automatic lint fixing hash: ab63f46b7e2c308e3cfd0b1a886d0a03bc577de6 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.6.36 date: 2020-02-10T10:46:23.653Z - commits: - subject: Dont error on a target state with multiple apps hash: a27ce4f1dce2d157366b350e37caf86d871b1f52 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.35 date: 2020-02-10T05:09:03.570Z - commits: - subject: 'bug: Delay sending logs until the device is provisioned' hash: fe5fd2b7ef5f40d688ee85c874934487d0c2d702 body: '' footer: Connects-to: '#1189' connects-to: '#1189' Change-type: patch change-type: patch Signed-off-by: Rich Bayliss <rich@balena.io> signed-off-by: Rich Bayliss <rich@balena.io> author: Rich Bayliss version: 10.6.34 date: 2020-02-06T10:43:04.222Z - commits: - subject: Allow getting the target state when not in local mode hash: 3ff3bce605ebf9e53a6df4e2646031cde2a8831c body: '' footer: Change-type: patch change-type: patch Closes: '#1176' closes: '#1176' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.33 date: 2020-01-30T11:27:33.298Z - commits: - subject: Set docker type and update CHANGELOG.md to the correct format hash: d1a3663d47b5e79c611929802c3a63b375e1a24f body: '' footer: Change-type: patch change-type: patch Signed-off-by: Giovanni Garufi <giovanni@balena.io> signed-off-by: Giovanni Garufi <giovanni@balena.io> author: Giovanni Garufi version: 10.6.32 date: 2020-01-28T00:22:10.551Z - commits: - subject: Update docker used for CI builds hash: 9dc9e0704b69f3e8980c8747cb341004b9be8399 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Update the deprecated `reusable` key to `docker_layer_caching` for CI hash: f4f7af042d49d8b5c3720883d5fe41b2e6b6664f body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Push all images in parallel for CI builds hash: 7e794629289756dc42bcc459c5c715b6a2dfce34 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.6.31 date: 2020-01-17T17:03:23.152Z - commits: - subject: Update knex types hash: 027701297b5366dd512ff31e7896d0a33065c52e body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Update lodash types hash: 1a393dbb1934e5821aa778c9316838adf0e429f5 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Update types and fix issue with treating string as a number hash: 0ef9cc189b66b66815d965591c31c05904bd815c body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.6.30 date: 2020-01-17T14:55:05.405Z - commits: - subject: ⌛Increase minimum backoff delay and use poll interval as max hash: 53b6e8f1bbd94228a170f581f3d38963143dd436 body: | This change will start the minimum backoff from 15s (up from 500ms) and will use the appUpdatePollInterval configuration variable as the max. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.29 date: 2020-01-17T12:34:53.143Z - commits: - subject: Ensure that we always have the pi4 overlay assigned hash: 426d8cd10ad22fcf79b019dc49e2c2f6c27cd06d body: '' footer: Change-type: patch change-type: patch Closes: '#1171' closes: '#1171' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.28 date: 2020-01-08T17:08:33.840Z - commits: - subject: Throttle state report patches to once per 10 seconds hash: 4b0f431f9b4eadcec30a21483a5ee5e3c2ecb14b body: '' footer: Change-type: patch change-type: patch Closes: '#1158' closes: '#1158' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.27 date: 2019-12-19T12:35:53.720Z - commits: - subject: Report the correct error when we cannot remove a network hash: 2d4ac244031bdaccace508c0ca3a77df77e4c368 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.26 date: 2019-12-18T15:05:24.037Z - commits: - subject: Fix healthcheck on supervisor debug builds hash: 4ff54f45c189b62124d8de9293fac23b0bb32835 body: | We were relying on wget which was not brought into the image, so we switch this to curl, which is present. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.25 date: 2019-12-18T14:39:21.218Z - commits: - subject: Always do a standard docker download on first pull hash: 8317a1843b3d3365b362cc90b2aad1e5e61a463f body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.24 date: 2019-12-17T10:36:33.272Z - commits: - subject: Don't allow cross-app delta requests hash: 4a74dffea96328b44cb6a4efa1938e3fb756f99a body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.23 date: 2019-12-16T13:00:29.779Z - commits: - subject: 'fix: ⬇️ Force a regular pull when moving from v2 to v3 deltas' hash: 6db1f03411897ec6f8bcf6433782557c75864bd7 body: '' footer: Change-type: patch change-type: patch Fixes: '#1072' fixes: '#1072' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.22 date: 2019-12-16T10:45:23.315Z - commits: - subject: Add steps info to applyState error message hash: 4895bb300a9675c70f5baa31ec04c91088a8d443 body: | This helps to debug/diagnose problems with state application faster. footer: Change-type: patch change-type: patch Signed-off-by: Roman Mazur <roman@balena.io> signed-off-by: Roman Mazur <roman@balena.io> author: Roman Mazur version: 10.6.21 date: 2019-12-12T14:27:33.589Z - commits: - subject: Hide init method in configJson hash: d9c669ebad7b115f018a922f6b329950fd86b6b1 body: | 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. footer: Change-type: patch change-type: patch Signed-off-by: Roman Mazur <roman@balena.io> signed-off-by: Roman Mazur <roman@balena.io> author: Roman Mazur version: 10.6.20 date: 2019-12-11T18:14:09.414Z - commits: - subject: Always filter environment configuration hash: 03a701cdedf6a40aa707ca5ca22af8f1c9a14d40 body: | 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 footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.19 date: 2019-12-09T11:33:43.344Z - commits: - subject: 'volumes: Allow the use of the ''driver'' setting in volumes' hash: c3cf8fbca25d3f6dae5c58cf29f11b2c89d10353 body: | A compose file can now contain a volume which uses a different driver from the default one; local. footer: Change-type: patch change-type: patch Signed-off-by: Rich Bayliss <rich@balena.io> signed-off-by: Rich Bayliss <rich@balena.io> author: Rich Bayliss version: 10.6.18 date: 2019-12-02T12:02:23.535Z - commits: - subject: Set a mock l4t version for use with optional containers hash: 8cece238a9a7d552d5366ffa4170ba8998bb8bbf body: | 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. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.17 date: 2019-11-29T11:09:22.902Z - commits: - subject: 'codeowners: Add richbayliss as a code owner' hash: c816b863f82dc4d73b67a69220ebbbddab3573ea body: '' footer: Change-type: patch change-type: patch Signed-off-by: Rich Bayliss <rich@balena.io> signed-off-by: Rich Bayliss <rich@balena.io> author: Rich Bayliss version: 10.6.16 date: 2019-11-29T10:13:03.432Z - commits: - subject: Handle cancelDelay not being a function hash: f4605d897eea8286a3923060aea999a8eab9bc91 body: '' footer: Change-type: patch change-type: patch Closes: '#1080' closes: '#1080' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.15 date: 2019-11-28T11:31:03.427Z - commits: - subject: Add regression test for app manager init hash: f487711ba496328ea69ac815c68870975facf186 body: > If we had it eearlier, it would have prevented #1148. When init is called, withImagesFromDockerAndDB in images.ts is called as well. footer: Change-type: patch change-type: patch Signed-off-by: Roman Mazur <roman@balena.io> signed-off-by: Roman Mazur <roman@balena.io> author: Roman Mazur version: 10.6.14 date: 2019-11-27T18:04:03.732Z - commits: - subject: Consider linux4tegra versions in container contracts hash: 1a6c9d489ae1417d20a61c4240ba84bee6c8df29 body: | Also remove ability to match on OS versions footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Upgrade prettier and resin-lint hash: bba6d3d728a2f96977694a2c70f76da9d7b7629d body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.13 date: 2019-11-27T10:25:23.493Z - commits: - subject: Fix retrieval of container log timestamp from db hash: e44c7073f990c42336e4914e9926f4205520cfee body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.12 date: 2019-11-20T19:26:49.334Z - commits: - subject: Bump js-yaml from 3.12.0 to 3.13.1 hash: 9c88d8fb722c6005465754dff900379d091eb324 body: > Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.12.0 to 3.13.1. - [Release notes](https://github.com/nodeca/js-yaml/releases) - [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md) - [Commits](https://github.com/nodeca/js-yaml/compare/3.12.0...3.13.1) footer: Change-type: patch change-type: patch Signed-off-by: 'dependabot[bot] <support@github.com>' signed-off-by: 'dependabot[bot] <support@github.com>' author: 'dependabot[bot]' version: 10.6.11 date: 2019-11-19T20:14:15.729Z - commits: - subject: Update balenaos-in-container hash: 072a2f951a653f56f3f01532706897c3a15b9c01 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.6.10 date: 2019-11-19T11:30:09.713Z - commits: - subject: Create config.txt if there isn't one already hash: 1570fd424b8c192844ce308761ac8f329dac48f5 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Theodor Gherzan <theodor@balena.io> signed-off-by: Theodor Gherzan <theodor@balena.io> author: Theodor Gherzan version: 10.6.9 date: 2019-11-19T09:52:10.573Z - commits: - subject: Extract backup logic to migration hash: 659697ff795c4f9282321223c7963a6d8932a8d1 body: | Part of device-state refactor Fix the wrong usage of TargetState as DeviceApplicationState footer: Change-type: patch change-type: patch Signed-off-by: Theodor Gherzan <theodor@balena.io> signed-off-by: Theodor Gherzan <theodor@balena.io> author: Theodor Gherzan version: 10.6.8 date: 2019-11-15T17:42:19.314Z - commits: - subject: Rebase start-resin-supervisor on latest meta-balena hash: a1ddf3682d18bdd7c8dad0dd5d46cb2eb27110b7 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.6.7 date: 2019-11-13T20:25:49.837Z - commits: - subject: Switch to balenaos-in-container hash: 05a566dcb595ccacc432de1290ab2500ac380b6f body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.6.6 date: 2019-11-12T13:52:25.726Z - commits: - subject: Allow specifying an absolute path for the dind config.json hash: 9e660f1081cdb3da561a410b04c91807dab13133 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Fix dindctl when run from another dir hash: 57d4a19f1d6c077cca5cb966de185c6a3cca695f body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Fix dindctl unknown arg error message hash: b4ad29ec14a9fdffe038116b98ee293210b5d34e body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.6.5 date: 2019-11-12T11:36:45.442Z - commits: - subject: Check if appId is a number before purging hash: 597f95e1696f3934b6072a775949e7fd7010340e body: '' footer: Change-Type: patch change-type: patch Signed-off-by: Michel Wohlert <michel@1012consulting.io> signed-off-by: Michel Wohlert <michel@1012consulting.io> author: Michel Wohlert version: 10.6.4 date: 2019-11-11T11:00:29.945Z - commits: - subject: Extract normaliseLegacy as normalise to migration module hash: cf79ed8cdb96431a5a5fbe94885c1e96680df75c body: '' footer: Change-type: patch change-type: patch Signed-off-by: Theodor Gherzan <theodor@balena.io> signed-off-by: Theodor Gherzan <theodor@balena.io> author: Theodor Gherzan version: 10.6.3 date: 2019-11-07T17:52:39.365Z - commits: - subject: Define the database type of the application hash: 053e111626330ab4cc7a7dc545c94aa0674405ee body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Extract loadTargetFromFile function to preload module hash: 09a8231fdee467b8b726269a2ef1bc8338733a19 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Define TargetApplicationState in types and remove Application type hash: fea80c52059752fe7d97ce9032828243355c9981 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Upgrade typescript to 3.7 hash: 1d89174caf116236e856ee849369f35445f29d9d body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.2 date: 2019-11-07T09:49:48.602Z - commits: - subject: 'event-tracker: Use std mixpanel types' hash: 2143180d27d9ba0939a365ebcfd56fa069f6e2c8 body: > Custom type definitions are removed for mixpanel module since they are embedded into their npm package. footer: Change-type: patch change-type: patch Signed-off-by: Roman Mazur <roman@balena.io> signed-off-by: Roman Mazur <roman@balena.io> author: Roman Mazur version: 10.6.1 date: 2019-11-05T21:14:55.593Z - commits: - subject: Report any optional containers that aren't being run hash: 8223bf2ccb8e3c50a79860088b5d12607ad71671 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Support optional containers based on their contract hash: f75b8aad2bc7661de803b80dc7008de9a2c6a6af body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.6.0 date: 2019-11-05T14:48:39.493Z - commits: - subject: Bump lodash from 4.17.11 to 4.17.13 hash: 835ef7908e8daba1c0362fae8aaa4b592b2d1b2f body: > Bumps [lodash](https://github.com/lodash/lodash) from 4.17.11 to 4.17.13. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.11...4.17.13) footer: Change-type: patch change-type: patch Signed-off-by: 'dependabot[bot] <support@github.com>' signed-off-by: 'dependabot[bot] <support@github.com>' author: 'dependabot[bot]' version: 10.5.5 date: 2019-10-31T16:08:50.326Z - commits: - subject: 'docs: update lockfile Python snippet' hash: d12c10b0c2092615ac5d94168db703b23744006b body: > Port over the downstream changes from https://github.com/balena-io/docs/pull/1184 footer: Change-type: patch change-type: patch Signed-off-by: Matthew McGinn <matthew@balena.io> signed-off-by: Matthew McGinn <matthew@balena.io> author: Matthew McGinn version: 10.5.4 date: 2019-10-30T13:04:37.635Z - commits: - subject: Convert some coffeescript tests to typescript hash: b5a427f2b984114e93a02233efb85df125dbbec5 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Bump mixin-deep from 1.3.1 to 1.3.2 hash: d0f35359b3f32a87804f760c1d5303c380ea730f body: > Bumps [mixin-deep](https://github.com/jonschlinkert/mixin-deep) from 1.3.1 to 1.3.2. - [Release notes](https://github.com/jonschlinkert/mixin-deep/releases) - [Commits](https://github.com/jonschlinkert/mixin-deep/compare/1.3.1...1.3.2) footer: Change-type: patch change-type: patch Signed-off-by: 'dependabot[bot] <support@github.com>' signed-off-by: 'dependabot[bot] <support@github.com>' author: 'dependabot[bot]' version: 10.5.3 date: 2019-10-30T11:00:45.668Z - commits: - subject: >- Bump handlebars from 4.0.12 to 4.5.1 Bumps [handlebars](https://github.com/wycats/handlebars.js) from 4.0.12 to 4.5.1. - [Release notes](https://github.com/wycats/handlebars.js/releases) - [Changelog](https://github.com/wycats/handlebars.js/blob/v4.5.1/release-notes.md) - [Commits](https://github.com/wycats/handlebars.js/compare/v4.0.12...v4.5.1) hash: d767bada4eb5fd14c30a4fbd1e890848598318ff body: '' footer: Change-type: patch change-type: patch Signed-off-by: 'dependabot[bot] <support@github.com>' signed-off-by: 'dependabot[bot] <support@github.com>' author: 'dependabot[bot]' version: 10.5.2 date: 2019-10-29T11:48:48.695Z - commits: - subject: Ensure that we reset rate limits after a successful target apply hash: 9651bc70281afc885a6ae11d1fb7bf668611181c body: '' footer: Change-type: patch change-type: patch Closes: '#1117' closes: '#1117' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.5.1 date: 2019-10-28T12:03:08.990Z - commits: - subject: Add a cache around the database application target state hash: 7b8e7ea8ca32849be29e4103ce8c215e99a2bac9 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.5.0 date: 2019-10-07T13:18:33.096Z - commits: - subject: Correctly validate container contracts hash: d16403f65496cc94dc2839de7e38b3c3173005eb body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.4.1 date: 2019-10-02T14:51:35.443Z - commits: - subject: Add support for container contracts hash: 14e442f94376f4589f9d469ad823d92d9af9818d body: | These contracts can specify an OS version and supervisor version that they require. If any of the containers in a release have requirements that are not met, the release is rejected, and the previous release continues to run. footer: Change-type: minor change-type: minor Closes: '#1086' closes: '#1086' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Upgrade io-ts and fp-ts to 2.0.0 hash: 9843f62e2475225e3f66cfe3a6847f8c8428f79b body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'Add contract resolution code, which checks release requirements' hash: 5ce8ba8acfb05e8035c340f80442edcb5237d13a body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Avoid synchronous file accesses for os release info hash: 2d168784b2987a96993a256970174ff88f8c36f3 body: | This also required refactoring the request library to be generated with a promise, as we now no longer get the information synchronously. We also cache the release info, to avoid grabbing it again within the same runtime, which does not make sense. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Add test number to test files name hash: 487e2c54a1bf2b2df535ff99b5563c866da5ac2f body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Add a cache around the database application target state hash: 7239b93f4a04851e4adbf1478af95c4a337aaadd body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.4.0 date: 2019-10-01T15:19:51.369Z - commits: - subject: Unify API errors processing hash: 8b4c9837fa39bcb6642f7fd3208afa8d26b9af46 body: > With this change, we define a custom error handler as express middleware which renders 503 error with JSON response that includes status and message fields. The handler also logs the error, so the stack can be inspected in supervisor logs. It's also a point where we can report the error to analytics services. This removes a bunch of error handlers written in every request handler function. Behaviour should remain unchanged except the fact that /healthy endpoint now returns 503 in case of failure instead of 500. footer: Change-type: patch change-type: patch Signed-off-by: Roman Mazur <roman@balena.io> signed-off-by: Roman Mazur <roman@balena.io> author: Roman Mazur version: 10.3.8 date: 2019-09-23T14:24:38.467Z - commits: - subject: 'ping: move /ping out from authentication' hash: 8d5633a11f15cee356854e9c21502ada4b89e7c7 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Matthew McGinn <matthew@balena.io> signed-off-by: Matthew McGinn <matthew@balena.io> author: Matthew McGinn version: 10.3.7 date: 2019-09-20T13:19:51.070Z - commits: - subject: Explicitly remove volumes when purging hash: 15a1f45fd70117c4d819af436b95cb6f796dccba body: '' footer: Change-type: patch change-type: patch Closes: '#1083' closes: '#1083' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Catch and report cloud stream writing errors hash: 7d1da3818479e33141890a8f3d09557303331872 body: | If an error fires when writing to the cloud stream, it can stop any calling processes from completing. Given that a logging failure should not cause other processes to cancel, we catch and report the error but otherwise do nothing else. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.3.6 date: 2019-09-18T07:50:28.062Z - commits: - subject: Correctly handle partial IPAM configurations for networks hash: e78f8eccdc2fe23b02da15b8c469979a8146db41 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.3.5 date: 2019-09-16T11:30:37.265Z - commits: - subject: 'device-state: correctly call volume creation on backup restore step' hash: ca9f8ffca1e306d4f4551a505b93b0bc7c679c81 body: | The `createFromPath` method takes 3 parameters, while in a previous version it was only 2 (the new format splits the old format's first parameter into two, and keeping the last), before the refactor in commit 23e564389daaa29feb231d1b091e07df82a7a300 (supervisor v9.18.4) The backup restoration call has not been updated and thus calls that function the old (wrong) way, resulting in failed restore, and volume management errors on a device that attempted a restore. footer: Change-type: patch change-type: patch Signed-off-by: Gergely Imreh <gergely@balena.io> signed-off-by: Gergely Imreh <gergely@balena.io> author: Gergely Imreh version: 10.3.4 date: 2019-09-11T11:15:16.606Z - commits: - subject: 'entry.sh: conform to shellcheck syntax' hash: cda39ab9e16cb6e3d0979b1727792bd7e55917ec body: '' footer: Change-type: patch change-type: patch Signed-off-by: Matthew McGinn <matthew@balena.io> signed-off-by: Matthew McGinn <matthew@balena.io> author: Matthew McGinn version: 10.3.3 date: 2019-09-02T16:41:17.966Z - commits: - subject: Modification to unpacking volume backup hash: e3c1c333f0ff1658e2dc9f9699d0f818599199b7 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Thomas version: 10.3.2 date: 2019-09-02T12:30:57.957Z - commits: - subject: Pin debug builds to stretch base images to match non-debug builds hash: 93e3bc620ae07f30a3f28c6c40f72516d702ea5b body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.3.1 date: 2019-08-22T08:50:34.612Z - commits: - subject: Add usage example repo to documentation hash: da0534b3c8f239f8c6f1ded911d2509fb0230b05 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Add journald format flag hash: 48bccd34dba569a574110a045cc264201d26f4a1 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Update documentation and explicitly unpipe journald stream hash: 2d924b83fcfedc84b1d0ea2325a53cd7e89fc5c5 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.3.0 date: 2019-08-21T17:36:24.736Z - commits: - subject: Correctly generate network or volume creation steps hash: ded828da9a284c28f1617cd49ba6fbbd09f489a9 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.2.7 date: 2019-08-21T09:51:54.225Z - commits: - subject: Extract composition step work out to typescript compose module hash: 4f31b1867059d944469073551687da6ac25100c9 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Remove unused local mode parameter from images.getAvailable hash: 55ee5a468f088612c5df3629cf1a7216d000bb94 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.2.6 date: 2019-08-19T16:02:20.801Z - commits: - subject: Only consider certain array fields without order hash: 76de276b924edbbeb30cdad41ed491ad20129492 body: | Various fields returned from the docker daemon don't retain order (for example the volumes field). We now only select certain array values to compare taking order into account. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.2.5 date: 2019-08-19T14:02:34.739Z - commits: - subject: Take order into account when comparing service config arrays hash: 86e8a8564054b15003ec75440e6dd94507f64708 body: '' footer: Change-type: patch change-type: patch Closes: '#1060' closes: '#1060' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.2.4 date: 2019-08-15T16:09:11.152Z - commits: - subject: 'meta: remove pcarranzav as codeowner' hash: c3fe0f4d37a5d5a665dd64e8424eab8ff7f372b3 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Matthew McGinn <matthew@balena.io> signed-off-by: Matthew McGinn <matthew@balena.io> author: Matthew McGinn version: 10.2.3 date: 2019-08-14T17:59:58.749Z - commits: - subject: 'docs: fix up typo "sucess" -> "success"' hash: 8c9f974b072364283520e43bb3d0969eb8122d3d body: | Related to https://github.com/balena-io/docs/pull/1065 footer: Change-type: patch change-type: patch Signed-off-by: Matthew McGinn <matthew@balena.io> signed-off-by: Matthew McGinn <matthew@balena.io> author: Matthew McGinn version: 10.2.2 date: 2019-08-09T14:39:08.547Z - commits: - subject: Fix version documentation for journald endpoint hash: 1794b334a0c806b516745a4544d4af75111b390a body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.2.1 date: 2019-08-09T11:50:43.023Z - commits: - subject: Add an endpoint and module for reading journald logs hash: 43cbf7dbba20f9a84697ad24cf532fc20e6384b7 body: '' footer: Change-type: minor change-type: minor Closes: '#1003' closes: '#1003' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.2.0 date: 2019-08-09T10:10:42.609Z - commits: - subject: 'api: Avoid cloneDeep when copying target state.' hash: c62f4afe8d5bbf2803359b804372e512d70b3745 body: | This can cause issues where the stack is exhausted on large applications. footer: Change-type: patch change-type: patch Signed-off-by: Heds Simons <heds@balena.io> signed-off-by: Heds Simons <heds@balena.io> author: Cameron Diver version: 10.1.5 date: 2019-07-25T14:43:36.876Z - commits: - subject: Filter both null and omitted values hash: 4688524e4564b4f55870ce7a44a7a5c7d90c21ce body: | The docker daemon can sometimes return null for various fields, or omit the field altogether. The best thing to do with using the docker api is to always use == null to cover both instances. footer: Change-type: patch change-type: patch Signed-off-by: Roman Mazur <roman@balena.io> signed-off-by: Roman Mazur <roman@balena.io> author: Roman Mazur - subject: Use typed error to report inspection problems hash: 4b56022d93812852d9771e8c4ed1fa4f8e414d7f body: | This will throw a typed error in case when supervisor cannot inspect its own container. footer: Change-type: patch change-type: patch Signed-off-by: Roman Mazur <roman@balena.io> signed-off-by: Roman Mazur <roman@balena.io> author: Roman Mazur - subject: Prevent supervisor from deleting itself hash: 4846acb25ebd5b1400e3a74bc3a3c607ae98be8e body: > With recent changes to local mode behavior, supervisor removes all engine objects that were not present before entering local mode. With this change, supervisor also detects its own resources and does not delete them if it was updated during local mode operations. footer: Change-type: patch change-type: patch Signed-off-by: Roman Mazur <roman@balena.io> signed-off-by: Roman Mazur <roman@balena.io> author: Roman Mazur version: 10.1.4 date: 2019-07-25T10:06:17.925Z - commits: - subject: 'docs: update APPID to BALENA_APP_ID as exposed from the env' hash: f2bb8a768e655513cc72a4bd286f7803745c0f07 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Matthew McGinn <matthew@balena.io> signed-off-by: Matthew McGinn <matthew@balena.io> author: Matthew McGinn version: 10.1.3 date: 2019-07-24T22:42:58.009Z - commits: - subject: 'api: Perform network checks if device is unmanaged' hash: f9aa4681fa07a28cd5b9d63e697d76cff0faf4e6 body: | Without these checks the API GET /v1/device doesn't return a value for `ip_address`. footer: Change-type: patch change-type: patch Signed-off-by: Rich Bayliss <rich@balena.io> signed-off-by: Rich Bayliss <rich@balena.io> author: Rich Bayliss version: 10.1.2 date: 2019-07-24T14:44:11.596Z - commits: - subject: Fix invocation of livepush with sync-debug hash: 37ea6a92836faaf819a77568f43b3efc05e460a5 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.1.1 date: 2019-07-23T14:03:26.898Z - commits: - subject: 'Support network_modes of service:<servicename>' hash: c109a24874650f5f8d5a80fa11c8a62163e4d36b body: | That way that this is performed is by first adding a depends_on entry for the target service if it appears in a network mode. Then when we generate the docker container for this service, we use the containerId of the target container and replace the network_mode with `container:<id>`. When comparing state, we check that the containerId still points to the contianerId of the target container, and in this way we ensure that when a network mode target container changes, we change the dependent container too. footer: Change-type: minor change-type: minor Closes: '#851' closes: '#851' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.1.0 date: 2019-07-23T12:55:18.311Z - commits: - subject: 'fix: Always reboot when applying boot config' hash: e91fa6e7b33f4c859a47bd97ec837ff85049164f body: '' footer: Change-type: patch change-type: patch Closes: '#1037' closes: '#1037' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.0.5 date: 2019-07-22T15:10:57.680Z - commits: - subject: Pre-emptively pull required images in parallel hash: 565ef27b1b2c7e86d1b26571cec140e9da0ac14c body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Avoid unnecessary else in Makefile hash: 3945bb3a87eb18c6bcd175123d1cfa5afea78faf body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Fix installing the specified npm version in debug builds hash: 34983651d059de7e57cbb7171cf916bb1c033622 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Remove the dummy node-build step for debug images hash: ec816d115e98f0309ab0accbb69a45ba7c54fbab body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Reduce differences between the debug and standard dockerfiles hash: 31257f8f391e3a3500ca3772f0ab7cccb904b622 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Run image cleanup in parallel hash: 34af6e9b2a1306111033578632e5483ff5e07e66 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Do intermediate build pushing in parallel hash: 39e87414027525bc46467ea27cf864a49b89e8fc body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Minimise the amount of cache busted by a changed ARG hash: 1366abc7b113216fc007c78797a6c4e34d267a45 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Fix cache usage for builds hash: 0ad5d8688c2c09dc48cacd4a4af5bf7d8118709c body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 10.0.4 date: 2019-07-19T18:00:31.121Z - commits: - subject: 'fix: Don''t consider volume supervised labels when comparing' hash: cbb079e8dc03b9ef85336a8fbd22b85574c7db7e body: '' footer: Change-type: patch change-type: patch Closes: '#1039' closes: '#1039' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.0.3 date: 2019-07-19T11:20:19.861Z - commits: - subject: 'device-api: fix up small typos' hash: 2cb6ecc150c207704c08dee52cf8940a16d760c6 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Matthew McGinn <matthew@balena.io> signed-off-by: Matthew McGinn <matthew@balena.io> author: Matthew McGinn version: 10.0.2 date: 2019-07-18T12:11:27.099Z - commits: - subject: Don't attempt to cleanup any target state referenced volumes hash: a796777967facb96ade32f5a06e256b3b92d1e4b body: | The code before this change could potentially remove a volume which should not be removed if a container was deleted before the call that references said volume. To avoid this, we additionally filter the list of volumes to cleanup by any that are referenced in the target state. This means that cleanup will never remove it, as long as it's still supposed to be there, regardless of if a container references it or not. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.0.1 date: 2019-07-11T15:40:11.157Z - commits: - subject: Don't remove volumes when switching into local mode hash: e076622fe627d936f0b8e8c8f9ec9f9fba25de4f body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Add volume tests and fix test fixture setup for applications hash: 050c10dbb03dbd13adf6f5ad8447eb8460e327df body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Add a supervisor endpoint to cleanup orphaned volumes hash: 3304825216ad10fab15fcc1491c00671a144d142 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Only remove volumes when we're moving between applications hash: 5357d4729d777b48edeb4230bfab7b81ed67b460 body: '' footer: Change-type: major change-type: major Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Reorder debug dockerfile to faster livepushes hash: 9fdd1d7427b77f0d38820c0f2150b63f8f7c6312 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Dont try to set the commit if it's undefined hash: bb549a445be3109308be123ba703d7de29d02b62 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 10.0.0 date: 2019-07-10T13:27:43.106Z - commits: - subject: 'docs: fix up broken meta-balena proxy link' hash: baa0e875134e56418083962f40028f6a4dcb892e body: '' footer: Change-type: patch change-type: patch Signed-off-by: Matthew McGinn <matthew@balena.io> signed-off-by: Matthew McGinn <matthew@balena.io> author: Matthew McGinn version: 9.18.8 date: 2019-07-10T08:13:42.514Z - commits: - subject: Don't attempt to setup a log stream to the cloud before provision hash: 37945b4aa5325dba3b17aec19075f87b9ca9d20e body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Add more typescript conversions and export utilities from existing hash: 20a83e8e0a1e128e82a54fc05665c923d8e3d6d1 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.18.7 date: 2019-07-09T12:23:09.900Z - commits: - subject: >- Apply targetState immediately after update request Cancel delayed promise if exists and schedule a new one without delay, when /v1/update is called hash: 7a42b6719a25275363b458b4e2fac07298b73b59 body: '' footer: Change-type: patch change-type: patch author: Michel Wohlert version: 9.18.6 date: 2019-07-09T11:52:07.902Z - commits: - subject: Use resin-lint for mocha tests check hash: bea97f47a7c2b5748ca50632a7de93f7f18af5fd body: '' footer: Change-type: patch change-type: patch Signed-off-by: Roman Mazur <roman@balena.io> signed-off-by: Roman Mazur <roman@balena.io> author: Roman Mazur version: 9.18.5 date: 2019-07-08T16:23:26.845Z - commits: - subject: 'Fix network composition parsing, and correctly report compose config' hash: 89807c21fa599d952b0fd5f61302f94539f3b3ea body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Keep the network and volume models consistent across usage hash: e5d7379b74861c31b0cd2b6a94b4fdecf23cd35a body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Pass around instantiated Network objects when comparing state hash: eaff3a2ee574a404c0ebf610867556f4afead176 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Seperate volume handling into manager and object classes hash: 23e564389daaa29feb231d1b091e07df82a7a300 body: | This change also makes sure that in the application-manager workflow we pass around instances of the Volume class, rather than just the config. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: >- fix: When reporting initial config, avoid creating a "VPN enabled" unnecessary override hash: 743c8406c973af7ef85ff31ea8bb0bc99d4592fb body: > Since we were comparing the VPN's value before adding the explicit "true", there were cases were the VPN is off, and therefore "value" didn't match the default, so the supervisor would create a device specific SUPERVISOR_VPN_CONTROL = true, which is unnecessary and causes issues if users don't expect this and move the device to an app that has VPN disabled. The correct behavior is to compare "varValue" and only create a device config var if this value differs from the default. (This was the behavior before the TS conversion in 01ed7bb103b4df8fb0679cf858220db42d4a0b92 ) footer: Change-type: patch change-type: patch Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez version: 9.18.4 date: 2019-07-04T10:49:36.786Z - commits: - subject: Add mocha tests linter hash: 36fa23ab7dcd76e7eb207e59b2ebcca8560a015f body: > A simple script that detects presence of .only statements in tests. The idea is to avoid comitting them, so that all the tests are run with npm test. footer: Change-type: patch change-type: patch Signed-off-by: Roman Mazur <roman@balena.io> signed-off-by: Roman Mazur <roman@balena.io> author: Roman Mazur version: 9.18.3 date: 2019-06-29T13:44:31.994Z - commits: - subject: Use jessie base images for i386-nlp hash: 92aa9b40ab77316f052533cf7d0b12ec96000d0b body: | This fixes potential SIGILL errors with the supervisor on i386-nlp. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Ensure that all architectures use a node version that supports ci hash: 557f88965a8f076cf7a1a02ad965264f1c5beab9 body: | We do this by using the standalone installer pinned at v6.9.0. We use the standalone installer because npm itself fails to upgrade on the i386-nlp build (npm v3). The standalone installer is installed in /tmp, and then to avoid mysterious CI errors, we use the original npm to run the tests. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.18.2 date: 2019-06-27T16:13:21.666Z - commits: - subject: Fix tests run removing .only hash: aad1129f2619f3de48d577f107fa17be7589e556 body: > The issue was introduced with one of the recent changes related to local mode cleanup. footer: Change-type: patch change-type: patch Signed-off-by: Roman Mazur <roman@balena.io> signed-off-by: Roman Mazur <roman@balena.io> author: Roman Mazur version: 9.18.1 date: 2019-06-27T12:01:21.922Z - commits: - subject: Ensure we get input on parsing errors hash: 645bc6c185b804df0e6d2088c5239eabcfa4ce80 body: > We wrap JSON and date parsing code to ensure input data is logged in case of an error. footer: Change-type: minor change-type: minor Signed-off-by: Roman Mazur <roman@balena.io> signed-off-by: Roman Mazur <roman@balena.io> author: Roman Mazur - subject: Ensure local mode switch runs before target state hash: 7c4d8d765348425559115b0b8bf08903bef84f52 body: > This change makes DeviceState to wait until local mode switch is definitely completed before actually applying the state, which avoids races in state cleanup. footer: Change-type: patch change-type: patch Signed-off-by: Roman Mazur <roman@balena.io> signed-off-by: Roman Mazur <roman@balena.io> author: Roman Mazur - subject: Clean up local mode engine objects using snapshots hash: 4974c9200c3955d40bfb0348d8972eb9c6dba02d body: > Snapshot is collected to compare with engine state when local mode is turned off. footer: Change-type: minor change-type: minor Signed-off-by: Roman Mazur <roman@balena.io> signed-off-by: Roman Mazur <roman@balena.io> author: Roman Mazur - subject: Add sinon types hash: bc3c56da4e86941e4c143f066fb4e179ae21ba6b body: '' footer: Change-type: patch change-type: patch Signed-off-by: Roman Mazur <roman@balena.io> signed-off-by: Roman Mazur <roman@balena.io> author: Roman Mazur version: 9.18.0 date: 2019-06-26T15:01:34.535Z - commits: - subject: Change to https for cloning resinos-in-container submodule hash: 81b0d3142ec7209f75f5b6b009d295b95bb920a4 body: | May require a `git submodule sync` to update existing local config footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 9.17.2 date: 2019-06-25T13:26:00.531Z - commits: - subject: Update the resinos version for the dind supervisor hash: f5aedffa055baa4037dc912db8962468e5f42b8b body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 9.17.1 date: 2019-06-21T12:35:30.821Z - commits: - subject: Report device state in local mode hash: 024b9c45f493526d135a3e6926d0eda39c259446 body: | In local mode, we now update device status on the backend, but omit applications info in our updates. footer: Closes: '#959' closes: '#959' Change-type: minor change-type: minor Signed-off-by: Roman Mazur <roman@balena.io> signed-off-by: Roman Mazur <roman@balena.io> author: Roman Mazur version: 9.17.0 date: 2019-06-20T12:45:10.472Z - commits: - subject: Don't drop failed api patch data hash: 8c69ae7645763cca7af90b500076f8d176265b02 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.16.7 date: 2019-06-20T11:58:45.206Z - commits: - subject: Remove mochainon dependnecy hash: 3f5239b07f247e9da8a6fe03a4fa4251d12cd296 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Roman Mazur <roman@balena.io> signed-off-by: Roman Mazur <roman@balena.io> author: Roman Mazur version: 9.16.6 date: 2019-06-19T20:37:15.140Z - commits: - subject: Allow writing test files in typescript hash: 9dab00d1566bdff6c2a3b74a3c86865aa69cb415 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.16.5 date: 2019-06-19T09:57:54.774Z - commits: - subject: Make sync-debug much more reliable with logs hash: 6c7234f84bb8a46c01b8c7eb870d5031c7401213 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.16.4 date: 2019-06-18T12:34:25.345Z - commits: - subject: Fix typo in image selection hash: 65019bb5bc11a31817a6ade7f904d02376146aef body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.16.3 date: 2019-06-11T12:12:37.928Z - commits: - subject: Re-parallelise current image retrieval code hash: b1e4e8399b69c1c817a615b4e9b7f219d30538bc body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.16.2 date: 2019-06-11T06:50:59.287Z - commits: - subject: Revert "Add a controlling variable for mixpanel reporting" hash: 9c486275c9fcc1f7d1c322ff8142bd994d94117c body: | This reverts commit 1a7ed0f95bb24474ef7326309696da091e68a3d9. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.16.1 date: 2019-06-10T19:53:04.103Z - commits: - subject: Upgrade typescript and fix warnings hash: ea64f0b0b3c57e6bd2e01ef4483e73d037288fc8 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Pin prettier version to avoid changes in non-ci installs hash: 0593aadcacaedc9d358e0bfbd23cf3cc05613f4c body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Standardise all supervisor output logging hash: 2276dd54e12915cf2a505a56e971231c45e58328 body: | Also use the supervisor's own container logging monitoring code when running livepush on the supervisor container. footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.16.0 date: 2019-06-10T14:39:11.669Z - commits: - subject: Update and improve debug and development tools hash: 392c56b4d38bab367429d4b9bdaf2ee2c7fa18e6 body: | Add a debounce to the livepush invocations, execute on start and also add a wait on the supervisor CMD line for those rare occassions where the supervisor enters a restart loop. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.15.9 date: 2019-05-29T14:07:45.253Z - commits: - subject: Add a controlling variable for mixpanel reporting hash: 1a7ed0f95bb24474ef7326309696da091e68a3d9 body: '' footer: Change-type: patch change-type: patch Closes: '#990' closes: '#990' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.15.8 date: 2019-05-29T10:55:14.997Z - commits: - subject: Update balena-supervisor-base to v1.4.7 hash: a4563a78c39a20e815e5347229445df29282008e body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.15.7 date: 2019-05-29T09:04:10.686Z - commits: - subject: 'Add wrapper around container logs saving, to reduce db load' hash: 827967805246f6bc890df90dadf1c58b313521ad body: | Changes are collected together and exist in memory, for querying and saving. Once every 10 mins, every changed timestamp is flushed to the database. footer: Change-type: patch change-type: patch Closes: '#987' closes: '#987' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.15.6 date: 2019-05-28T14:57:25.572Z - commits: - subject: 'docs: remove legacy waffle link & gitter chat from README' hash: e0f875f07ba10098bd29e6d748dafc50fa6d02d3 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Matthew McGinn <matthew@balena.io> signed-off-by: Matthew McGinn <matthew@balena.io> author: Matthew McGinn version: 9.15.5 date: 2019-05-27T14:12:14.369Z - commits: - subject: Fix regression where node_modules stayed in resulting image hash: 99c08c807b6f0af02ef65e11aba5abaeeacdad44 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.15.4 date: 2019-05-27T12:45:26.298Z - commits: - subject: Move to resin-lint 3 and fix lint errors hash: 2a27b1d51f4d82ff79ca7ed2c5e36d981a400c44 body: | This is a massive commit, but nothing related to runtime has actually changed, only the lint errors have changed. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.15.3 date: 2019-05-26T17:57:21.428Z - commits: - subject: Dont check config.gz for loaded i6tables module hash: 1b1e0ce2f358f2e640aefa7628ad2d575117b0e9 body: | We also dont fail the initialisation if we cannot load the module. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.15.2 date: 2019-05-17T16:52:36.048Z - commits: - subject: Fix circle deploying of images hash: 954434fc4c3872e4cae53ce249b6d86b97e265c6 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.15.1 date: 2019-05-16T10:51:11.858Z - commits: - subject: Add livepush capabilities for debug builds hash: 73f207a76faaafbb60694304194a981c1a5018fe body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Change install step to not mask errors hash: 6bfeaf7ae77f08b89941867fa452a19fbe40d884 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Update sqlite3 to 4.0.9 to avoid arm build errors hash: 0428ca31b0a2953f674d023ccaf104624a6f536d body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Use balenalib base image for i386 base hash: 3ff9c5a9b17d7a9a9357d8b28dcad19e440800df body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Upgrade debug builds to node 10 for supported architectures hash: 2e6f03006317616f5c2884196c904399994ec87d body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Add debug build infrastructure and configuration hash: 4e779608a395a6e59bb413ef4e1f66597623ebc1 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Make delta application logs easier to parse for multicontainer hash: 1155d757e4937436a8fffb2ef81d1535e4579882 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Upgrade to node 10 for supported architectures hash: 56bac3a7ea90077dfce69d55cf90ce9a4b3a0997 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Upgrade to node 8 for supported architectures hash: b84f354ded674a1af127975f0ed9ec1cb9328678 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.15.0 date: 2019-05-15T11:51:30.227Z - commits: - subject: Allow system messages to not be tracked hash: 4e783fcd86c3058ccf28477730e2d269d8f2cca8 body: | Also don't track update lock events footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Format update lock logs with pretty-ms hash: 50fdee429055fd94db868b76ab89a0ff7a1d2ea8 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Display update lock notification in dashboard logs hash: 27b68b584583ebbdfc9864d59b320660d6d45329 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Show better logs for UpdatesLockedError hash: 5894a9baf3c243b1c9647530da3ca68d65bc6cfb body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Clear backoff counter on new target state hash: 5ace459ad2ff35718cf3b986c0bf737343d667bc body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.14.12 date: 2019-05-15T09:23:24.953Z - commits: - subject: Fix supervisor tests for node v10.12.0 and above hash: 932a6f29973547b1e9fd6b8bbbb1f075cc13669f body: | Changes in the node engine related to streams would cause the gzip streams flush function to be called at the wrong times. The sinon fake timers were also interacting with this. We use setImmediate to call the flush function, and remove sinon timers for the logging tests. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.14.11 date: 2019-05-10T11:36:26.579Z - commits: - subject: Cache delta auth token request results for 10 minutes hash: 51703621a572ae4bd71b7f0ef01cf53364b97939 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.14.10 date: 2019-05-10T10:17:52.132Z - commits: - subject: 'docs: make headers consistent' hash: acb38dfcfa8a7a658f083fe66455295bed503c51 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Matthew McGinn <matthew@balena.io> signed-off-by: Matthew McGinn <matthew@balena.io> author: Matthew McGinn version: 9.14.9 date: 2019-05-06T16:49:56.428Z - commits: - subject: 'docs: fix up some stray resin references' hash: 331b109a6473fe880ad70522c54fb527c1c2b15d body: '' footer: Change-type: patch change-type: patch Signed-off-by: Matthew McGinn <matthew@balena.io> signed-off-by: Matthew McGinn <matthew@balena.io> author: Matthew McGinn version: 9.14.8 date: 2019-05-03T11:01:56.292Z - commits: - subject: Perform case-insensitive checking when converting booleans from strings hash: 8424fb44f6524fc745b47bce6e517b9d18133ef9 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.14.7 date: 2019-05-03T10:34:42.043Z - commits: - subject: 'fix: Run db log cleanup on init - after migrations' hash: 9fae4bab620cebfc974b4e19464fa0c4ccb9a295 body: | Before this change the first time the cleanup code runs would be before the migrations have had a chance to execute. This change makes it so that the cleanup code always runs once the migrations have finished. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.14.6 date: 2019-04-25T15:59:45.568Z - commits: - subject: 'fix: Correctly handle multiple hosts ports pointing to a container port' hash: 0fa47f635bc9a05fea2d0f9b20a6cdc5a1797855 body: | When assigning multiple host ports to a single container port before this change, the supervisor would incorrectly take only the first host port into consideration. This change makes it so that every host port per container port is considered. footer: Closes: '#986' closes: '#986' Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.14.5 date: 2019-04-25T12:51:16.516Z - commits: - subject: 'compose: Remove unique expose entries after adding all entries' hash: 9e3fae585236c464fd25ab591b00d278c7d6463f body: | Prior to this change, we would `_.uniq` the expose value before adding values from the port mappings. This could cause ports to get added twice, which would cause the supervisor to think that there is a configuration mismatch. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.14.4 date: 2019-04-11T09:41:48.891Z - commits: - subject: Don't attempt to report any state during local mode hash: 892cf1961e5f86589f875e86294990dc8c6ed3bb body: | Even though this would never have attempted to report the state to the api during local mode, it leaves behind artifacts which would cause the state to be sometimes reported when exiting local mode. This would cause the api to reject the update unecessarily. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.14.3 date: 2019-04-10T14:43:23.197Z - commits: - subject: 'types: Upgrade dockerode types, and remove fixes which are superceded' hash: 80031b76e4e27fb39b4c5cdaf9d131a503a3d124 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.14.2 date: 2019-04-08T09:48:10.111Z - commits: - subject: 'avahi: Remove default service definitions' hash: 24ba07571c388e33720d8c3c9911dcc0ca33d297 body: | Removes default 'example' service definitions that are included by Avahi 0.7+. These conflict with our balenaOS advertised services, causing potential issues. footer: Connects-to: '#957' connects-to: '#957' Change-type: patch change-type: patch Signed-off-by: Heds Simons <heds@balena.io> signed-off-by: Heds Simons <heds@balena.io> author: Heds Simons version: 9.14.1 date: 2019-04-05T12:38:07.278Z - commits: - subject: Run database cleanup on startup in addition to once a day hash: 5943d3117c36b18466cc91c02be3a1805d34020f body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'fix: Fix non-tty container message parsing' hash: 760b18dd2aaa725bc283af29623ed3c913ec7d21 body: | This had a bug where it was using the `in` operator on a list. It may have worked for some cases, but would have failed for others. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Report all logs from a container's runtime hash: e148ce052903460ae369b23e67abe54cf22769b6 body: | We add a database table, which holds information about the last timestamp of a log successfully reported to a backend (local or remote). We then use this value to calculate from which point in time to start reporting logs from the container. If this is the first time we've seen a container, we get all logs, and for every log reported we save the timestamp. If it is not the first time we've seen a container, we request all logs since the last reported time, ensuring no interruption of service. footer: Change-type: minor change-type: minor Closes: '#937' closes: '#937' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Refactor container logging interface and rename logging-backends hash: 25fd11bed3a9f3b59db85b7c647765e371a50a74 body: | Container logging is now handled by a class which attaches and emits information from the container. We add these to the directory logging-backends/, and rename it to logging/. footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'ux: Show a supervisor starting log message in dashboard' hash: 196f173e13b7bd12c7f95cf7cd1273438a1d4fd7 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'ux: Remove service already running log message' hash: 0504776169be98894a213315095602ecc7e4882d body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.14.0 date: 2019-04-05T09:07:32.071Z - commits: - subject: 'In /v1/update, return 202 when we''re not updating immediately' hash: 9961ebb41d37c14b18b2bf4545eefae343a2c026 body: > We also add a catch to any errors when getting configuration, and send 503 in this case, even if it's unlikely. footer: Change-type: patch change-type: patch Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez - subject: >- Add a random jitter to target state polls, and a config var to ignore update notifications and not poll immediately after startup hash: 8f07bf62de4a509ac74380af8be42b2acf3c1b76 body: > This commit does two related things: * We make the poll interval a random time between 0.5 and 1.5 times the configured interval. * We introduce the BALENA_SUPERVISOR_INSTANT_UPDATE_TRIGGER configuration variable, that defaults to true. If this variable is set to false, then calls to /v1/update are ignored, and on startup the supervisor waits for a poll interval before getting the target state. This will help especially on cases where there's a large number of devices on a single network. By disabling instant updates and setting a large poll interval, we can now achieve a sitation where not all devices apply an update at the same time, which can help avoid overwhelming the network. footer: Change-type: minor change-type: minor Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez version: 9.13.0 date: 2019-04-03T16:18:11.345Z - commits: - subject: Fix service comparison when starting a stopped service hash: 9a343316b21522e34a94a66f2391e63a96516114 body: | When comparing a stopped container after a start request, the container ID will be present in the target state (where usually it is not). We were already filtering this value out of the current state, but neglected to do so for the target state. This change now ensures we remove it from both alias lists if it exists. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.12.7 date: 2019-04-03T12:12:48.672Z - commits: - subject: >- Fix migration of legacy apps when there's more than one app in the local DB hash: c90270660000a0043b3f48751ea5186e69904368 body: > In an edge case observed in the field, a supervisor's database held two applications because the device had been moved and the update lock was set in the old app. This causes the updated supervisor to be unable to start, logging "No compatible releases found in API", because it can't fetch the release for the app it was moved from. This commit changes the migration code to iterate through all apps, and remove any for which we can't get a release. footer: Change-type: patch change-type: patch Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez version: 9.12.6 date: 2019-03-29T00:18:13.744Z - commits: - subject: 'test: Add a test case for deviceConfig.getDefaults' hash: ea6ebf822312665280903424d3f4bff1edd0476c body: | This would help avoid bugs like the one fixed in 9.11.1. footer: Change-type: patch change-type: patch Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez version: 9.12.5 date: 2019-03-28T23:05:09.952Z - commits: - subject: Only modprobe ip6_tables if it's necessary hash: de051653166f3ad3388b76e305f18efe6db1768b body: > If the kernel was built with support for ip6tables, there's no need to load the module. This is the case when running balenaOS in a container in Mac OS, which also can't do modprobes easily. footer: Change-type: patch change-type: patch Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez version: 9.12.4 date: 2019-03-28T18:15:29.681Z - commits: - subject: Parallelise cache pulling for builds hash: 9af416c7c01a70feb2c67b625ad45b8dce6dbc4f body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 9.12.3 date: 2019-03-28T14:15:13.930Z - commits: - subject: Fix typo in delta request error message hash: 175cbfee500332b47d55350c7a5c89eae211be06 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.12.2 date: 2019-03-28T12:34:19.072Z - commits: - subject: 'fix: Correctly compare and generate network membership aliases' hash: b3192679c765940d3d6401efd85c845652b1f0f8 body: | Before this change, service name resolution would only occur in the default network. This was because we were not explicitly adding aliases of the service names to the aliases fields. We also fix the comparison, which would do funny things based on container IDs, which was correct but unnecessary. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.12.1 date: 2019-03-28T10:28:41.386Z - commits: - subject: 'misc: Update build stages to debian stretch' hash: 1191b39ee50ab5c8d7135733d55e498dc1b4e3fd body: | Jessie recently had the jessie-updates repos dropped. We upgrade to stretch to avoid a 404 on update (and to update things anyway). footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'device-config: Show invalid values in dashboard logs' hash: c7499a6b128582e540d2e0d3e51f4acc698ea7f1 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'events: Allow system messages to not be tracked' hash: 83d53cfb563c83b24f856279466859edeb06c4af body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'device-config: Use default values for any invalid target values' hash: c211efe399d642840b7abd751c3ea1dce01935cd body: | If a value is requested which does not pass validation, we instead set it to the default value, to ensure that the state engine continues to work and move towards the target state. footer: Change-type: minor change-type: minor Closes: '#938' closes: '#938' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.12.0 date: 2019-03-27T14:20:21.282Z - commits: - subject: >- fix: When pinning a preloaded device, ensure the pinning is done when retrying after a failure hash: 22a5b331969af7e8f84bc8b5054ff80ff6c33dad body: > Without this patch, if for some reason device pinning fails (e.g. connectivity goes down) or anything interrupts the initialization after provisioning completes but before pinning is completed, after a retry the supervisor would just skip the pinning code, leaving the device unpinned. This patch ensures that the pinning procedure is run even if the device was already provisioned (as long as the pinning flag has been set, of course). This matches the behavior that the CoffeeScript code had from before the TypeScript conversion. footer: Change-type: patch change-type: patch Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez - subject: >- fix: Return a promise when retrying provisioning to avoid continuing after a failure hash: 6e3bedeb1d1fe8e1facb2bb3330d2ecc499118b1 body: > Otherwise we'll keep doing the rest of the APIBinder init steps, like reporting initial config, potentially before completing the provisioning. footer: Change-type: patch change-type: patch Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez version: 9.11.3 date: 2019-03-21T00:56:45.740Z - commits: - subject: >- fix: Await reporting the initial config before continuing APIBinder initialization hash: b374bd81dd2a8829078e2ae97d96700eebd63dce body: > This avoid a race condition, in which config.txt can be cleared if a target state is fetched before the initial values have been created as config vars. footer: Change-type: patch change-type: patch Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez version: 9.11.2 date: 2019-03-20T19:32:19.214Z - commits: - subject: Fix typo when getting device config default values hash: f32de99aff525db866500c19a8bd24b8f216852e body: '' footer: Change-type: patch change-type: patch Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez version: 9.11.1 date: 2019-03-19T20:50:22.269Z - commits: - subject: >- fix: Correct use of $expand to avoid an exception when updating from a legacy OS hash: d64dcb4b4060d3e6fd84382d3b12c6d8a3fe2310 body: > The last update of pinejs-client to pinejs-client-request made the way we were using $expand on the migration break. This switches to the correct way of doing it now. footer: Change-type: patch change-type: patch Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez - subject: 'device-api: Add v2/device/tags api endpoint' hash: b922789deeb29568b7105ef2ffc3b6ec8900f97f body: | This endpoint will fetch the device tags from the balena api footer: Change-type: minor change-type: minor Closes: '#890' closes: '#890' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'device-api: Add v2/device/name endpoint' hash: 3f231e8ff3af80fd6006064d951013858bddcba3 body: | This endpoint returns the last known device name from the API. This differs from the BALENA_DEVICE_NAME_AT_INIT env var because this will not change throughout the runtime of the container. footer: Closes: '#908' closes: '#908' Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.11.0 date: 2019-03-18T16:56:09.031Z - commits: - subject: 'state-engine: Return a noop when waiting for a dependency' hash: 84356b82b814b10c14c12a285ffe71dac278ea19 body: | We run the risk of the state engine exiting early when a dependency is not ready, especially in local mode. This changes forces a noop to be returned when we are waiting on another service, which is the process used elsewhere in the state engine. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Skip dependency check on kill in local mode hash: 8f2d6f4d7b8293518600260acd986b8cb4ba53fe body: | This function would usually check that an image is present for a dependency, but in local mode the images would have never been inserted into the database. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.10.2 date: 2019-03-13T10:36:16.473Z - commits: - subject: Pin lodash types to avoid compile error hash: af734ad00800d8d845042f761754db6750cd9c20 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.10.1 date: 2019-03-12T13:39:15.973Z - commits: - subject: 'docs: Standardise naming and json in api documentation' hash: d9bc26bd83b12f15bf099359e5425f4d956247a0 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'docs: Add documentation for v2/state/status endpoint' hash: 4a17f704ab86b542a9140782ff5aa502ceac6cfd body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.10.0 date: 2019-03-11T16:41:00.776Z - commits: - subject: 'codeowners: Add @CameronDiver, @pcarranzav and @Page-' hash: 68a28955ad1b5dc40b8f23c8ed1b998e195bc36d body: '' footer: Connects-to: '#926' connects-to: '#926' Change-type: patch change-type: patch Signed-off-by: Heds Simons <heds@balena.io> signed-off-by: Heds Simons <heds@balena.io> author: Heds Simons version: 9.9.1 date: 2019-03-08T15:38:29.388Z - commits: - subject: 'state-engine: Add an exponential backoff for device-config noops' hash: 1aa58fd7b94e95a855b31dcb6fca8a374972a47b body: | To avoid unnecesarilly using resources, we add an exponential backoff when the noops explicitly come from the device-config module. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'fix: Fix connectivity active VPN check' hash: ea1b247d3fad9587ee9f71ff8831e14e3d6854c6 body: | During the conversion to typescript, the VPN active check was being performed on the directory, and not the file that the VPN creates, meaning it would always return true (as we explicitly create the directory on startup if it does not exist). footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'state-engine: Add rate limited steps to device-config' hash: 6f797020998251384f6a6251f6ffe5614e4054fc body: | 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). footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.9.0 date: 2019-03-07T18:41:44.457Z - commits: - subject: >- feature: Add `BALENA_API_URL` environment variable when using the `balena-api` feature label hash: aeb96aa807fea81f2e2aa4e3881bfb55b75b8618 body: > When using the label `io.balena.features.balena-api` the supervisor will inject 2 environment variables into the container: - BALENA_API_KEY - BALENA_API_URL This allows the container to access the currently associated API using the KEY. footer: Change-type: patch change-type: patch Signed-off-by: Rich Bayliss <rich@balena.io> signed-off-by: Rich Bayliss <rich@balena.io> Connects-to: '#847' connects-to: '#847' author: Rich Bayliss version: 9.8.7 date: 2019-02-28T11:45:00.053Z - commits: - subject: 'debug: Print more information about failing validations' hash: 987de0e0975a7c468a3e2b606bb43e8dedcd2df8 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'device-config: Add migration for SUPERVISOR_DELTA_APPLY_TIMEOUT' hash: f9626a3ee481eaafa2d1e2c4a38b391e09712ea7 body: | The default value for the delta apply timeout was changed from `''` to `'0'` (note strings as these are database values) - but if the value existed in the database already, this would fail validation. We add a migration which will look explcitily for the failing value and switch it to the new default. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Increase max payload size in bodyparser to avoid PayloadTooLarge errors hash: c9507e013c83758c2c27321af05bd6f049037c1f body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.8.6 date: 2019-02-25T12:23:14.252Z - commits: - subject: Increase max payload size in bodyparser to avoid PayloadTooLarge errors hash: c9507e013c83758c2c27321af05bd6f049037c1f body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.8.5 date: 2019-02-25T12:21:00.112Z - commits: - subject: Fix provisioning workflow when UUID already exists hash: 0e3f2609781c460dbb7f91932d385fdabbbd5def body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.8.4 date: 2019-02-25T12:14:25.872Z - commits: - subject: Run iptables rules synchronous to avoid locking errors hash: 911ee7f009f5daa85067e7b7781ce79ca1e85424 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.8.3 date: 2019-02-19T17:44:47.346Z - commits: - subject: Revert "Upgrade to node 8 for supported architectures" hash: b3a07da8e47433f6e20fa7fe7a1da020ea49ef2b body: | This reverts commit 338ba4cdd7c6a0a7036e3c9d932622fbe5216436. This is to unblock the release of the supervisor version, pending the fix of the introduction of the race condition currently affecting v2 deltas. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.8.2 date: 2019-02-19T14:53:35.739Z - commits: - subject: Don't mount /lib/modules if it is already mounted hash: fae2548f27fbf6bf3e76fb56f1e8356afaac5bdd body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.8.1 date: 2019-02-14T13:52:37.276Z - commits: - subject: Apply iptables rules to ipv6 hash: 5f82f6fd3f341adc0659fd7fd7ed6813e4015d7d body: '' footer: Change-type: patch change-type: patch Closes: '#867' closes: '#867' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Symlink kernel modules and modprobe ip6_tables hash: 93c24298fff93e6f74d8883733f2f2e7c645fd39 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.8.0 date: 2019-02-13T20:58:34.540Z - commits: - subject: 'Improve error messages, and add description to ImageAuth error' hash: 7bd7f7e0259896f6024b4b12131f4eb0f5a15bd1 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'fix: Request image authentication token with explicitly as json' hash: 81ec85c5815dff1bfaf99dca7386ca9b49470eb1 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Always back off on image fetch failure hash: d9177404b5a1d270032aeeca13096ca30c71882c body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.7.7 date: 2019-02-13T15:47:20.508Z - commits: - subject: Don't treat a non-200 status response on patch as report errors hash: 06580bf437c49b18213d7e0e5ed72c2cfc427c7f body: | Non-200 errors were causing the watchdog to restart the supervisor, which in some cases could cause a restart loop. Instead we change the code to only treat communication failures as an error, and report status code failures directly. footer: Change-type: patch change-type: patch Closes: '#843' closes: '#843' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.7.6 date: 2019-02-12T13:57:35.558Z - commits: - subject: Allow newlines to be part of environment variables hash: 49dbaaba123b6f99f59b89e5ac0eae322949b4b2 body: | We were not allowing newlines previously by virtue of the regex not allowing them. The docker daemon and supervisor handling code both support them, so we allow them in the parsing code too. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Remove environment variable whitespace trimming hash: 6bf008cc85104a0a9c3c969a0a9f49c66ccc4f7e body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.7.5 date: 2019-02-12T11:24:23.730Z - commits: - subject: Make sure to correctly convert config emit events after validation hash: 3d6dc88eb0c77d4bdeec93645d01d730c54e87d7 body: | We were validating the input configuration values by coercing them to the correct type, and then using the initial value to be saved (which currently is always converted to a string). We now use the coerced value as the actual value we will store, and more importantly emit. This means that the config.on('change' ...) calls will always be properly typed, which before this change was not a guarantee that we could make. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.7.4 date: 2019-02-11T11:24:08.324Z - commits: - subject: Set default delta apply timeout of 0 hash: 88f19b414737b2f3ab2bf9587464450e46460ff3 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.7.3 date: 2019-02-11T10:22:08.628Z - commits: - subject: 'fix: Normalize ports from compose file on instantiation' hash: f3264862ca73e9b059da7fa7ce19aa67bfb9c296 body: | Adjacent ports are always grouped together by docker when reporting the container state (from an inspect), so adjacent ports defined in the compose file would not match as they would not have been normalized. We make sure to always normalize the input port configuration, so that it will match the docker output (if it should). We also don't sort in the fromComposePorts function anymore as that is handled by the normalize function. footer: Closes: '#897' closes: '#897' Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.7.2 date: 2019-02-09T21:43:47.044Z - commits: - subject: 'fix: Rework delete-then-download handling in state engine' hash: e9b51bbcd741fd65851190e73428d00ab18f7443 body: | In the original implementation it was possible that the delete did not wait for the kill step to be finished, so it would not be deleted. We seperate this process into two steps, to allow for the container to have stopped before proceeding. footer: Change-type: patch change-type: patch Closes: '#841' closes: '#841' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.7.1 date: 2019-02-06T11:41:48.551Z - commits: - subject: Make the failure backoff time the same as the appUpdatePollTime hash: 828a0fc345a5dad567730dfe5a717dd7da305853 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Backoff on image download error hash: 146267b40248c0ace957c038fd03c7eb48d6b942 body: '' footer: Change-type: patch change-type: patch Closes: '#873' closes: '#873' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Add the release to the status endpoint hash: c0e68bb069741af72a57b4996e3d00cdda450748 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Add application status endpoint hash: 769e2f3c519d0fa0f5d728c16f40a775ee255bf1 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.7.0 date: 2019-02-05T18:42:06.007Z - commits: - subject: Ensure the balena-fin always has it's overlay assigned hash: 2e09ed071c5d1c080b21303b45421cf65249f652 body: '' footer: Change-type: patch change-type: patch Closes: '#884' closes: '#884' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.6.6 date: 2019-02-05T16:20:13.225Z - commits: - subject: 'fix: Don''t attempt a pull if the token requests fails' hash: d8085a6ef896ff7b63ee295765031829eb07de2b body: '' footer: Change-type: patch change-type: patch Closes: '#879' closes: '#879' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.6.5 date: 2019-02-04T17:51:58.573Z - commits: - subject: Pin terser version to avoid breaking change in minor update hash: 28d09f2772a224a4d2efb9dd35c333b21bbbc57a body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'Build: Respect package-lock when building' hash: a92d9cef3db8a7c11f06e68a743f05a780a0f3b0 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Move legacy renaming to formatting function hash: d75c58f09dc8f15ac154741238fd98db642a562b body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Fix typo in OVERRIDE_LOCK hash: f12f4745162b4f63db1dc6c5b425a6b133cf58c9 body: '' footer: Closes: '#885' closes: '#885' Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.6.4 date: 2019-02-04T11:58:57.552Z - commits: - subject: Wrap services.getAll in a bluebird promise hash: ef7d993db6a92964809ea779bf63a5fc68f880ca body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.6.3 date: 2019-01-31T10:12:57.322Z - commits: - subject: 'fix: Properly bind context to healthchecks' hash: 6a9ca2a60df0b4eafc42cbac86d3161651eee68b body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'fix: Only apply supervisor api authentication after healthcheck entry' hash: 707ddb5f450734ba58179682cfb30236311b3a94 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'fix: Clear dbus pid file on startup' hash: ec87d26be194685ca91f376d7ee3dd3a6b764b3c body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.6.2 date: 2019-01-29T14:20:48.328Z - commits: - subject: Add missing ServiceManager methods hash: 8315413046e4b54278f504fd31398154f2ff4782 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.6.1 date: 2019-01-29T11:52:53.041Z - commits: - subject: Upgrade to node 8 for supported architectures hash: 338ba4cdd7c6a0a7036e3c9d932622fbe5216436 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.6.0 date: 2019-01-25T18:29:42.903Z - commits: - subject: 'refactor: Convert ServiceManager to typescript' hash: ba000a73fc1873c87eb7f6003ca0ab961704184a body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Improve error and logger typings hash: e5893c0ee05b2003fa6ab5147e52b6d1a4faae1e body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'refactor: Convert docker-utils module to typescript' hash: 02736113a394563dbb265cfe206e8e2aa65f9e6d body: '' footer: Change-type: patch change-type: patch Closes: '#868' closes: '#868' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.5.0 date: 2019-01-25T14:00:21.080Z - commits: - subject: 'fix: Fix intial config reporting' hash: 9a97451e7a43524dc512f7f56e704a97369caa4b body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.4.2 date: 2019-01-23T18:02:33.894Z - commits: - subject: Clear up images.ts module code for simiplicity hash: 24ce72a2c339e52ac98099f61c235bb2c23d4f97 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Prefer optional type in ConfigChangeMap hash: 6f9d9e5de6c560be7e6960b6db6a0b22a4c882a2 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Use dictionary for db key hash: 6a1e787eee9fd810b4ce083f4eac900020761881 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.4.1 date: 2019-01-23T16:42:26.747Z - commits: - subject: 'refactor: Convert volumes module to typescript' hash: 32acde0a99c0a3fdffe8b6abfd289ddc212b18f7 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'refactor: Convert compose/images module to typescript' hash: 91b553dd329fe9d42fd4bb0e6e716860e506cf88 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'deps: Update docker-toolbelt for typing fixes' hash: f10ad00e0141b17a5df23275278df2506732ad8c body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'typings: Improve database typings by allowing unknown dictionary keys' hash: 1af13d3373f16dd3f303eedcf773ea80376a7661 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'typings: Improve docker-utils typings' hash: fed01c355c8728e5088fd16c620582566bcd8c08 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'misc: Add Nullable<T> helper type' hash: d1e1297f6db4b00ed382cd96e345b4c9637f7211 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'config: Properly type the change events from config module' hash: 0505c0f97666ffcf1fcea6c5add50f38901b0db4 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.4.0 date: 2019-01-23T09:15:45.444Z - commits: - subject: Send connection message when streaming local mode logs hash: 06cdaddd714b3310574dcacabc6e416d03646b33 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.3.1 date: 2019-01-16T13:18:15.975Z - commits: - subject: 'refactor: Remove unnecessary validations and casts' hash: 6a3148ff80989ac061b33332938181ed7c1ca3ba body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'refactor: Fully type and validate config module set and get' hash: db74e748a15d33d3ea81c7afee7ed59890da8604 body: | We define the type for each config value, and validate the data when retrieving and setting it. footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'refactor: Remove scaffolding for unused mutable config functions' hash: ac4866170eb55b956a480a57c1e05dfa14c6b953 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'fix: Use logind manager to request reboots and shutdowns' hash: 81b17faab15a241bf0e99fc8856823fa687ea1e2 body: '' footer: Change-type: patch change-type: patch Closes: '#861' closes: '#861' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.3.0 date: 2019-01-11T10:39:50.571Z - commits: - subject: Fix context bind errors by switching to async/await hash: a970ec5377987bdc845a571c16514d3f15e8eadb body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.2.10 date: 2019-01-08T16:23:42.125Z - commits: - subject: 'refactor: Convert ApiBinder module to typescript' hash: 01ed7bb103b4df8fb0679cf858220db42d4a0b92 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'refactor: Only promisify read and write locks once' hash: d5f4ac690ff1c344599a576619ee7f00e1cc0ce1 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'refactor: Convert supervisor api module to typescript' hash: 9decea1d3bd4c7bd5741d805062214d70646ec2f body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'refactor: Change config modules export type to new-style' hash: 3a130f4f9cec919a76b6879dc33c9df0cf262213 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.2.9 date: 2019-01-08T12:05:10.664Z - commits: - subject: 'refactor: Generate and normalise PortMaps from compose ports in-class' hash: dc34025545984dc035fac18aec8160ea095e5ca2 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'compose: Normalise target ports for comparison with docker''s output' hash: 557c32b80e09051e9fe3633a94fe38cd5a49fcdb body: | Docker always returns ports in ascending order, so if they aren't specified like that in the compose, a restart loop would occur. This patch changes the port maps to be stored in ascending order, based on an alphabetical sort of the internalStart port (not taking into account the protocol). This is the same as how Docker returns them, so they will match, regardless of input form. footer: Change-type: patch change-type: patch Closes: '#824' closes: '#824' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.2.8 date: 2019-01-02T12:20:55.151Z - commits: - subject: 'refactor: Convert DeviceConfig module to typescript' hash: b32fba43e1cb61dab101c38088bdb0e312690550 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'types: Make DeviceApplicationState reflect state endpoint' hash: 7ba1ab981c2c785a8ceb247dfce2460d1ddfb9e5 body: | Also change the return format of ApplicationManager.getStatus(), which does not conform to the above. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'refactor: Change export style of db to named' hash: de5157c04c56e74709d49749dde7de470393e917 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'refactor: Add default export to logger module' hash: 64db38204f840ec71fd2666f34af67f2dd0107d7 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'refactor: Convert host-config module to typescript' hash: f4f67a5afc43542f35aa9285312d311aadbb43fd body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.2.7 date: 2018-12-21T17:19:29.895Z - commits: - subject: 'misc: Exclude typescript files from resulting image' hash: 34e5a7b0481b3eb70414c748fae0d2a1d393f371 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.2.6 date: 2018-12-21T09:27:44.035Z - commits: - subject: Use webpack watching for sync.js for a faster dev cycle hash: c0c805d072d6fb7daca3a9d51dd4e324886df269 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 9.2.5 date: 2018-12-20T17:42:34.493Z - commits: - subject: 'Force `devtool: none` to avoid issues with env.noOptimize' hash: 1130ecd3ce83e379a4f1aa41981836be2470151c body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard - subject: Use fork-ts-checker to speed up the webpack build hash: 77dd1d0a44dad250186c6f7625226fa994a4f0e5 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 9.2.4 date: 2018-12-20T16:49:22.103Z - commits: - subject: 'fix: Correctly type top level network IPAM config' hash: 9fab0fc5cc924a9c1a89a38682b7d440c7c3a649 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.2.3 date: 2018-12-20T10:08:34.889Z - commits: - subject: 'deps: Pin event-stream to avoid false audit warning' hash: 0bae497e4d2e8371d1e69c6bd536d143e9029a35 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.2.2 date: 2018-12-20T09:51:18.661Z - commits: - subject: Update pinejs-client to pinejs-client-request 5.x hash: 019190646e5dbcc24a1aaa4fd4ed5d9274fce575 body: '' footer: Change-type: patch change-type: patch author: Pagan Gazzard version: 9.2.1 date: 2018-12-19T17:57:15.609Z - commits: - subject: Update to webpack 4 hash: 655c476ccdb40639f814eebd68a8170bc000f8e5 body: '' footer: Change-type: minor change-type: minor author: Pagan Gazzard version: 9.2.0 date: 2018-12-19T17:16:14.411Z - commits: - subject: 'device-api: Add morgan to log api requests' hash: 45b322b7e093abfa60ebb476c2cc477800de06b7 body: '' footer: Change-type: minor change-type: minor Closes: '#834' closes: '#834' Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.1.0 date: 2018-12-19T14:31:25.055Z - commits: - subject: 'refactor: Convert update-lock module to typescript' hash: b977b30dfee0b9d309133c2569ffe6a9e5af783c body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'refactor: Convert systemd module to typescript' hash: ec37db597dbcf1965735b1d2b31a62fe7ad9540d body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'refactor: Convert request module to typescript' hash: e00954babd455700bbc53e4e5003b42efbab2663 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'refactor: Convert migration module to typescript' hash: 2ea657c95db960783b027e6cbc769376eef31c1b body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.0.3 date: 2018-12-19T14:09:07.239Z - commits: - subject: 'VersionBot: Fix incomplete version in CHANGELOG.yml' hash: c87123f585874c07960935ce6accb3f6946813a6 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Giovanni Garufi <giovanni@balena.io> signed-off-by: Giovanni Garufi <giovanni@balena.io> author: Giovanni Garufi version: 9.0.2 date: 2018-12-18T17:24:35.636Z - commits: - subject: >- Fix a race condition that could cause an unnecessary restart of a service immediately after download hash: 42737cb9e96b889d0fdfd48926778a38566d927b body: > Up to now, there was a slim but non-zero chance that an image would be downloaded between the call to `@getTarget` inside deviceState (which gets the target state and creates Service objects using information from available images), and the call to `@images.getAvailable` in ApplicationManager (which is used to determine whether we should keep waiting for a download or start the service). If this race condition happened, then the ApplicationManager would infer that a service was ready to be started (because the image appears as available), but would have incomplete information about the service because the image wasn't available when the Service object was created. The result would be that the service would be started, and then immediately on the next applyTarget the ApplicationManager would try to kill it and restart it to update it with the complete information from the image. This patch changes this behavior by ensuring that all of the additional information about the current state, which includes available images, is gathered *before* building the current and target states that we compare. This means that if the image is downloaded after the call to getAvailable, the Service might be constructed with all the information about the image, but it won't be started until the next pass, because ApplicationManager will treat it as still downloading. footer: Change-type: patch change-type: patch Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez version: 9.0.1 date: 2018-12-17T18:44:43.029Z - commits: - subject: 'unmanaged: Default to local mode in target state when unmanaged' hash: c533631f70f76893d5907a911c6304fd7ebd080f body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'config: Force config values to strings when storing in db' hash: 151af309fb16029b7339b69149cc64ad03cdaa8f body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'join: Disable local mode when joining a cloud' hash: 3ca1d7c864c6a71cd52d20aef0024eeeef866bef body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'config: Replace supervisorOfflineMode and offlineMode with unmanaged' hash: 82602abf8d312aa871ece3f12f39a8ca76ee1553 body: '' footer: Change-type: major change-type: major Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'fix: Give unmanaged target states a source of ''local''' hash: 5bea0fdc9d0b2e347e339ec354425abc8368a156 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Require an apikey for supervisor api in production unmanaged hash: 178e80d92a158167137a24483bf589a436421668 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Switch to local mode in unmanaged mode hash: 5bb3820d6a135127ca2806ce04da7a145485ba13 body: '' footer: Change-type: major change-type: major Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: Move config.json flag back to the database hash: 91a634056333e53c4905bee35af6e3ec6f9ce750 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver - subject: 'Revert "localMode: Remove local mode from device-config"' hash: 19f8b7576646b4ceaeead02642f74327c79d979b body: | This reverts commit eda477ff8628c8f2d7afdefe3b282a045f8f5308. footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 9.0.0 date: 2018-12-17T10:53:36.565Z - commits: - subject: Fix sync.js after move to balena-sync hash: 63d9d8df3879a5fadff69a2e5e0af523c25dc4ac body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver <cameron@balena.io> signed-off-by: Cameron Diver <cameron@balena.io> author: Cameron Diver version: 8.7.1 date: 2018-12-13T14:21:44.452Z - commits: - subject: 'dindctl: Allow mounting a backup.tgz to test migration backups' hash: 42c39ed36d2012e3a6d3d84e1e11d6ae229001f5 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez - subject: >- Add the ability to restore volumes from a backup.tgz in the data partition hash: 501272266baf73011a5259666ffed63074ca99ac body: '' footer: Change-type: minor change-type: minor Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez version: 8.7.0 date: 2018-12-12T17:25:29.819Z - commits: - subject: Update lodash to v4.17.5 hash: b52c92a044486724c154a5d1f06e3c4cf8c4039d body: '' footer: Change-type: patch change-type: patch Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez - subject: Remove the unused register-coffee-coverage hash: 3c52faea54a82c6b24f28e7055456baf155333f9 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez - subject: Update knex to 0.15.2 and sqlite3 to 4.0.4 hash: d5b2fcd4dde845a13ba2535c835121e9c9836d10 body: > We also replace a createTableIfNotExists in the migrations with hasTable then createTable, to avoid a warning message about it being not recommended. footer: Change-type: patch change-type: patch Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez - subject: 'sync.js: Switch from resin-sync to balena-sync' hash: cbcf046d9154b76140fbcb48712319d154b92c46 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez version: 8.6.11 date: 2018-12-12T16:45:21.021Z - commits: - subject: Fix typo that prevented deleting old resin/ supervisor images hash: a52683ade09d45eaa8ba3c691a2f67c3720bdc4d body: '' footer: Change-type: patch change-type: patch Signed-off-by: Pablo Carranza Velez <pablo@balena.io> signed-off-by: Pablo Carranza Velez <pablo@balena.io> author: Pablo Carranza Velez version: 8.6.10 date: 2018-12-11T16:31:31.692Z - commits: - subject: 'versionbot: Add changelog yml file' hash: 3134f0dcebb8cda4bf0f9e94038c9363df9ad535 body: | This file allows other components to uniquely parse the information that is contained in the changelog. It will be automatically managed by versionist by appending the new commits on top. This is needed to provide nested-changelogs. footer: Change-type: patch change-type: patch Signed-off-by: Giovanni Garufi <giovanni@resin.io> signed-off-by: Giovanni Garufi <giovanni@resin.io> author: Giovanni Garufi version: 8.6.9 date: 2018-12-11T15:33:19.564Z - version: 8.6.8 date: 2018-12-07T00:00:00.000Z commits: - subject: 'Api: Ensure Supervisor API returns IP addresses [Heds Simons]' - version: 8.6.7 date: 2018-12-04T00:00:00.000Z commits: - subject: >- Update docker-progress to reduce memory usage when pulling images [Cameron Diver] - version: 8.6.6 date: 2018-12-04T00:00:00.000Z commits: - subject: 'Docs: Clarify Supervisor envvars exposure via label [Heds Simons]' - version: 8.6.5 date: 2018-12-04T00:00:00.000Z commits: - subject: 'Update mixpanel node dependency, to pick up path changes [Cameron Diver]' - version: 8.6.4 date: 2018-11-30T00:00:00.000Z commits: - subject: >- Docs: Clarify that older supervisors use RESIN_ variables [Pablo Carranza Velez] - version: 8.6.3 date: 2018-11-29T00:00:00.000Z commits: - subject: >- Unmanged: Don't require a device name when setting a target state [Cameron Diver] - subject: 'LocalMode: Remove local mode from device-config [Cameron Diver]' - version: 8.6.2 date: 2018-11-28T00:00:00.000Z commits: - subject: >- Compose: Fix network option field names and update dockerode types [Cameron Diver] - version: 8.6.1 date: 2018-11-28T00:00:00.000Z commits: - subject: >- Fix: When updating from a legacy supervisor, use updated resource ids and image URL from the API [Pablo Carranza Velez] - version: 8.6.0 date: 2018-11-28T00:00:00.000Z commits: - subject: 'Device-api: Add container id endpoint [Cameron Diver]' - version: 8.5.1 date: 2018-11-28T00:00:00.000Z commits: - subject: 'Convert network module to typescript [Cameron Diver]' - subject: 'Update network-checker to pick up typings [Cameron Diver]' - subject: 'Fix return type for blinking instantiation function [Cameron Diver]' - version: 8.5.0 date: 2018-11-28T00:00:00.000Z commits: - subject: >- Config: Set default apiKey of empty string to avoid undefined keys [Cameron Diver] - subject: 'Allow local mode to be controlled via config.json [Cameron Diver]' - subject: 'Don''t start connectivity check when in offlineMode [Cameron Diver]' - subject: 'Improve UX when apps.json is not present [Cameron Diver]' - subject: 'Config: Switch default device type to `unknown` [Cameron Diver]' - subject: 'Handle empty apiEndpoint when detecting mixpanel host [Cameron Diver]' - subject: 'Fix: Set default apiEndpoint to empty [Cameron Diver]' - version: 8.4.3 date: 2018-11-27T00:00:00.000Z commits: - subject: 'Compose: Set default config for stopSignal to SIGTERM [Shaun Mulligan]' - subject: 'Compose: Change default stop signal from '' to SIGTERM [Shaun Mulligan]' - version: 8.4.2 date: 2018-11-26T00:00:00.000Z commits: - subject: >- Pin event-stream to avoid picking up vulnerable flatmap-stream [Cameron Diver] - version: 8.4.1 date: 2018-11-22T00:00:00.000Z commits: - subject: 'Compose: Change default grace period to 10s [Cameron Diver]' - version: 8.4.0 date: 2018-11-21T00:00:00.000Z commits: - subject: 'Add package.lock file [Cameron Diver]' - subject: 'Events: Correctly proxy mixpanel events [Cameron Diver]' - subject: 'Fix m00001 migration by using targetValues [Cameron Diver]' - version: 8.3.9 date: 2018-11-13T00:00:00.000Z commits: - subject: 'Fix m00001 migration by using targetValues [Cameron Diver]' - subject: 'Appended API example [hippolyt]' - version: 8.3.8 date: 2018-11-06T00:00:00.000Z commits: - subject: >- Let typescript do the json resolution so we get proper types [Pagan Gazzard] - version: 8.3.7 date: 2018-11-06T00:00:00.000Z commits: - subject: 'Update coffee-script to coffee-script 1.12 [Pagan Gazzard]' - version: 8.3.6 date: 2018-11-06T00:00:00.000Z commits: - subject: 'Tests: Increase timeout for test suites [Cameron Diver]' - version: 8.3.5 date: 2018-11-06T00:00:00.000Z commits: - subject: >- Doc: Add documentation for supervisor endpoints added after v7 [Cameron Diver] - version: 8.3.4 date: 2018-11-06T00:00:00.000Z commits: - subject: 'Remove unused dependencies [Pagan Gazzard]' - version: 8.3.3 date: 2018-11-06T00:00:00.000Z commits: - subject: 'Remove ts-node from test process [Cameron Diver]' - version: 8.3.2 date: 2018-11-06T00:00:00.000Z commits: - subject: 'Remove node garbage collection flags [Cameron Diver]' - version: 8.3.1 date: 2018-11-05T00:00:00.000Z commits: - subject: 'Fix migrations/jsonstream custom resolvers on windows [Pagan Gazzard]' - version: 8.3.0 date: 2018-11-05T00:00:00.000Z commits: - subject: >- Device-api: Also support serviceName in v2 service endpoints [Cameron Diver] - version: 8.2.4 date: 2018-11-05T00:00:00.000Z commits: - subject: 'Remove some type casts [Pagan Gazzard]' - subject: >- Remove versionist from package.json, it's handled by versionbot [Pagan Gazzard] - version: 8.2.3 date: 2018-11-02T00:00:00.000Z commits: - subject: 'Update to typescript 3 [Pagan Gazzard]' - version: 8.2.2 date: 2018-11-02T00:00:00.000Z commits: - subject: >- Update to resin-lint 2 and add a precommit hook for prettier [Pagan Gazzard] - subject: 'Run resin-lint for both coffee and typescript [Pagan Gazzard]' - version: 8.2.1 date: 2018-11-02T00:00:00.000Z commits: - subject: >- Add a .resinci.yml to disable regular docker and npm builds [Pablo Carranza Velez] - version: 8.2.0 date: 2018-11-02T00:00:00.000Z commits: - subject: >- Remove unused codepaths that do deltas from resin/scratch [Pablo Carranza Velez] - subject: >- Rename most of the documentation and variable names from resin to balena [Pablo Carranza Velez] - version: 8.1.0 date: 2018-11-01T00:00:00.000Z commits: - subject: >- Remove a deprecated debian repository from the aarch64 node image (used only at build-time) [Pablo Carranza Velez] - subject: >- When updating from resin-supervisor to balena-supervisor, try to delete old resin-supervisor images [Pablo Carranza Velez] - subject: >- Rename package to balena-supervisor and push to balena repos in DockerHub [Pablo Carranza Velez] - version: 8.0.0 date: 2018-11-01T00:00:00.000Z commits: - subject: 'Api-binder: Use API v5 [Akis Kesoglou]' - version: 7.25.13 date: 2018-10-31T00:00:00.000Z commits: - subject: >- Fix: When calling the /v1/update endpoint, always trigger a target state apply [Pablo Carranza Velez] - version: 7.25.12 date: 2018-10-31T00:00:00.000Z commits: - subject: >- Fix: Properly check for the balena-api label to inject the API key env vars [Pablo Carranza Velez] - version: 7.25.11 date: 2018-10-31T00:00:00.000Z commits: - subject: >- Fix: When setting target state, delete old apps from the same source [Pablo Carranza Velez] - version: 7.25.10 date: 2018-10-25T00:00:00.000Z commits: - subject: 'Test: Use longer delays in logger tests [Pablo Carranza Velez]' - version: 7.25.9 date: 2018-10-25T00:00:00.000Z commits: - subject: 'Update docker-delta to v2.2.2 [Pablo Carranza Velez]' - version: 7.25.8 date: 2018-10-23T00:00:00.000Z commits: - subject: >- ApplicationManager: when comparing images to save metadata, take docker image ids into account [Pablo Carranza Velez] - subject: >- Entry.sh: Use symbolic link to link to legacy lock path [Pablo Carranza Velez] - version: 7.25.7 date: 2018-10-23T00:00:00.000Z commits: - subject: >- Circle.yml: Only push tagged images on tagged commits [Pablo Carranza Velez] - version: 7.25.4 date: 2018-10-23T00:00:00.000Z commits: - subject: 'Fix: Use fat arrow for cleanup method [Cameron Diver]' - subject: 'Fix: Run checkTruthy on config values before using them [Cameron Diver]' - version: 7.25.5 date: 2018-10-22T00:00:00.000Z commits: - subject: >- Fix: Properly get the config from target state before comparing during initial config reporting [Pablo Carranza Velez] - version: 7.25.4 date: 2018-10-20T00:00:00.000Z commits: - subject: >- Fix: When checking for legacy containers, properly get the labels from config [Pablo Carranza Velez] - subject: >- Fix: Avoid trying to report duplicated values in initial config [Pablo Carranza Velez] - version: 7.25.3 date: 2018-10-20T00:00:00.000Z commits: - subject: >- Fix: Store and retrieve device config without namespaces [Pablo Carranza Velez] - version: 7.25.2 date: 2018-10-19T00:00:00.000Z commits: - subject: >- Keep defaulting tty to true to avoid accidental breakage [Pablo Carranza Velez] - version: 7.25.1 date: 2018-10-19T00:00:00.000Z commits: - subject: >- Fix preloading in flasher images by reading apps.json if target hasn't been set [Pablo Carranza Velez] - version: 7.25.0 date: 2018-10-18T00:00:00.000Z commits: - subject: 'DeviceConfig: allow BALENA_ config variables [Pablo Carranza Velez]' - version: 7.24.1 date: 2018-10-18T00:00:00.000Z commits: - subject: 'Fix: Add typescript cast to fix type error [Cameron Diver]' - subject: 'Fix: Remove debugging console logs [Cameron Diver]' - subject: 'Fix: Apply default config options when they''re falsy [Cameron Diver]' - subject: >- Fix: Always set the container name when generating creation options [Cameron Diver] - version: 7.24.0 date: 2018-10-18T00:00:00.000Z commits: - subject: >- Config: Allow atomic config.json writes on balenaOS [Pablo Carranza Velez] - subject: >- Network: Ignore resin-redsocks and balena-redsocks when reporting IP addresses [Pablo Carranza Velez] - subject: >- Use the DOCKER_SOCKET env var for the user container's balena socket mount [Pablo Carranza Velez] - version: 7.23.0 date: 2018-10-18T00:00:00.000Z commits: - subject: >- Service: Fix device name env vars by injecting and filtering in the interface with docker [Pablo Carranza Velez] - subject: >- ServiceManager: add BALENA_DEVICE_NAME_AT_INIT to injected env vars [Pablo Carranza Velez] - subject: >- Replace io.resin labels (and their env vars) with io.balena equivalents [Pablo Carranza Velez] - version: 7.22.0 date: 2018-10-17T00:00:00.000Z commits: - subject: >- Make handover-complete an alternative to the resin-kill-me file [Pablo Carranza Velez] - subject: >- Move the handover and lock files to /tmp/balena, rename them, and add BALENA_ env vars [Pablo Carranza Velez] - version: 7.21.5 date: 2018-10-16T00:00:00.000Z commits: - subject: 'Disable express'' x-powered-by header [Pagan Gazzard]' - version: 7.21.4 date: 2018-10-16T00:00:00.000Z commits: - subject: 'Fix: overlay compose fields on image for healthcheck [Cameron Diver]' - subject: 'Fix: Remove support for broken storageOpt option [Cameron Diver]' - version: 7.21.3 date: 2018-10-15T00:00:00.000Z commits: - subject: >- Deltas: Bump docker-progress to pick up support for balena-engine [Cameron Diver] - version: 7.21.2 date: 2018-10-15T00:00:00.000Z commits: - subject: 'Remove a few blacklisted config.txt options [Zubair Lutfullah Kakakhel]' - version: 7.21.1 date: 2018-10-15T00:00:00.000Z commits: - subject: 'Fix: Return void from config setter [Cameron Diver]' - subject: >- Fix: Don't assume config is defined for legacy images in logger [Cameron Diver] - version: 7.21.0 date: 2018-10-13T00:00:00.000Z commits: - subject: 'Device-api: Add supervisor version endpoint [Cameron Diver]' - subject: 'State: Don''t consider local mode when storing state [Cameron Diver]' - subject: >- Local mode: Add local mode manager module to handle cleanup [Cameron Diver] - subject: >- Logger: Enforce timestamp value to avoid logging server 400 errors [Cameron Diver] - subject: 'Add logging endpoint to supervisor [Cameron Diver]' - subject: 'Support local logging via standard logging interface [Cameron Diver]' - subject: >- Support setting target state in local mode from supervisor API [Cameron Diver] - subject: 'Add several local mode enabling endpoints [Cameron Diver]' - subject: >- Correctly type service-manager logger and event tracker fields [Cameron Diver] - subject: 'Don''t set empty target state in local mode [Cameron Diver]' - version: 7.20.0 date: 2018-10-08T00:00:00.000Z commits: - subject: >- Fix: Correctly handle array based network definitions for service [Cameron Diver] - subject: >- Fix: Only join the default network when creating the container [Cameron Diver] - subject: >- Compose: Support changing the tty option for compose services [Cameron Diver] - subject: >- Types: Remove temporary Service type in favour of actual compose class [Cameron Diver] - subject: >- Compose/service: Convert module to typescript and add network config [Cameron Diver] - subject: 'Compose: Support more network creation options [Cameron Diver]' - subject: >- Refactor: Split Networks class to Network and NetworkManager [Cameron Diver] - version: 7.19.7 date: 2018-09-13T00:00:00.000Z commits: - subject: 'Logger: Fix reporting the configuration change variables [Cameron Diver]' - version: 7.19.6 date: 2018-09-13T00:00:00.000Z commits: - subject: >- Lib/errors: Improve typings by extending Error class for predicates [Cameron Diver] - version: 7.19.5 date: 2018-09-12T00:00:00.000Z commits: - subject: '' Fix: >- Use throttle not debounce when ensuring we don't spam mixpanel [Cameron Diver] - version: 7.19.4 date: 2018-09-05T00:00:00.000Z commits: - subject: >- Fix: Don't send internal state tracking information to the API [Cameron Diver] - version: 7.19.3 date: 2018-09-04T00:00:00.000Z commits: - subject: 'Fix: Fix event-tracker being passed no options object [Cameron Diver]' - subject: 'Fix: Import logger properly and add startup test [Cameron Diver]' - subject: >- Events: Report supervisor version with any mixpanel events [Cameron Diver] - subject: >- Events: Add rate limiting based on event name when reporting to mixpanel [Cameron Diver] - subject: >- Memory: Reduce memory usage by applying node command line flags [Mathew Heard] - version: 7.19.2 date: 2018-09-04T00:00:00.000Z commits: - subject: 'Fix: Add es2015 lib to tsconfig.json [Cameron Diver]' - subject: 'Refactor: Use Dictionary<T> type in ports module [Cameron Diver]' - subject: 'Fix: Respect logging enabling on instantiation of logger [Cameron Diver]' - subject: >- Fix: Change import of ports module to be extensionless in tests [Cameron Diver] - subject: 'Refactor: Convert logging module to typescript [Cameron Diver]' - subject: >- Types: Add global typings file containing Dictionary<T> type [Cameron Diver] - subject: 'Refactor: Make exported log-types implement interface [Cameron Diver]' - subject: 'Refactor: Convert event tracker module to typescript [Cameron Diver]' - version: 7.19.1 date: 2018-08-29T00:00:00.000Z commits: - subject: 'Fix: Dont bind service class methods in declaration [Cameron Diver]' - version: 7.19.0 date: 2018-08-29T00:00:00.000Z commits: - subject: 'Housekeeping: Add private:true to package.json [Cameron Diver]' - subject: 'Feature(host_config): Support gpio field as an array [Cameron Diver]' - version: 7.18.0 date: 2018-08-24T00:00:00.000Z commits: - subject: 'Network: Add MDNS support for `.local` domains #713 [Heds Simons]' - version: 7.17.1 date: 2018-08-17T00:00:00.000Z commits: - subject: >- Ux: Warn on invalid device name when trying to start a service #729 [Cameron Diver] - version: 7.17.0 date: 2018-08-16T00:00:00.000Z commits: - subject: 'Fix: Fix importing of service type location #726 [Cameron Diver]' - subject: >- Dev: Add package.json tasks to aid debugging supervisor tests #726 [Cameron Diver] - version: 7.16.7 date: 2018-08-16T00:00:00.000Z commits: - subject: 'Update docker-toolbelt to pull in typings #727 [Cameron Diver]' - subject: 'Refactor: Add docker-utils typings #727 [Cameron Diver]' - subject: 'Refactor: Convert log-types module to typescript #727 [Cameron Diver]' - version: 7.16.6 date: 2018-08-13T00:00:00.000Z commits: - subject: >- Docs: Add documentation for the v2/applications/state endpoint #722 [Cameron Diver] - version: 7.16.5 date: 2018-08-13T00:00:00.000Z commits: - subject: >- Fix: Apply device name before generating container config #724 [Cameron Diver] - version: 7.16.4 date: 2018-08-07T00:00:00.000Z commits: - subject: >- Fix: Restart a service when it's memory limit changes #721 [Cameron Diver] - version: 7.16.3 date: 2018-08-01T00:00:00.000Z commits: - subject: 'Add a backoff mechanism for state reporting errors #715 [Pagan Gazzard]' - version: 7.16.2 date: 2018-07-25T00:00:00.000Z commits: - subject: >- Fix: Fix scoping issue with variables in service-manager #711 [Cameron Diver] - version: 7.16.1 date: 2018-07-25T00:00:00.000Z commits: - subject: 'Dont restart service on device name change #704 [Cameron Diver]' - version: 7.16.0 date: 2018-07-23T00:00:00.000Z commits: - subject: 'Logger: Add unit tests #701 [Petros Angelatos]' - subject: 'Logger: Remove pubnub leftovers #701 [Petros Angelatos]' - subject: 'Logger: Only send logs produced after attaching #701 [Petros Angelatos]' - subject: 'Logger: Use the new logging backend #701 [Petros Angelatos]' - version: 7.15.0 date: 2018-07-17T00:00:00.000Z commits: - subject: >- Allow the enabling and disabling of persistent logging via env var #700 [Cameron Diver] - subject: 'Refactor config code to be consistent in location #700 [Cameron Diver]' - version: 7.14.1 date: 2018-07-16T00:00:00.000Z commits: - subject: 'Re-enable majority of tests #699 [Cameron Diver]' - version: 7.14.0 date: 2018-07-12T00:00:00.000Z commits: - subject: >- Remove resinApiEndpoint meta-endpoint and use config.json entry instead #692 [Cameron Diver] - version: 7.13.3 date: 2018-07-12T00:00:00.000Z commits: - subject: >- Correctly apply current commit value to applications #691 [Cameron Diver] - version: 7.13.2 date: 2018-07-09T00:00:00.000Z commits: - subject: 'Fix typo in config method call #688 [Cameron Diver]' - version: 7.13.1 date: 2018-06-28T00:00:00.000Z commits: - subject: 'Bind db handle to fn variable #687 [Cameron Diver]' - version: 7.13.0 date: 2018-06-27T00:00:00.000Z commits: - subject: 'Change config function providers to be mutable #684 [Cameron Diver]' - version: 7.12.0 date: 2018-06-26T00:00:00.000Z commits: - subject: >- Fix /v1/device endpoint returning null for commit after an update #652 [Cameron Diver] - subject: 'Add applications state v2 endpoint #652 [Cameron Diver]' - subject: >- Move compose types to ./types and add partial definitions for compose modules #652 [Cameron Diver] - subject: 'Move v2 endpoints to separate module #652 [Cameron Diver]' - subject: 'Refactor v1 api into seperate modules #652 [Cameron Diver]' - version: 7.11.3 date: 2018-06-25T00:00:00.000Z commits: - subject: >- Add fromDockerOpts and normalization to PortMap class, and use in fromContainer #655 [Cameron Diver] - subject: 'Store port ranges as ranges, to reduce memory usage #655 [Cameron Diver]' - version: 7.11.2 date: 2018-06-18T00:00:00.000Z commits: - subject: 'Convert config module to typescript #682 [Cameron Diver]' - subject: 'Convert fs-utils module to typescript #682 [Cameron Diver]' - subject: 'Convert os-release module to typescript #682 [Cameron Diver]' - subject: >- Convert supervisor_version module to typescript, and add typings for json #682 [Cameron Diver] - subject: 'Convert db module to typescript #682 [Cameron Diver]' - version: 7.11.1 date: 2018-06-14T00:00:00.000Z commits: - subject: >- Show better UX when a delta download fails because the image is processing #680 [Cameron Diver] - subject: >- Upgrade TypedError and move docker-utils error to error module #680 [Cameron Diver] - version: 7.11.0 date: 2018-06-13T00:00:00.000Z commits: - subject: >- Pin a device to a commit when preload has a pinDevice field #669 [Cameron Diver] - version: 7.10.2 date: 2018-06-11T00:00:00.000Z commits: - subject: 'Fix typo in EEXIST error predicate #677 [Cameron Diver]' - version: 7.10.1 date: 2018-06-11T00:00:00.000Z commits: - subject: 'Convert iptables module to typescript #641 [Cameron Diver]' - subject: 'Convert errors module to typescript #641 [Cameron Diver]' - version: 7.10.0 date: 2018-06-06T00:00:00.000Z commits: - subject: >- Move config backend code out to classes which implement a common base #672 [Cameron Diver] - subject: 'Add support for extlinux configuration files #672 [Cameron Diver]' - subject: >- Move boot config related code to config-utils module #672 [Cameron Diver] - subject: 'Add types for fs-utils module #672 [Cameron Diver]' - version: 7.9.1 date: 2018-05-29T00:00:00.000Z commits: - subject: 'Update update-locking documentation #667 [Cameron Diver]' - version: 7.9.0 date: 2018-05-23T00:00:00.000Z commits: - subject: 'Add support for Balena deltas #632 [Akis Kesoglou]' - subject: 'Log delta debugging information #632 [Akis Kesoglou]' - version: 7.8.0 date: 2018-05-23T00:00:00.000Z commits: - subject: >- Check against application source for target applications #662 [Cameron Diver] - subject: >- Add migration for source field to be added to app table #662 [Cameron Diver] - version: 7.7.2 date: 2018-05-22T00:00:00.000Z commits: - subject: >- Ignore leading and trailing whitespace when parsing env vars #665 [Cameron Diver] - version: 7.7.1 date: 2018-05-21T00:00:00.000Z commits: - subject: 'Don''t generate config fields in offline mode #651 [Cameron Diver]' - version: 7.7.0 date: 2018-05-18T00:00:00.000Z commits: - subject: >- Add support for changing config.txt on balena fin devices #663 [Pablo Carranza Velez] - version: 7.6.0 date: 2018-05-16T00:00:00.000Z commits: - subject: >- Change intialConfigReported value to be an api endpoint #657 [Cameron Diver] - version: 7.5.6 date: 2018-05-14T00:00:00.000Z commits: - subject: 'Update gitignore to ignore new test files #653 [Cameron Diver]' - version: 7.5.5 date: 2018-05-11T00:00:00.000Z commits: - subject: 'Update docs with multicontainer API breakages #654 [Tim Perry]' - version: 7.5.4 date: 2018-05-11T00:00:00.000Z commits: - subject: >- Fix handling of systemd errors when polling for log to display #612 [Cameron Diver] - version: 7.5.3 date: 2018-05-02T00:00:00.000Z commits: - subject: 'Add typescript linting to supervisor tests #638 [Cameron Diver]' - subject: 'Convert conversions module to typescript #638 [Cameron Diver]' - subject: 'Move shared types to separate module #638 [Cameron Diver]' - subject: 'Convert blink module to typescript #638 [Cameron Diver]' - subject: 'Convert lib/constants module to typescript #638 [Cameron Diver]' - subject: 'Type parameters for validation functions better #638 [Cameron Diver]' - version: 7.5.2 date: 2018-05-01T00:00:00.000Z commits: - subject: >- Add some more unit tests to the multicontainer supervisor #519 [Pablo Carranza Velez] - version: 7.5.1 date: 2018-04-29T00:00:00.000Z commits: - subject: >- Remove trailing slashes from working directories of services #637 [Cameron Diver] - version: 7.5.0 date: 2018-04-27T00:00:00.000Z commits: - subject: 'Add tests for validation code #636 [Cameron Diver]' - subject: >- Start initial typescript conversion, and add validation debugging #636 [Cameron Diver] - version: 7.4.4 date: 2018-04-23T00:00:00.000Z commits: - subject: >- Use resinos-in-container for the development dind supervisor #630 [Pablo Carranza Velez] - version: 7.4.3 date: 2018-04-19T00:00:00.000Z commits: - subject: >- On startup, only attach to logs for running containers, and remove any containers marked as dead #625 [Pablo Carranza Velez] - version: 7.4.2 date: 2018-04-18T00:00:00.000Z commits: - subject: 'Properly propagate delta failure #628 [Akis Kesoglou]' - version: 7.4.1 date: 2018-04-11T00:00:00.000Z commits: - subject: >- Allow services (and their images) to expose udp ports besides tcp #622 [Pablo Carranza Velez] - version: 7.4.0 date: 2018-04-11T00:00:00.000Z commits: - subject: >- Add ability to use self-signed CAs passed via `config.json`. #602 [Heds Simons] - version: 7.3.0 date: 2018-04-10T00:00:00.000Z commits: - subject: 'Move to Node 6.13.1. #624 [Heds Simons]' - version: 7.2.0 date: 2018-04-04T00:00:00.000Z commits: - subject: 'Run test suite on CI #616 [Cameron Diver]' - subject: 'Add mocha to enable unit testing #616 [Lucian Buzzo]' - subject: 'Fix regex for parsing memory numbers #616 [Cameron Diver]' - version: 7.1.24 date: 2018-03-29T00:00:00.000Z commits: - subject: >- Respond to reboot and shutdown endpoints with a success object #608 [Cameron Diver] - version: 7.1.23 date: 2018-03-29T00:00:00.000Z commits: - subject: >- Avoid weird cwd errors when dist does not exist with sync #606 [Cameron Diver] - version: 7.1.22 date: 2018-03-29T00:00:00.000Z commits: - subject: >- Back off fetching the target state exponentially, for faster retries when there's no connectivity #596 [Pablo Carranza Velez] - version: 7.1.21 date: 2018-03-27T00:00:00.000Z commits: - subject: >- Handle incorrectly parsed env vars from docker inspect #605 [Cameron Diver] - version: 7.1.20 date: 2018-03-22T00:00:00.000Z commits: - subject: >- Replace the gosuper component with a node module that handles communication with systemd, and stop using an init system in the supervisor container #592 [Pablo Carranza Velez] - version: 7.1.19 date: 2018-03-22T00:00:00.000Z commits: - subject: >- Remove any leftover knex migrations locks before running migrations #599 [Pablo Carranza Velez] - version: 7.1.18 date: 2018-03-19T00:00:00.000Z commits: - subject: >- Trim whitespace from the hostname file on the host before passing it as the hostname for containers with host network #595 [Pablo Carranza Velez] - version: 7.1.17 date: 2018-03-19T00:00:00.000Z commits: - subject: >- Document that the update lock can be forced on reboots and shutdowns #591 [Pablo Carranza Velez] - subject: >- Force reboots and shutdowns if lock override is enabled #591 [Pablo Carranza Velez] - version: 7.1.16 date: 2018-03-16T00:00:00.000Z commits: - subject: >- In /v1/apps/:appId/stop, wait for the service to exit before responding #593 [Pablo Carranza Velez] - version: 7.1.15 date: 2018-03-15T00:00:00.000Z commits: - subject: >- Automation: Use ssh instead of https to PR to meta-resin #572 [Pablo Carranza Velez] - version: 7.1.14 date: 2018-03-15T00:00:00.000Z commits: - subject: >- Avoid trying to clean up the supervisor image if it has several tags (even though it would never succeed) #589 [Pablo Carranza Velez] - version: 7.1.13 date: 2018-03-15T00:00:00.000Z commits: - subject: >- Fix typo passing apiKey to the resin API client when exchanging apikeys #588 [Pablo Carranza Velez] - subject: >- Fix the check for whether the device is provisioned by correctly getting registered_at and deviceId from config.json into the ApiBinder #588 [Pablo Carranza Velez] - version: 7.1.12 date: 2018-03-15T00:00:00.000Z commits: - subject: >- Compose: Use the hostname on the host as default hostname for services with host network mode #586 [Pablo Carranza Velez] - subject: >- Pass the correct working_dir to the container config, and compare containers for working dir changes #586 [Pablo Carranza Velez] - version: 7.1.11 date: 2018-03-14T00:00:00.000Z commits: - subject: >- DeviceConfig: avoid trying to enable or disable the VPN when in offline mode #585 [Pablo Carranza Velez] - version: 7.1.10 date: 2018-03-14T00:00:00.000Z commits: - subject: >- ApplicationManager: try to match available images by imageId to avoid keeping around unused image entries in the db #584 [Pablo Carranza Velez] - subject: >- Compose: Emit a change event when a container is renamed, so that the updated imageId and releaseId are reported #584 [Pablo Carranza Velez] - version: 7.1.9 date: 2018-03-13T00:00:00.000Z commits: - subject: >- Skip taking the lock when updating the releaseId or imageId for a service that comes from a legacy supervisor #581 [Pablo Carranza Velez] - subject: >- When migrating from legacy supervisors, mark the temporary composition as legacy #581 [Pablo Carranza Velez] - version: 7.1.8 date: 2018-03-13T00:00:00.000Z commits: - subject: >- Avoid trying to send a response to API calls after we've already sent an error #579 [Pablo Carranza Velez] - subject: >- Fix passing a target service to start in /v1/apps/:appId/start, and getting the containerId #579 [Pablo Carranza Velez] - version: 7.1.7 date: 2018-03-09T00:00:00.000Z commits: - subject: >- Gosuper: Treat systemd unit states that are not "inactive" or "deactivating" as enabled states #577 [Pablo Carranza Velez] - version: 7.1.6 date: 2018-03-09T00:00:00.000Z commits: - subject: >- Migrations: Use the correct service name for legacy apps #575 [Pablo Carranza Velez] - subject: >- ApplicationManager: only use dockerImageId to identify images for current apps, to avoid trying to delete an image that is in use #575 [Pablo Carranza Velez] - version: 7.1.5 date: 2018-03-09T00:00:00.000Z commits: - subject: >- Fix bug in require for migrations for legacy preload #574 [Cameron Diver] - version: 7.1.4 date: 2018-03-09T00:00:00.000Z commits: - subject: >- Compose: fix type error, createVolume returns a promise #571 [Petros Angelatos] - version: 7.1.3 date: 2018-03-08T00:00:00.000Z commits: - subject: 'Lib: add missing flag to openAsync() #570 [Petros Angelatos]' - version: 7.1.2 date: 2018-03-08T00:00:00.000Z commits: - subject: 'Compose: fix volume migration code #569 [Petros Angelatos]' - version: 7.1.1 date: 2018-03-08T00:00:00.000Z commits: - subject: >- Convert object to array when normalising legacy target apps #568 [Cameron Diver] - version: 7.1.0 date: 2018-03-07T00:00:00.000Z commits: - subject: >- Introduce workaround for IPv6 DNS resolution until nodejs becomes RFC 3484 compliant #566 [Petros Angelatos] - subject: >- Start using an externally built resin/$ARCH-supervisor-base:v1.1.0 as base image, which adds the verbatim option to dns.lookup #566 [Pablo Carranza Velez] - version: 7.0.0 date: 2018-03-07T00:00:00.000Z commits: - subject: 'Send logs to the resin API by default #482 [Pablo Carranza Velez]' - subject: >- Implement a new logger that sends logs to the resin API, that can be used optionally instead of PubNub #482 [Pablo Carranza Velez] - subject: >- Fix the way commands and entrypoints in string form are parsed #482 [Pablo Carranza Velez] - subject: >- Use a supervisor0 network interface for the supervisor network API. Remove RESIN_APP_COMMIT and RESIN_APP_RELEASE env vars. #482 [Pablo Carranza Velez] - subject: >- Supervisor API: remove the tcp-ping endpoints #482 [Pablo Carranza Velez] - subject: >- Remove support for keeping the provisioning apiKey on Resin OS 1.X. Report initial values from config.txt and other device configuration variables to the Resin API. #482 [Pablo Carranza Velez] - subject: >- Remove all bind mounts that were specific to 1.X devices. Move the resin-kill-me file for the handover strategy to /tmp/resin. Add environment variables for the location of resin-kill-me and the lockfile. Use running containers to determine what services are running instead of storing them in the internal database. Use named volumes for persistent data. #482 [Pablo Carranza Velez] - subject: >- Allow running docker-compose-like multicontainer applications #482 [Pablo Carranza Velez] - subject: >- Implement inference of device configuration. Allow array values for dtoverlay and dtparam. #482 [Pablo Carranza Velez] - subject: >- Infer the current state of the device when applying the target state #482 [Pablo Carranza Velez] - subject: >- Implement the multicontainer app models, and change the supervisor configuration management to avoid duplication between fields in config.json and fields in the internal database #482 [Pablo Carranza Velez] - version: 6.6.9 date: 2018-03-05T00:00:00.000Z commits: - subject: 'Update update-locking.md #565 [zwalchuk]' - version: 6.6.8 date: 2018-02-27T00:00:00.000Z commits: - subject: >- Allow truthy values for deltas and lock override (i.e. the string 'true' besides '1') #561 [Pablo Carranza Velez] - version: 6.6.7 date: 2018-02-27T00:00:00.000Z commits: - subject: >- Since armel builds are disabled, do not pull an armel node base image, and ensure we never deploy an armel supervisor #560 [Pablo Carranza Velez] - version: 6.6.6 date: 2018-02-27T00:00:00.000Z commits: - subject: 'Update docker-delta to 2.0.4 #558 [Akis Kesoglou]' - version: 6.6.5 date: 2018-02-21T00:00:00.000Z commits: - subject: >- Circle.yml: escape branch name to ensure we always have a valid tag #556 [Pablo Carranza Velez] - version: 6.6.4 date: 2018-02-20T00:00:00.000Z commits: - subject: >- Circle.yml: Do not push images to dockerhub if building without a docker password #555 [Pablo Carranza Velez] - version: 6.6.3 date: 2018-02-06T00:00:00.000Z commits: - subject: 'Update resumable-request to v2.0 #551 [Akis Kesoglou]' - version: 6.6.2 date: 2018-01-24T00:00:00.000Z commits: - subject: >- Use i386-nlp for supervisor releases for quark boards #549 [Pablo Carranza Velez] - version: 6.6.1 date: 2018-01-19T00:00:00.000Z commits: - subject: >- Improve caching in dindctl build and update README #526 [Pablo Carranza Velez] - version: 6.6.0 date: 2018-01-18T00:00:00.000Z commits: - subject: >- Implement an API for proxy and hostname configuration, and centralize management of config.json #547 [Pablo Carranza Velez] - version: 6.5.9 date: 2018-01-12T00:00:00.000Z commits: - subject: >- Fix saving deviceApiKey to the DB (to fix the RESIN_API_KEY env var) when updating from some older supervisors #544 [Pablo Carranza Velez] - version: 6.5.8 date: 2018-01-10T00:00:00.000Z commits: - subject: >- Update docker-toolbelt to v3.2.1 to fix a bug in deltas #543 [Pablo Carranza Velez] - version: 6.5.7 date: 2018-01-05T00:00:00.000Z commits: - subject: >- Avoid problems with null app names or invalid container names when migrating from old supervisors #541 [Pablo Carranza Velez] - version: 6.5.6 date: 2017-12-15T00:00:00.000Z commits: - subject: >- Update-locking: updating the documentation with extra information and tools #528 [Gergely Imreh] - version: 6.5.5 date: 2017-12-14T00:00:00.000Z commits: - subject: >- Update resin-sync to allow syncing to devices that use balena #533 [Pablo Carranza Velez] - version: 6.5.4 date: 2017-12-14T00:00:00.000Z commits: - subject: >- Do the webpack build in an amd64 image to improve build times #539 [Pablo Carranza Velez] - version: 6.5.3 date: 2017-12-12T00:00:00.000Z commits: - subject: >- Gosuper: When getting IP addresses, ignore balena and the resin-dns bridge #536 [Pablo Carranza Velez] - version: 6.5.2 date: 2017-12-12T00:00:00.000Z commits: - subject: >- Dockerfile: improve caching by installing devDependencies before copying the code #535 [Pablo Carranza Velez] - version: 6.5.1 date: 2017-12-11T00:00:00.000Z commits: - subject: >- Avoid marking the supervisor as unhealthy if update is not happening because it's in offline mode #534 [Pablo Carranza Velez] - version: 6.5.0 date: 2017-12-11T00:00:00.000Z commits: - subject: >- Add a /v1/healthy endpoint that fails if the supervisor is unhealthy, and a HEALTHCHECK command to the Dockerfile that uses it #530 [Pablo Carranza Velez] - version: 6.4.9 date: 2017-12-11T00:00:00.000Z commits: - subject: >- Apply config.txt changes when the new config is empty, to fix deleting config.txt values #532 [Pablo Carranza Velez] - subject: >- Avoid stopping the VPN until a remote target state has been fetched, and retry applying config variables when they fail #532 [Pablo Carranza Velez] - version: 6.4.8 date: 2017-12-01T00:00:00.000Z commits: - subject: >- When listenPort is not specified, use 48484 as default #529 [Pablo Carranza Velez] - version: 6.4.7 date: 2017-11-20T00:00:00.000Z commits: - subject: >- Sync.js: Fix command to build the source code without optimizations #527 [Pablo Carranza Velez] - version: 6.4.6 date: 2017-11-10T00:00:00.000Z commits: - subject: >- Dind: Add a .gitkeep to docker.service.d to avoid dind build errors #525 [Pablo Carranza Velez] - version: 6.4.5 date: 2017-11-09T00:00:00.000Z commits: - subject: >- Use uglifyjs-webpack-plugin ^1.0.1 to optimize the supervisor code #524 [Pablo Carranza Velez] - version: 6.4.4 date: 2017-11-08T00:00:00.000Z commits: - subject: >- Dindctl: Use balena to refresh the supervisor container #523 [Pablo Carranza Velez] - version: 6.4.3 date: 2017-11-03T00:00:00.000Z commits: - subject: >- Use balena 17.06 and resin-base v2.9.2 for the docker-in-docker supervisor #518 [Pablo Carranza Velez] - version: 6.4.2 date: 2017-11-03T00:00:00.000Z commits: - subject: >- Avoid an indefinite recursion that grows the call stack when reporting the current state fails #480 [Pablo Carranza Velez] - version: 6.4.1 date: 2017-11-02T00:00:00.000Z commits: - subject: 'Improve caching when building gosuper #520 [Pablo Carranza Velez]' - subject: >- Automation: Always try to cache using the latest master build #520 [Pablo Carranza Velez] - version: 6.4.0 date: 2017-11-01T00:00:00.000Z commits: - subject: >- Fixes #511, add support for new supervisor image for x86 with quark cpu boards. #512 [Trong Nghia Nguyen] - version: 6.3.11 date: 2017-11-01T00:00:00.000Z commits: - subject: >- Add whitelist-based filtering to mixpanel events #500 [Pablo Carranza Velez] - subject: >- Tunnel all mixpanel events through the resin API #500 [Pablo Carranza Velez] - version: 6.3.10 date: 2017-10-31T00:00:00.000Z commits: - subject: >- Use a custom webpack loader to avoid uncaught exceptions from JSONStream #517 [Pablo Carranza Velez] - version: 6.3.9 date: 2017-10-30T00:00:00.000Z commits: - subject: >- Avoid fetching an image when it might be available or when starting an app because it might not be necessary #507 [Pablo Carranza Velez] - subject: >- Refactor container cleanup to remove all spurious containers #507 [Pablo Carranza Velez] - subject: >- Use container name instead of id to identify apps, and avoid duplicated containers #507 [Pablo Carranza Velez] - version: 6.3.8 date: 2017-10-30T00:00:00.000Z commits: - subject: >- If a device is already provisioned but the key exchange fails, retry it until it succeeds #513 [Pablo Carranza Velez] - version: 6.3.7 date: 2017-10-25T00:00:00.000Z commits: - subject: >- Change the update retry to back off to the standard update check interval #515 [Pagan Gazzard] - version: 6.3.6 date: 2017-10-24T00:00:00.000Z commits: - subject: >- Ensure preloaded apps are properly loaded by setting their internal markedForDeletion to false, and run apps that have it set to null #510 [Pablo Carranza Velez] - subject: >- Improve the check for when the device has been provisioned but the supervisor doesn't have knowledge of it in its local state #510 [Pablo Carranza Velez] - subject: >- Ensure preloaded apps get the deviceApiKey in the env vars, and apps never get the provisioning key, and improve detection of cases when the device has been pre-provisioned #510 [Pablo Carranza Velez] - version: 6.3.5 date: 2017-10-19T00:00:00.000Z commits: - subject: >- Update docker-toolbelt to fix applying deltas on overlay2 with huge images #509 [Akis Kesoglou] - version: 6.3.4 date: 2017-10-17T00:00:00.000Z commits: - subject: 'Delta improvements #504 [Akis Kesoglou]' - version: 6.3.3 date: 2017-10-17T00:00:00.000Z commits: - subject: >- Update docker-progress to improve identification of Balena #505 [Akis Kesoglou] - version: 6.3.2 date: 2017-10-11T00:00:00.000Z commits: - subject: >- Allow specifying a config.json filename in dindctl #503 [Pablo Carranza Velez] - subject: >- Allow specifying a container name for the docker-in-docker development supervisor #503 [Pablo Carranza Velez] - version: 6.3.1 date: 2017-10-04T00:00:00.000Z commits: - subject: 'Update docker-progress #502 [Akis Kesoglou]' - version: 6.3.0 date: 2017-10-03T00:00:00.000Z commits: - subject: 'Update docker-progress #501 [Akis Kesoglou]' - version: 6.2.9 date: 2017-09-15T00:00:00.000Z commits: - subject: >- Explicitly define the source for deltas, allow cross-app deltas, and iterate serially through apps when updating #499 [Pablo Carranza Velez] - version: 6.2.8 date: 2017-09-12T00:00:00.000Z commits: - subject: >- Fix problem catching errors when killing a container that doesn't exist #496 [Pablo Carranza Velez] - version: 6.2.7 date: 2017-09-01T00:00:00.000Z commits: - subject: >- Prefer err.message when reporting errors from dockerode, then err.json and err.reason #490 [Pablo Carranza Velez] - version: 6.2.6 date: 2017-08-29T00:00:00.000Z commits: - subject: >- Add a sync.js script to allow syncing a running supervisor container on a local device #494 [Pablo Carranza Velez] - version: 6.2.5 date: 2017-08-28T00:00:00.000Z commits: - subject: 'Forward resume options #492 [Akis Kesoglou]' - version: 6.2.4 date: 2017-08-28T00:00:00.000Z commits: - subject: 'Update docker-progress to v2.6.3 #493 [Pablo Carranza Velez]' - version: 6.2.3 date: 2017-08-26T00:00:00.000Z commits: - subject: 'Deploy all archs by default to Resin #489 [Akis Kesoglou]' - version: 6.2.2 date: 2017-08-25T00:00:00.000Z commits: - subject: >- Remove an unnecessary directory from sqlite3 that took 30MB #491 [Pablo Carranza Velez] - version: 6.2.1 date: 2017-08-18T00:00:00.000Z commits: - subject: >- Ensure /var/run/resin exists before trying to mount it as tmpfs #486 [Pablo Carranza Velez] - version: 6.2.0 date: 2017-08-16T00:00:00.000Z commits: - subject: >- Try to resume the download of a delta if it fails due to flaky network #483 [Akis Kesoglou] - version: 6.1.4 date: 2017-08-07T00:00:00.000Z commits: - subject: >- Fix references in deploy-to-resin.js and use github credentials when pushing in pr-to-meta-resin.sh #481 [Pablo Carranza Velez] - version: 6.1.3 date: 2017-08-03T00:00:00.000Z commits: - subject: >- Avoid starting apps on startup if device has to reboot due to a configuration change [Pablo Carranza Velez] - version: 6.1.2 date: 2017-07-27T00:00:00.000Z commits: - subject: >- When the device is about to reboot or shutdown, close the API server and avoid applying updates [Pablo Carranza Velez] - version: 6.1.1 date: 2017-07-27T00:00:00.000Z commits: - subject: >- Avoid unhandled errors when in offline mode due to a missing apiEndpoint [Pablo Carranza Velez] - subject: >- Do not persist the uuid when in offline mode, so that the supervisor tries to provision if it goes out of offline mode [Pablo Carranza Velez] - version: 6.1.0 date: 2017-07-27T00:00:00.000Z commits: - subject: >- Update docker-delta to 1.1.1, docker-toolbelt to 3.0.1, docker-progress to 2.6.0 to add support for deltas and overlay2 [Pablo Carranza Velez] - version: 6.0.5 date: 2017-07-27T00:00:00.000Z commits: - subject: >- Allow building the supervisor source without optimizations for easier debugging with dindctl [Pablo Carranza Velez] - subject: >- Pull the supervisor image if it's not available when running with dindctl [Pablo Carranza Velez] - subject: >- Fix preloading and parsing of arguments in the dind supervisor [Pablo Carranza Velez] - version: 6.0.4 date: 2017-07-26T00:00:00.000Z commits: - subject: >- Fix the message shown when docker gives a 500 error when starting a container [Pablo Carranza Velez] - version: 6.0.3 date: 2017-07-25T00:00:00.000Z commits: - subject: >- Use a pinned build of the debian image to build base and gosuper, to avoid unnecessary rebuilds [Pablo Carranza Velez] - version: 6.0.2 date: 2017-07-24T00:00:00.000Z commits: - subject: 'Disable armel builds [Pablo Carranza Velez]' - subject: >- Disable pushing to registry.resinstaging.io, and use build environment to login to dockerhub [Pablo Carranza Velez] - subject: 'Move dindctl to the base of the repository [Pablo Carranza Velez]' - subject: >- Add a script to automate the creation of meta-resin PRs [Pablo Carranza Velez] - subject: >- Add a deploy-to-resin.js and automatically deploy to the Resin API on master builds [Pablo Carranza Velez] - subject: >- Use a local supervisor image for the dind supervisor [Pablo Carranza Velez] - subject: >- Replace the Jenkins build with a CircleCI build that uses the new multi-stage build [Pablo Carranza Velez] - subject: >- Make dindctl an easier to use tool that takes options instead of using env vars [Pablo Carranza Velez] - subject: >- Refactor the makefile to make it easier to use and make use of the multi-stage build [Pablo Carranza Velez] - subject: >- Add a single Dockerfile to build the supervisor as a multi-stage build [Pablo Carranza Velez] - version: 6.0.1 date: 2017-07-12T00:00:00.000Z commits: - subject: 'Use webpack to join all modules [Pablo Carranza Velez]' - version: 6.0.0 date: 2017-07-07T00:00:00.000Z commits: - subject: 'Deprecate edge device type [Joe Roberts]' - version: 5.1.1 date: 2017-07-04T00:00:00.000Z commits: - subject: >- Fix semver comparison for OS version when determining if the device has deviceApiKey support [Pablo Carranza Velez] - version: 5.1.0 date: 2017-07-01T00:00:00.000Z commits: - subject: 'Switch to glide for Go dependencies [Pablo Carranza Velez]' - subject: 'Add support for aarch64 [Pablo Carranza Velez]' - version: 5.0.2 date: 2017-07-01T00:00:00.000Z commits: - subject: >- Dind: Set DELTA_ENDPOINT, insert variant into os-release, and fix vpn apikeys [Pablo Carranza Velez] - version: 5.0.1 date: 2017-07-01T00:00:00.000Z commits: - subject: >- Allow registering the deviceApiKey in a non-compatible OS by making the apiKey equal the deviceApiKey, and add an fsync to all config.json writes [Pablo Carranza Velez] - version: 5.0.0 date: 2017-06-26T00:00:00.000Z commits: - subject: >- Remove the undocumented and unused sideload and compose APIs [Pablo Carranza Velez] - version: 4.5.0 date: 2017-06-26T00:00:00.000Z commits: - subject: 'Update docker-delta to 1.0.3 to support docker 17 [Pablo Carranza Velez]' - version: 4.4.2 date: 2017-06-26T00:00:00.000Z commits: - subject: >- Fix provisioning key exchange by passing apikey in the request [Pablo Carranza Velez] - version: 4.4.1 date: 2017-06-24T00:00:00.000Z commits: - subject: >- Make cleanup in jenkins build less aggressive, but remove all created tags [Pablo Carranza Velez] - version: 4.4.0 date: 2017-06-15T00:00:00.000Z commits: - subject: >- When apiEndpoint is not defined, work in offline mode [Pablo Carranza Velez] - subject: >- Fix mixpanel initialization when not in offline mode [Pablo Carranza Velez] - version: 4.3.2 date: 2017-06-14T00:00:00.000Z commits: - subject: 'Update dependent device DB [Joe Roberts]' - version: 4.3.1 date: 2017-06-13T00:00:00.000Z commits: - subject: 'Enable SSL when connecting to pubnub [Petros Angelatos]' - version: 4.3.0 date: 2017-06-05T00:00:00.000Z commits: - subject: >- Switch to generating the BASE_IMAGE_VERSION in the makefile, so that the makefile targets can use an accurate version by default [Pagan Gazzard] - version: 4.2.4 date: 2017-05-12T00:00:00.000Z commits: - subject: 'Fix typo in how hostOSVersionPath was camel-cased [Pablo Carranza Velez]' - version: 4.2.3 date: 2017-05-11T00:00:00.000Z commits: - subject: 'Properly handle errors when requesting deltas [Pablo Carranza Velez]' - subject: >- Add aufs-tools to the dind supervisor for use when running on aufs [Pagan Gazzard] - version: 4.2.2 date: 2017-04-27T00:00:00.000Z commits: - subject: >- Only delete the provisioning key if the supervisor is running on an OS that supports using the deviceApiKey [Pablo Carranza Velez] - subject: >- Avoid writing target device config to DB if it hasn't changed [Pablo Carranza Velez] - version: 4.2.1 date: 2017-04-26T00:00:00.000Z commits: - subject: >- Fix an infinite loop that could happen when trying to bootstrap if the key exchange fails [Pagan Gazzard] - subject: >- Fix the case of being registered with a version of the cli/sdk that does not support device api keys. [Pagan Gazzard] - version: 4.2.0 date: 2017-04-24T00:00:00.000Z commits: - subject: >- Add handling for duplicate UUIDs and key exchanging for old user-api-keys [Pagan Gazzard] - subject: >- Change to the new device registration method to exchange our provisioning key with a dedicated api key for the device. [Pagan Gazzard] - subject: >- Docs/API.md: Fix documentation command sent via the API proxy for POST /v1/update. [Horia Delicoti] - version: 4.1.2 date: 2017-04-10T00:00:00.000Z commits: - subject: >- Issue #420: Avoid supervisor crash without connection by properly memoizing promise-returning functions [Pablo Carranza Velez] - subject: >- Report the OS variant as a separate field and not as part of the OS version [Pablo Carranza Velez] - version: 4.1.1 date: 2017-03-30T00:00:00.000Z commits: - subject: >- Issue #413: Fix an error applying the connectivity check config var [Pablo Carranza Velez] - subject: >- Issue #410: Cleanup images before running an update, preserving the ones that will be used in the target state [Pablo Carranza Velez] - version: 4.1.0 date: 2017-03-29T00:00:00.000Z commits: - subject: >- Authentication credentials for registry and delta server [Andreas Fitzek] - subject: >- Issue #402: Ensure that app configs are non-null and valid json objects [Pablo Carranza Velez] - subject: >- Report OS variant to the API together with the OS version [Pablo Carranza Velez] - subject: >- Issue #230: Add a custom User-Agent header to all requests [Pablo Carranza Velez] - subject: 'Update waffle badge [Sabith]' - version: 4.0.0 date: 2017-03-09T00:00:00.000Z commits: - subject: >- Issue #396: Log when we're rebooting due to a device config change [Pablo Carranza Velez] - subject: >- Issue #20: Change the update lock to a temporary filesystem [Pablo Carranza Velez] - subject: >- Make local mode only work in development OS, and make it remove app containers and allow unauthenticated API requests [Pablo Carranza Velez] - subject: >- Restore default value when clearing a special action config variable [Pablo Carranza Velez] - subject: >- Allow all config variables to take truthy or falsy values [Pablo Carranza Velez] - subject: >- Allow setting the supervisor to a "local mode" which stops apps and prevents cleanup [Pablo Carranza Velez] - subject: >- Issues #23 and #236: Use docker logs to get all logs from the container, including those before supervisor start [Pablo Carranza Velez] - subject: >- Issues #389 and #390: Remove /host_run/dbus and /host/var/lib/connman bind mounts for non-ResinOS-1.X devices [Pablo Carranza Velez] - subject: >- Issue #386: Allow forcing updates when an update was already scheduled [Pablo Carranza Velez] - version: 3.0.1 date: 2017-02-15T00:00:00.000Z commits: - subject: >- Issue #381: Set target deviceConfig values from preloaded apps [Pablo Carranza Velez] - version: 3.0.0 date: 2017-01-18T00:00:00.000Z commits: - subject: >- Issue #378: Increase delta timeouts (to avoid ESOCKETTIMEOUT errors), make them configurable, and provide nicer message when the delta server times out [Pablo Carranza Velez] - subject: 'Update versionist to v2.8.0 [Pablo Carranza Velez]' - subject: 'Update docker-progress to v2.3.3 [Pablo Carranza Velez]' - subject: >- Switch to aufs for the docker-in-docker development supervisor [Pablo Carranza Velez] - subject: >- Do not bind mount kmod if the host is not Resin OS 1.X [Pablo Carranza Velez] - version: 2.9.0 date: 2016-12-20T00:00:00.000Z commits: - subject: >- Bump docker-delta to v1.0.1 to fix deltas on aufs when there's many layers [Pablo Carranza Velez] - subject: 'Document dependent apps feature [curcuz]' - version: 2.8.5 date: 2016-12-20T00:00:00.000Z commits: - subject: >- Fix error applying device configuration because deviceConfig table is empty [Pablo Carranza Velez] - subject: 'Make the base image hash more deterministic [Pablo Carranza Velez]' - version: 2.8.4 date: 2016-12-16T00:00:00.000Z commits: - subject: 'Use versionist''s default configuration [Pablo Carranza Velez]' - subject: 'Build the base image together with the supervisor [Pablo Carranza Velez]' - subject: >- Start using versionist for versioning and changelog [Pablo Carranza Velez] - subject: 'Bump the MAX_BASIS_DIRS limit for rsync [Michal Mazurek]' - version: 2.8.3 date: 2016-11-23T00:00:00.000Z commits: - subject: >- Fallback to DROP when iptables REJECT is not available [Pablo Carranza Velez] - version: 2.8.2 date: 2016-11-07T00:00:00.000Z commits: - subject: >- Update the supervisor base to 20161103 to include the i386 fix [Pablo Carranza Velez] - subject: >- Fix an error when trying to call logSystemEvent with an undefined app [Pagan Gazzard] - subject: 'Fix nodejs for the i386 architectures [Theodor Gherzan]' - subject: >- Provide a better error message when app is not found for purging [Pablo Carranza Velez] - subject: >- Only iterate through remote apps to set device config [Pablo Carranza Velez] - version: 2.8.1 date: 2016-10-31T00:00:00.000Z commits: - subject: >- Properly delete dependent apps and their corresponding devices [Pablo Carranza Velez] - version: 2.8.0 date: 2016-10-30T00:00:00.000Z commits: - subject: >- Add HostConfig in container create instead of start [Pablo Carranza Velez] - subject: >- Make it clear in logs when container was already running [Pablo Carranza Velez] - subject: 'Stop all apps before rebooting or shutting down [Pablo Carranza Velez]' - subject: 'Update request-progress to v2.0.1 [Pablo Carranza Velez]' - version: 2.7.1 date: 2016-10-24T00:00:00.000Z commits: - subject: 'Use multiArgs to promisify gosuper requests [Pablo Carranza Velez]' - subject: >- Also make it explicit in mixpanel events when it's a full image download [Pablo Carranza Velez] - subject: >- Log whether deltas are being used when downloading an app [Pablo Carranza Velez] - version: 2.7.0 date: 2016-10-23T00:00:00.000Z commits: - subject: 'Upgrade docker-progress to v2.3.1 [Pablo Carranza Velez]' - subject: >- Fixed multiple update loops appearing after a long period of updates failing. [Pagan Gazzard] - subject: >- Avoid restarting the app if the device name changes [Pablo Carranza Velez] - subject: >- Use appId in dependent app assets tar path, and only create the tar if it doesn't exist [Pablo Carranza Velez] - subject: >- Support AUFS by upgrading node-docker-delta to 1.0.0 and docker-toolbelt to 1.3.0 [Pablo Carranza Velez] - subject: 'Send the uuid as distinct_id for mixpanel events [Pablo Carranza Velez]' - subject: >- gosuper: support i386 platforms without MMX instructions [Petros Angelatos] - version: 2.6.3 date: 2016-10-13T00:00:00.000Z commits: - subject: >- Properly set device name, and set undefined arguments to setConfig as null [Pablo Carranza Velez] - version: 2.6.2 date: 2016-10-11T00:00:00.000Z commits: - subject: Updated knex to ~0.12.3 - version: 2.6.1 date: 2016-10-11T00:00:00.000Z commits: - subject: >- Do not use parsed JSON to compare dep. device state [Pablo Carranza Velez] - version: 2.6.0 date: 2016-10-10T00:00:00.000Z commits: - subject: >- Fix docker utils getImageEnv by correctly parsing the returned array [Pablo Carranza Velez] - subject: 'Avoid installing npm dependencies twice [Pablo Carranza Velez]' - subject: 'Updated to bluebird 3 [Pagan Gazzard]' - subject: >- Better parameter handling in PUT /v1/devices/:uuid [Pablo Carranza Velez] - subject: >- An update hook response of 200 will cause the proxyvisor to stop pinging the hook [Pablo Carranza Velez] - subject: 'Allow deleting dependent apps and devices [Pablo Carranza Velez]' - subject: 'Implement delete dependent device hook [Pablo Carranza Velez]' - subject: >- Omit some fields when responding with a device object [Pablo Carranza Velez] - subject: 'Add validation to dependent device provisioning [Pablo Carranza Velez]' - version: 2.5.2 date: 2016-10-07T00:00:00.000Z commits: - subject: 'Removed obsolete resolv.conf bind-mount [Petros Angelatos]' - subject: 'Updated to pinejs-client 2 [Pagan Gazzard]' - version: 2.5.1 date: 2016-10-06T00:00:00.000Z commits: - subject: >- Store config vars when there's nothing else to update [Pablo Carranza Velez] - subject: >- Do not mark an update as failed if the hook failed [Pablo Carranza Velez] - subject: >- When hitting the dependent devices hook, send appId as int [Pablo Carranza Velez] - subject: 'Updated to lodash 4 [Pagan Gazzard]' - subject: 'Updated to coffeescript 1.11 [Pagan Gazzard]' - subject: >- In delete-then-download, only delete when a download is needed [Pablo Carranza Velez] - subject: 'Compare config vars to trigger an app restart [Pablo Carranza Velez]' - subject: >- Fix disabling logs to display on newer OS with different service name [Pablo Carranza Velez] - subject: >- In cleanup, normalize all image tags for comparison [Pablo Carranza Velez] - subject: 'Use getRegistryAndName from docker-toolbelt 1.2.0 [Pablo Carranza Velez]' - version: 2.5.0 date: 2016-10-01T00:00:00.000Z commits: - subject: 'Switch to v2 api to be able to set is_online [Pagan Gazzard]' - subject: >- Implement proxyvisor API with dependent device handling [Pablo Carranza Velez] - subject: >- Use the state endpoint from the API to get the full device state [Pablo Carranza Velez] - subject: >- Add a deviceConfig db table to store host config separately, and allow deleting config.txt entries [Pablo Carranza Velez] - subject: >- Expose RESIN_APP_NAME, RESIN_APP_RELEASE, RESIN_DEVICE_NAME_AT_INIT, RESIN_DEVICE_TYPE and RESIN_HOST_OS_VERSION env vars [Pablo Carranza Velez] - subject: >- Add missing error handler on a stream in docker-utils [Pablo Carranza Velez] - version: 2.4.0 date: 2016-09-30T00:00:00.000Z commits: - subject: >- On cleanup, force removal for images and containers, and remove container volumes [Pablo Carranza Velez] - subject: 'Add system logs for Shutdown, Reboot and Purge [Pablo Carranza Velez]' - version: 2.3.0 date: 2016-09-26T00:00:00.000Z commits: - subject: 'Implement delete-then-download update strategy [Pablo Carranza Velez]' - subject: 'Bump node-docker-delta to 0.0.12 [Pablo, Kostas]' - version: 2.2.1 date: 2016-09-26T00:00:00.000Z commits: - subject: 'Fix ENV bug in build process [Petros Angelatos]' - version: 2.2.0 date: 2016-09-23T00:00:00.000Z commits: - subject: 'Add resin-vpn interface IP filtering to gosupervisor [Praneeth]' - subject: 'Compress go binary with upx [Petros Angelatos]' - subject: 'Switch to go version 1.6 [Petros Angelatos]' - subject: 'Print all logs to stdout of container instead of file [Petros Angelatos]' - subject: 'Upgrade nodejs to version 6.5 [Petros Angelatos]' - subject: 'Switch initsystem from supervisor to busybox init [Petros Angelatos]' - subject: 'Switch build to openembedded base images [Petros Angelatos]' - subject: >- DRY up calls to gosuper API, and use empty Host header [Pablo Carranza Velez] - version: 2.1.1 date: 2016-09-09T00:00:00.000Z commits: - subject: >- Add iptables rules to allow resin-vpn named interface to be used by VPN [Praneeth] - subject: 'Updated to coffee-script ~1.10.0 [Pagan Gazzard]' - subject: 'Catch exec format error and provide friendlier error message [Aleksis]' - version: 2.1.0 date: 2016-09-05T00:00:00.000Z commits: - subject: >- Pick up new variable from hostOS, pointing to the mount point of the hostOS's boot partition [Theodor Gherzan] - version: 2.0.0 date: 2016-08-31T00:00:00.000Z commits: - subject: >- **[Breaking]** Change the logger to send at a specific interval and with a different message format [Pablo Carranza Velez] - version: 1.14.0 date: 2016-08-16T00:00:00.000Z commits: - subject: 'Allow using an HTTP header for auth [Pablo Carranza Velez]' - subject: >- Add iptables rules to block requests to the supervisor API from all interfaces except vpn, docker and local [Pablo Carranza Velez] - version: 1.13.2 date: 2016-08-09T00:00:00.000Z commits: - subject: >- bootstrap: if offlineMode is enabled, persist only the uuid [Petros Angelatos] - version: 1.13.1 date: 2016-07-28T00:00:00.000Z commits: - subject: 'Using `links` in compose files is now allowed [Petros Angelatos]' - version: 1.13.0 date: 2016-07-27T00:00:00.000Z commits: - subject: 'Allow the supervisor to work in offline mode [Pablo Carranza Velez]' - subject: 'Fix duplicate logs issue [Kostas Lekkas]' - subject: >- **[Breaking]** Do not bind mount /run/dbus to /run/dbus [Pablo Carranza Velez] - subject: >- Default to not bind mounting kmod if container distro can't be found [Pablo Carranza Velez] - subject: 'Use log-timestamp to add timestamps to logs [Pablo Carranza Velez]' - version: 1.12.2 date: 2016-07-15T00:00:00.000Z commits: - subject: >- Bind mount kmod if the container is debian or raspbian [Pablo Carranza Velez] - version: 1.12.1 date: 2016-07-08T00:00:00.000Z commits: - subject: Fix preloaded apps by passing appId to extendEnvVars - version: 1.12.0 date: 2016-06-28T00:00:00.000Z commits: - subject: 'Add endpoints for docker-compose up and down [Pablo Carranza Velez]' - version: 1.11.6 date: 2016-06-23T00:00:00.000Z commits: - subject: 'Fixed deltas for older docker daemon versions [Petros Angelatos]' - version: 1.11.5 date: 2016-06-23T00:00:00.000Z commits: - subject: 'Fix entry.sh when DOCKER_ROOT isn''t set [Pagan Gazzard]' - version: 1.11.4 date: 2016-06-17T00:00:00.000Z commits: - subject: 'Cleanup docker images if delta failed [Petros Angelatos]' - subject: 'Make the data path configurable [Pablo Carranza Velez]' - version: 1.11.3 date: 2016-06-11T00:00:00.000Z commits: - subject: >- Add listener for container events and reattach on restart [Pablo Carranza Velez] - subject: 'fix deltas by not using the supervisor as source [Pablo Carranza Velez]' - version: 1.11.2 date: 2016-06-10T00:00:00.000Z commits: - subject: >- fix delta error handling by listening for the 'error' event [Petros Angelatos] - version: 1.11.1 date: 2016-06-09T00:00:00.000Z commits: - subject: 'Use sh for postinstall as alpine has no bash [Pablo Carranza Velez]' - subject: 'update docker-delta to 0.0.8 [Petros Angelatos]' - subject: >- symlink docker root to default path if not already there [Petros Angelatos] - version: 1.11.0 date: 2016-06-07T00:00:00.000Z commits: - subject: 'Add restart policies and change default to auto-restart [Aleksis]' - version: 1.10.1 date: 2016-06-07T00:00:00.000Z commits: - subject: 'Switch to docker-delta library to use deltas v2 [Petros Angelatos]' - subject: 'Correctly compare container image name on cleanup [Pablo Carranza Velez]' - subject: 'Log useful supervisor info to stdout/stderr [Kostas Lekkas]' - version: 1.10.0 date: 2016-05-26T00:00:00.000Z commits: - subject: 'Fix progress bars on docker version 1.10 [Aleksis]' - version: 1.9.0 date: 2016-05-24T00:00:00.000Z commits: - subject: >- Fix reporting of supervisor version for alpine supervisor [Pablo Carranza Velez] - subject: 'Use rwlock to block when pulling images [Pablo Carranza Velez]' - subject: >- Increase API timeout to 15 minutes, and make it configurable [Pablo Carranza Velez] - subject: >- Add endpoint to load images from a docker save tar [Pablo Carranza Velez] - subject: 'Add alpine supervisor build information [Trong]' - subject: >- Add endpoints to manage images and containers locally [Pablo Carranza Velez] - subject: 'Only use bodyParser for endpoints that need it [Pablo Carranza Velez]' - subject: 'Add RESIN_APP_ID variable [Pablo Carranza Velez]' - subject: 'Increase delta request timeout to 15 minutes [Pablo Carranza Velez]' - version: 1.8.0 date: 2016-04-25T00:00:00.000Z commits: - subject: 'Add endpoints to start, stop and get app [Pablo, Kostas]' - subject: >- Removed a bunch ofobsolete code for the old terminal, reducing the supervisor size considerably. [Pagan Gazzard] - version: 1.7.0 date: 2016-03-28T00:00:00.000Z commits: - subject: 'Add RESIN_HOST_LOG_TO_DISPLAY variable [Pablo Carranza Velez]' - subject: >- Add system logs for special actions and host config [Pablo Carranza Velez] - subject: 'Fix setting config.txt for RPi 3 [Pablo Carranza Velez]' - subject: 'Fix saving config vars to DB before reboot [Pablo Carranza Velez]' - subject: >- Bind mount host /var/lib/connman to application /host_var/lib/connman [Aleksis] - subject: >- Add RESIN_SUPERVISOR_DELTA to special list so that app is not restarted when it changes [Pablo Carranza Velez] - version: 1.6.1 date: 2016-03-08T00:00:00.000Z commits: - subject: 'Reduce noise in logs [Kostas Lekkas]' - version: 1.6.0 date: 2016-02-22T00:00:00.000Z commits: - subject: 'Add endpoint to get device state [Pablo Carranza Velez]' - subject: >- Check for valid strings or ints in all config values [Pablo Carranza Velez] - subject: 'Remove quotes in OS version [Pablo Carranza Velez]' - version: 1.5.0 date: 2016-02-09T00:00:00.000Z commits: - subject: 'Add support for delta image download [petrosagg and Pablo]' - version: 1.4.0 date: 2016-01-28T00:00:00.000Z commits: - subject: 'Report Host OS version to the API [Pablo Carranza Velez]' - subject: >- Use _.defaults instead of _.extend to ensure internal env vars are not overwritten [Pablo Carranza Velez] - subject: 'Expose resin API key to apps [Pablo Carranza Velez]' - subject: >- On download start, set download_progress to 0. On finish, set state to Idle [Pablo Carranza Velez] - subject: 'Set GOARM separately for each architecture [Pablo Carranza Velez]' - subject: 'Add armv5 (armel) build [Trong]' - subject: >- Add OOM protection for the supervisor container, openvpn and connmand [Praneeth] - version: 1.3.2 date: 2015-12-17T00:00:00.000Z commits: - subject: 'Do not report the tun addresses to API [Praneeth]' - version: 1.3.1 date: 2015-12-07T00:00:00.000Z commits: - subject: >- Only save the app if starting the container was successful [Pablo Carranza Velez] - version: 1.3.0 date: 2015-12-01T00:00:00.000Z commits: - subject: 'Remove volumes when removing a container [Pablo Carranza Velez]' - subject: >- Refactor the still undocumented special env vars into RESIN_SUPERVISOR_ [Pablo Carranza Velez] - subject: >- Implement several update strategies (kill before download, 0-downtime) [Pablo Carranza Velez] - subject: >- Fix the error that comes up when no ip addresses are returned by gosuper [Praneeth] - subject: 'Switched to docker-progress for pull progress. [Pagan Gazzard]' - subject: 'Fix semver versioning in tcp-ping endpoint. [Praneeth]' - version: 1.2.1 date: 2015-11-04T00:00:00.000Z commits: - subject: >- Use random name for PubNub channel and report to API [Pablo Carranza Velez] - version: 1.2.0 date: 2015-10-16T00:00:00.000Z commits: - subject: >- Don't bind mount (the sometimes non-existent) docker.sock [Pablo Carranza Velez] - subject: 'Expose a RESIN_SUPERVISOR_VERSION env var to app [Pablo Carranza Velez]' - version: 1.1.1 date: 2015-10-15T00:00:00.000Z commits: - subject: 'Prevent non-fatal errors from causing the supervisor to exit [Lorenzo]' - subject: >- Use buildtime env vars as the default Pubnub and Mixpanel keys [Pablo Carranza Velez] - version: 1.1.0 date: 2015-10-09T00:00:00.000Z commits: - subject: 'Switch back to using arch-based node images [Pablo Carranza Velez]' - subject: 'Don''t allow bootstrap to delete apiSecret from DB [Pablo Carranza Velez]' - subject: 'Add API endpoint to expire and create new API key [Pablo Carranza Velez]' - subject: 'Enable control of API poll interval through Device Variables [Praneeth]' - subject: >- Allow control of VPN + TCP check + Pub nub logs with Device Environment variables [Praneeth] - subject: 'Add GO api for openvpn control [Praneeth]' - version: 1.0.2 date: 2015-10-08T00:00:00.000Z commits: - subject: >- Fix getting API key from DB by returning its .value [Pablo Carranza Velez] - version: 1.0.1 date: 2015-10-07T00:00:00.000Z commits: - subject: >- Pass supervisor API key to app, don't regenerate the key, and authenticate ALL requests [Pablo Carranza Velez] - subject: 'Use raspberrypi2 base image for armv7hf [Pablo Carranza Velez]' - subject: >- Bugfix: wrap all errors from update as Error objects - prevents image cleanup on download failures [Pablo Carranza Velez] - subject: >- Wait 10 seconds after sending SIGTERM and before sending SIGKILL when stopping a container [Petros Angelatos] - version: 1.0.0 date: 2015-10-02T00:00:00.000Z commits: - subject: >- Expose supervisor API to app by allowing all requests from 127.0.0.1 and passing address and port as env vars [Pablo Carranza Velez] - subject: >- Only apply special actions / boot config on change, and always persist to DB [Pablo Carranza Velez] - version: 0.0.18 date: 2015-10-01T00:00:00.000Z commits: - subject: >- Fix preloaded apps so that they have the complete environment [Pablo Carranza Velez] - version: 0.0.17 date: 2015-09-29T00:00:00.000Z commits: - subject: >- Updated bases image to board-specific, and all node versions to 0.10.40-slim [Pablo Carranza Velez] - subject: >- Allow changing RPi config.txt with environment variables [Pablo Carranza Velez] - subject: >- Allow special env vars with a callback which don't cause an app restart [Pablo and Praneeth] - subject: 'Remove unused config.supervisorContainer in config.coffee [Praneeth]' - subject: >- Implement and use golang endpoint for getting IPs of the device, also fixes duplicate IP reporting in the JS implementation [Praneeth] - subject: 'Refactor bootstrapping to run in background [Pablo Carranza Velez]' - subject: 'Run preloaded app images [Pablo Carranza Velez]' - subject: 'Add API endpoints for device reboot and shutdown [Pablo Carranza Velez]' - subject: 'Add /restart endpoint to restart container [Pablo Carranza Velez]' - subject: 'Add additional mount point for the host dbus on host_run/dbus [Praneeth]' - subject: 'Switch to golang 1.5.1 for compiling [Praneeth]' - subject: >- Allow /purge to be called with appId as string or number [Pablo Carranza Velez] - subject: 'Fetch containerId from DB within lock [Pablo Carranza Velez]' - subject: 'Change update cycle to map by appId [Pablo Carranza Velez]' - subject: >- Allow updates to be forced via an env var or an API call [Pablo Carranza Velez] - subject: 'Use lockfile to lock updates per app [Pablo Carranza Velez]' - version: 0.0.16 date: 2015-09-07T00:00:00.000Z commits: - subject: 'Disabled the TCP ping whilst the VPN is connected. [Praneeth]' - subject: 'Added TCP ping enable/disable endpoints. [Praneeth]' - subject: >- Added initial go supervisor, using it to purge the /data directory of apps. [Pablo Carranza Velez] - subject: 'Mounted /lib/firmware into the user container. [Pablo Carranza Velez]' - subject: 'Fixed spaces in env vars for web terminal. [Petros]' - subject: 'Added missing return when no app id specified. [Pablo Carranza Velez]' - subject: 'Try to populate the docker cache before building. [Pagan Gazzard]' - version: 0.0.15 date: 2015-07-23T00:00:00.000Z commits: - subject: 'Make resolv.conf writable from a user container. [Praneeth]' - subject: Updated pubnub (3.7.13 doesn't seem to have the heartbeat unnecessarily) - subject: >- Fixed an issue where an image would not be cleaned up if it was tagged in multiple repos. [Pagan Gazzard] - subject: 'Use JOBS=MAX for npm install. [Pagan Gazzard]' - subject: >- Updated pinejs-client so that valid ssl certificates are enforced by default. [Pagan Gazzard] - subject: >- Write the `registered_at` time to config.json as well, in case there is a failure between writing to config.json and writing to knex [Pagan Gazzard] - version: 0.0.14 date: 2015-05-12T00:00:00.000Z commits: - subject: 'Clean up tmp files left behind by npm [Pagan Gazzard]' - subject: >- Fix an error where mixpanel events would have the wrong uuid set on first provision. [Pagan Gazzard] - subject: >- Update knexjs to ~0.8.3, which uses lodash 3 and means it will be deduplicated (reducing image size and runtime memory usage) [Pagan Gazzard] - subject: >- Stop caching config.json, avoids a race that could cause getting stuck repeatedly trying to register [Pagan Gazzard] - version: 0.0.13 date: 2015-05-05T00:00:00.000Z commits: - subject: >- Bind mount /etc/resolv.conf as ro for application containers and supervisor [Praneeth] - version: 0.0.12 date: 2015-04-15T00:00:00.000Z commits: - subject: >- Stopped displaying an error message when trying to start a container that is already started. - subject: >- Improved error messages reported to the user in the case of finding an empty string. - subject: Switched to using the dockerode pull progress mechanism. - subject: >- Fixed trying to delete supervisor container when it reports an alternate tag instead of the primary tag. - subject: Switched to using the i386-node image as a base for the i386-supervisor - subject: Fixed reporting error objects to mixpanel.