Commit Graph

2915 Commits

Author SHA1 Message Date
Pagan Gazzard
3bad30eff7 Remove the coffeescript source files and coffeescript module after compilation since they're only needed at compile time (and not at runtime). 2015-10-13 13:08:24 -03:00
Pagan Gazzard
e64e6e6dbe Handle trying to remove already stopped/removed containers gracefully. 2015-10-13 13:08:24 -03:00
Pagan Gazzard
7072b1df96 On update failure schedule another attempt briefly in the future. 2015-10-13 13:08:24 -03:00
Pagan Gazzard
ba5e186ebc Order the packages according to npm install --save 2015-10-13 13:08:23 -03:00
Pagan Gazzard
81ebf7cb74 Only log errors from package installs. 2015-10-13 13:08:23 -03:00
Pagan Gazzard
4fb54b471d Force the removal of the old container when trying to start a build. 2015-10-13 13:08:23 -03:00
Praneeth Bodduluri
0f23ddded8 Change the data mount point to /resin-data 2015-10-13 13:08:23 -03:00
Petros Angelatos
d511d9df94 Set the 'RESIN' env var in user applications 2015-10-13 13:08:23 -03:00
Pagan Gazzard
5bd4ee7ee6 Fix event-stream usage. 2015-10-13 13:08:23 -03:00
Pagan Gazzard
f317927284 Move the restart check to the earliest possible stage, such that the only mount that we actually need in order to bootstrap the the docker.sock mounting. 2015-10-13 13:08:23 -03:00
Pagan Gazzard
2c11b34bdf Have the supervisor update if it finds itself missing Volumes/Binds it expects to have (or has additional that it does not expect).
Conflicts:
	src/config.coffee
	src/supervisor-update.coffee
2015-10-13 13:08:23 -03:00
Pagan Gazzard
bf8922e2d9 Update bluebird to v2.2.2 2015-10-13 13:08:23 -03:00
Pagan Gazzard
b7149bb266 Report the commit to the API as soon as the container is started. 2015-10-13 13:08:23 -03:00
Pagan Gazzard
7a5197d68e Tag the accelerated supervisor in the same way as the non-accelerated one. 2015-10-13 13:08:23 -03:00
Pagan Gazzard
d7abc9e8bd Make sure to remove the accelerated build container if it exists before trying to create a new one. 2015-10-13 13:08:23 -03:00
Pagan Gazzard
209d365891 Use the resin/supervisor-base image when creating an accelerated supervisor, to match when building from the dockerfile. 2015-10-13 13:08:23 -03:00
Pagan Gazzard
0256e18bbf Make sure to check for the image that comes from the SUPERVISOR_REGISTRY, rather than just any image with the same name. 2015-10-13 13:08:23 -03:00
Pagan Gazzard
d18b137030 Tag the image whether we had to pull it or not, to make sure that supervisor-base is already tagged to the one we're expecting to use. 2015-10-13 13:08:23 -03:00
Pagan Gazzard
3ef5a86344 Report the device status to the API 2015-10-13 13:08:23 -03:00
Pagan Gazzard
c436d8d5c0 Set default values for the config vars, which will be used in the case of an env var not being set, and copy all existing env vars in the case of an update. 2015-10-13 13:08:07 -03:00
Pagan Gazzard
c03a51d404 Make sure the fib_trie mount is propogated on an update. 2015-10-13 13:06:43 -03:00
Pagan Gazzard
a47022a0b4 Report the host ip address to the API on startup and every 5mins after. 2015-10-13 13:06:43 -03:00
Praneeth Bodduluri
be5a32187a User local accelerator if available 2015-10-13 13:06:43 -03:00
Praneeth Bodduluri
2f861fc4d8 Change the Dockerfile base to something that is unique - Allows to simply change a variable to point to a different base 2015-10-13 13:06:43 -03:00
Praneeth Bodduluri
451cb06faf Create a variable for BUILDSTEP_REPO 2015-10-13 13:06:43 -03:00
Praneeth Bodduluri
d5c9735525 club all removes into one line 2015-10-13 13:06:43 -03:00
Praneeth Bodduluri
f8e8acfe35 Properly remove the deployment key 2015-10-13 13:06:43 -03:00
Praneeth Bodduluri
53f3303abc Use the buildstep pushed to staging & Remove deploy_key 2015-10-13 13:06:42 -03:00
Pagan Gazzard
6fb20a5dc5 Add support for exposing multiple ports. 2015-10-13 13:06:42 -03:00
Petros Angelatos
3ae3668221 Test for both 'id' and 'Id' when docker responds with image info 2015-10-13 13:06:42 -03:00
Pagan Gazzard
58035f8b24 Switch from "id" to "Id" to match a docker change.. 2015-10-13 13:06:42 -03:00
Pagan Gazzard
597fefcb33 Fix reference error. 2015-10-13 13:06:42 -03:00
Pagan Gazzard
148d067ab9 Add a log entry that we're exiting on a supervisor update. 2015-10-13 13:06:42 -03:00
Petros Angelatos
3e1dd1f922 Log every mixpanel event and remove redundant logs 2015-10-13 13:06:42 -03:00
Petros Angelatos
d00372b5d2 Move mixpanel calls inside corresponding methods 2015-10-13 13:06:42 -03:00
Petros Angelatos
d06b5117f0 Keep method of loading JSON files consistent 2015-10-13 13:06:42 -03:00
Petros Angelatos
7b483e983d Fix bug of using mixpanel module as the mixpanel client 2015-10-13 13:06:42 -03:00
Petros Angelatos
e622491f37 Add mixpanel events to the update process 2015-10-13 13:06:42 -03:00
Petros Angelatos
1501cf3122 Integrate mixpanel 2015-10-13 13:06:42 -03:00
Petros Angelatos
0772638d92 Supply USER environment variable to containers 2015-10-13 13:06:42 -03:00
Petros Angelatos
a5fa371f22 Bind mount /lib/modules to enable module loading from inside the container 2015-10-13 13:06:42 -03:00
Page
4cfcd39524 Enable periodic update checks, and add logic to only switch to the new image if it is different. 2015-10-13 13:06:42 -03:00
Page
0d2d372cb9 Share the docker socket via config. 2015-10-13 13:06:42 -03:00
Page
959da25c9f Add all expected env vars to the new supervisor container. 2015-10-13 13:06:41 -03:00
Page
f78786b065 Rename the images more appropriately. 2015-10-13 13:06:41 -03:00
Page
599f8ae503 Remove trailing commas. 2015-10-13 13:06:41 -03:00
Page
96d1e48edd Use a promise constructor so we can make the code a bit cleaner. 2015-10-13 13:06:41 -03:00
Page
a0f9219cb3 Initial version of self-updates, adds an "/v1/update-supervisor" endpoint that can be posted to in order to trigger a supervisor update, which it then fetches as the resin/rpi-supervisor repo of the registry endpoint. 2015-10-13 13:06:41 -03:00
Petros Angelatos
d47ba654b7 Pass the device uuid as an env var 2015-10-13 13:06:41 -03:00
Petros Angelatos
04ca3b3042 Clarify publish function definition 2015-10-13 13:06:41 -03:00