Commit Graph

1875 Commits

Author SHA1 Message Date
Cameron Diver
6ca2701b85
Move v2 endpoints to separate module
Change-type: patch
Connects-to: #640
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-25 17:32:47 +01:00
Cameron Diver
981c7323ed
Refactor v1 api into seperate modules
Change-type: patch
Connects-to: #640
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-25 17:32:47 +01:00
resin-io-versionbot[bot]
e29f4abb9b
Auto-merge for PR #655 via VersionBot
Store port ranges as actual ranges, to reduce ambient memory usage
2018-06-25 10:08:12 +00:00
resin-io-versionbot[bot]
d1b7a4c2e4 v7.11.3 2018-06-25 09:54:05 +00:00
Cameron Diver
bb8be44429
Reuse PortRange object in PortMap class, and other cleanup
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-25 09:46:07 +01:00
Cameron Diver
4027d286d1
Add tests for new port module
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-25 09:46:07 +01:00
Cameron Diver
5b8068794e
Add fromDockerOpts and normalization to PortMap class, and use in fromContainer
This function takes the docker output representing ports, and generates
the port map values from them. This means that services can accurately
be compared and next steps can be inferred.

The normalization function ensures that regardless of source, PortMaps
that represent the same port setup will be represented correctly
internally.

Change-type: patch
Closes: #644
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-25 09:46:07 +01:00
Cameron Diver
7b77e45f69
Store port ranges as ranges, to reduce memory usage
Before this change, port ranges were iterated and stored as an object
per port mapping. Now the port ranges are stored as ranges until they
need to be converted to objects. The need to convert to objects still
exists as this is the format which the docker remote API expects, but
hopefully this should alleviate bugs like #644 by making the memory more
shorter-lived.

Also added more tests.

Change-type: patch
Closes: #644
Signed-of-by: Cameron Diver <cameron@resin.io>
2018-06-25 09:46:01 +01:00
resin-io-versionbot[bot]
8d235926df
Auto-merge for PR #682 via VersionBot
A lot more typescript conversions
2018-06-18 13:03:10 +00:00
resin-io-versionbot[bot]
90ab089ca1 v7.11.2 2018-06-18 12:46:50 +00:00
Cameron Diver
809bc87b88
Convert config module to typescript
Extract config.json handling code out to separate modules too.

Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-18 13:41:18 +01:00
Cameron Diver
d656fbb1f5
Convert fs-utils module to typescript
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-18 13:39:08 +01:00
Cameron Diver
c9904d8b5d
Convert os-release module to typescript
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-18 13:39:08 +01:00
Cameron Diver
c5acb2f66d
Convert supervisor_version module to typescript, and add typings for json
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-18 13:39:08 +01:00
Cameron Diver
1b0fd82f51
Convert db module to typescript
Also had to change config module to bind `.this` value, due to
differences in setup.

Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-18 13:39:08 +01:00
resin-io-versionbot[bot]
4efc1de789
Auto-merge for PR #680 via VersionBot
Change UX for a delta pull which fails becase delta is still processing
2018-06-14 09:22:59 +00:00
resin-io-versionbot[bot]
f5e2f56da0 v7.11.1 2018-06-14 09:08:22 +00:00
Cameron Diver
3c9e3bba42
Show better UX when a delta download fails because the image is processing
Change-type: patch
Closes: #679
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-14 09:51:42 +01:00
Cameron Diver
31c6db2ccd
Upgrade TypedError and move docker-utils error to error module
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-13 16:55:34 +01:00
resin-io-versionbot[bot]
b9a16c067b
Auto-merge for PR #669 via VersionBot
Pin a device to a commit when preload has a pinDevice field
2018-06-13 11:05:32 +00:00
resin-io-versionbot[bot]
a170d63a6a v7.11.0 2018-06-13 10:52:23 +00:00
Cameron Diver
089f31cb5d
Pin a device to a commit when preload has a pinDevice field
Change-type: minor
Closes: #668
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-11 20:27:16 +01:00
resin-io-versionbot[bot]
2a6d5557e4
Auto-merge for PR #677 via VersionBot
Fix typo in EEXIST error predicate
2018-06-11 13:08:31 +00:00
resin-io-versionbot[bot]
9c9e5e9e36 v7.10.2 2018-06-11 12:53:33 +00:00
Cameron Diver
0eb8b25b64
Fix typo in EEXIST error predicate
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-11 13:47:24 +01:00
resin-io-versionbot[bot]
dab233f04b
Auto-merge for PR #641 via VersionBot
Convert errors and iptables modules to typescript
2018-06-11 10:21:08 +00:00
resin-io-versionbot[bot]
bf58808dff v7.10.1 2018-06-11 10:06:15 +00:00
Cameron Diver
ea18462244
Move dependencies out to devDependencies 2018-06-11 10:20:17 +01:00
Cameron Diver
5622ddce94
Convert iptables module to typescript
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-11 10:20:17 +01:00
Cameron Diver
352a5684b3
Convert errors module to typescript
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-06 21:24:08 +01:00
resin-io-versionbot[bot]
1f3a9ca0f0
Auto-merge for PR #672 via VersionBot
Add support for extlinux configuration files and isolcpus config option
2018-06-06 14:12:34 +00:00
resin-io-versionbot[bot]
2f97955e6e v7.10.0 2018-06-06 13:57:47 +00:00
Cameron Diver
fa1d3da438
Use ES6 interpolation for string operations 2018-06-06 14:50:21 +01:00
Cameron Diver
51b5cff7b0
Rename ExtLinuxFile interface to match the codebase 2018-06-06 14:50:21 +01:00
Cameron Diver
1e48d02781
Move config backend code out to classes which implement a common base
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-06 14:50:21 +01:00
Cameron Diver
89627a3392
Add support for extlinux configuration files
Currently the only supported variable is RESIN_HOST_EXTLINUX_isolcpus

