- 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 signed-off-by: Cameron Diver 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 signed-off-by: Matthew McGinn 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Matthew McGinn 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Roman Mazur 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Roman Mazur 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Roman Mazur 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 signed-off-by: Roman Mazur 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 signed-off-by: Roman Mazur 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 signed-off-by: Roman Mazur author: Roman Mazur - subject: Add sinon types hash: bc3c56da4e86941e4c143f066fb4e179ae21ba6b body: '' footer: Change-type: patch change-type: patch Signed-off-by: Roman Mazur signed-off-by: Roman Mazur 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 signed-off-by: Roman Mazur 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 signed-off-by: Cameron Diver 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 signed-off-by: Roman Mazur 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Matthew McGinn 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver author: Cameron Diver - subject: Show better logs for UpdatesLockedError hash: 5894a9baf3c243b1c9647530da3ca68d65bc6cfb body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Matthew McGinn 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 signed-off-by: Matthew McGinn 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Heds Simons 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Cameron Diver 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Heds Simons 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Rich Bayliss 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver author: Cameron Diver - subject: Remove environment variable whitespace trimming hash: 6bf008cc85104a0a9c3c969a0a9f49c66ccc4f7e body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver author: Cameron Diver - subject: Add application status endpoint hash: 769e2f3c519d0fa0f5d728c16f40a775ee255bf1 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver author: Cameron Diver - subject: Improve error and logger typings hash: e5893c0ee05b2003fa6ab5147e52b6d1a4faae1e body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver author: Cameron Diver - subject: Prefer optional type in ConfigChangeMap hash: 6f9d9e5de6c560be7e6960b6db6a0b22a4c882a2 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver signed-off-by: Cameron Diver author: Cameron Diver - subject: Use dictionary for db key hash: 6a1e787eee9fd810b4ce083f4eac900020761881 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver author: Cameron Diver - subject: 'typings: Improve docker-utils typings' hash: fed01c355c8728e5088fd16c620582566bcd8c08 body: '' footer: Change-type: patch change-type: patch Signed-off-by: Cameron Diver signed-off-by: Cameron Diver author: Cameron Diver - subject: 'misc: Add Nullable helper type' hash: d1e1297f6db4b00ed382cd96e345b4c9637f7211 body: '' footer: Change-type: minor change-type: minor Signed-off-by: Cameron Diver signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Giovanni Garufi 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Cameron Diver 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Pablo Carranza Velez 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 signed-off-by: Giovanni Garufi 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 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 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.