Change-type: minor
Closes: #671
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-05 17:00:45 +01:00
Cameron Diver
dc59c83409
Move boot config related code to config-utils module
This commit abstracts all of the boot config code out of the
device-config module, ready to extend with different config backends.

Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-05 17:00:45 +01:00
Cameron Diver
2b9d82e731
Add types for fs-utils module
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-05 14:27:27 +01:00
resin-io-versionbot[bot]
0ff4900d6d
Auto-merge for PR #667 via VersionBot
Update update-locking documentation
2018-05-29 17:41:32 +00:00
resin-io-versionbot[bot]
0cd0ba2b36 v7.9.1 2018-05-29 17:22:51 +00:00
Cameron Diver
1fbc147c6d
Update update-locking documentation
Change-type: patch
Closes: #656
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-05-29 18:18:37 +01:00
resin-io-versionbot[bot]
a01309c921
Auto-merge for PR #632 via VersionBot
Add support for Balena deltas
2018-05-23 18:40:09 +00:00
resin-io-versionbot[bot]
410d1cf294 v7.9.0 2018-05-23 18:24:23 +00:00
Akis Kesoglou
8479801674 Add support for Balena deltas
Resin’s delta server supports Balena deltas as version 3 deltas. This commit adds support for triggering delta generation for Balena deltas, and applying them locally to the device via a simple pull.

The delta version to use when updating has been abstracted away as an env var that is user-defined. The default value is still instructing use of rsync deltas (v2).

Change-Type: minor
2018-05-23 20:59:56 +03:00
Akis Kesoglou
56ecd845f7 Log delta debugging information
Change-Type: minor
2018-05-23 20:59:56 +03:00
resin-io-versionbot[bot]
53bc50d848
Auto-merge for PR #662 via VersionBot
Don't start applications at startup unless the apiEndpoint fields match the current environment
2018-05-23 13:05:04 +00:00
resin-io-versionbot[bot]
511549b259 v7.8.0 2018-05-23 12:49:44 +00:00
Cameron Diver
bc37ee56e4
Check against application source for target applications
The supervisor will now check that a source of an application matches
the current source, and only start it if so.

Change-type: patch
Closes: #658
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-05-22 12:11:57 +01:00
Cameron Diver
343989f487
Add migration for source field to be added to app table
This field will represent the apiEndpoint that the application came
from, (or an empty string for local apps). This means that when
configuring an application to work on a different environment, as long
as the endpoint is different, the supervisor can know not to start the
old application.

Change-type: minor
Connects-to: #658
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-05-22 12:11:54 +01:00
resin-io-versionbot[bot]
8018b960aa
Auto-merge for PR #665 via VersionBot
Ignore leading and trailing whitespace when parsing env vars
2018-05-22 11:07:52 +00:00