Commit Graph

1178 Commits

Author SHA1 Message Date
Pagan Gazzard
1decd87c21 Update dependencies
Change-type: patch
2020-05-29 14:22:23 -04:00
Cameron Diver
1d7381327e Make the db module a singleton
We were treating the database class as a singleton, but still having to pass
around the db instance. Now we can simply require the db module and have
access to the database handle.

Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-05-29 15:02:38 +01:00
Cameron Diver
972b896c95 Check for ApiError before using it as such
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-05-26 14:43:59 +01:00
Cameron Diver
eaaa9c257e check for 409 status code, rather than string matching uuid conflicts
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-05-21 14:57:26 -04:00
Cameron Diver
87278c0d8c Use safeStateClone to avoid call-stack exceeding errors
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-05-21 16:47:09 +01:00
Miguel Casqueira
db7c27037c Improved handling of invalid appId in V2 state endpoint
Closes: #1294
Change-type: patch
Signed-off-by: Miguel Casqueira <miguel@balena.io>
2020-05-19 10:53:19 -04:00
Pagan Gazzard
fb90042c39 Switch to balenaApi for the state patch as patching cannot be cached
Change-type: patch
2020-05-18 18:17:48 +00:00
Cameron Diver
6972dcd92d Fix leftover spurious return from typescript conversion
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-05-18 15:21:33 +01:00
Pagan Gazzard
dc187f0036 Catch errors in the target state poll so polling will always continue
Change-type: patch
2020-05-18 14:14:52 +01:00
Pagan Gazzard
afae5d15d4 Avoid querying instantUpdates on every state poll
Change-type: patch
2020-05-18 13:23:44 +01:00
Pagan Gazzard
b05d597ade Fix default request options
Change-type: patch
2020-05-16 14:05:47 +01:00
Miguel Casqueira
466c7999db Remove CoffeeScript tests and all CoffeeScript tools
Closes: #1318
Change-Type: patch
Signed-off-by: Miguel Casqueira <miguel@balena.io>
2020-05-15 13:01:51 -04:00
Pagan Gazzard
758f3caa48 Update to @balena/lint 5.x
Change-type: patch
2020-05-15 12:08:42 +01:00
Cameron Diver
58c6a69e5a Add a random offset to the poll interval with each poll
Change-type: patch
Closes: #1242
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-05-15 10:34:06 +01:00
Cameron Diver
0bceffffb6 Cache service names in local log backend
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-05-14 09:41:40 +01:00
Miguel Casqueira
838c1ebba4 Correctly check if value is a valid Integer
Closes: #1180
Change-type: patch
Signed-off-by: Miguel Casqueira <miguel@balena.io>
2020-05-12 12:42:14 -04:00
Miguel Casqueira
8295858b32 Added endpoint to check if VPN is connected
Change-type: minor
Signed-off-by: Miguel Casqueira <miguel@balena.io>
2020-05-11 21:21:44 -04:00
Miguel Casqueira
402a85cf2b Decoupled checking VPN status from notify callback
Signed-off-by: Miguel Casqueira <miguel@balena.io>
2020-05-11 20:43:03 -04:00
Pagan Gazzard
913418bb37 Remove unnecessary config.json keys
Change-type: patch
2020-05-08 12:56:42 +01:00
Miguel Casqueira
60c07fc2fc Move SupervisorAPI state change logs to appropriate functions
Closes: #1277
Change-type: patch
Signed-off-by: Miguel Casqueira <miguel@balena.io>
2020-05-07 13:48:12 -04:00
Cameron Diver
8f09022d1f Don't use the openvpn alias to check VPN status
Closes: #1293
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-05-06 17:15:44 +01:00
Cameron Diver
31957566e5 Remove legacy fallback to DROP rule in iptables
This has not been necessary for a long time, and wwe can now remove it.

Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-05-05 12:15:19 +01:00
Cameron Diver
7b1f03ced5 Add an ESTABLISHED flag to API iptables rules
This allows a response to an input with dport=`supevisor api port` and
is required when the host OS is doing stateful firewalling.

This should not affect things when stateful firewalling is not in
effect, as the standard OUTPUT chain policy is ACCEPT, so we're just
being explicit about it.

Change-type: patch
Backport-to: next, current, sunset
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-05-05 12:15:12 +01:00
Miguel Casqueira
2007a98940 Added Bearer Authorization spec
Closes: #1249
Change-type: minor
Signed-off-by: Miguel Casqueira <miguel@balena.io>
2020-05-04 13:22:58 -04:00
Cameron Diver
f599799950 Remove double printing of API status error
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-04-21 09:51:56 +01:00
Cameron Diver
f791424829 ⤴️ Upgrade migrations to work with knex
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-04-15 13:37:50 +01:00
Cameron Diver
a43d71d1ac 📄 Upgrade knex to avoid CVE-2019-10757
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-04-15 13:37:50 +01:00
Cameron Diver
826eec2e4f 🚀 Update supervisor to node12
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-04-13 14:36:59 +01:00
Cameron Diver
68936a10a8 Rename systemd.ts to dbus.ts
This is because it's more general, and just provides methods which act
over dbus.

Signed-off-by: Cameron Diver <cameron@balena.io>
2020-04-13 10:32:51 +01:00
Cameron Diver
37feb7e325 Move from dbus-native to dbus
Closes: #1049
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-04-13 10:07:14 +01:00
Cameron Diver
c9c0e650cb Support matching on device type within contracts
Closes: #1191
Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-04-09 10:45:07 +01:00
Pagan Gazzard
a59af6abe8 Workaround a circular dependency
Change-type: patch
2020-04-08 17:40:39 +01:00
Pagan Gazzard
a2ec35456b Convert application-manager.coffee to javascript
Change-type: patch
2020-04-08 12:15:06 +01:00
Cameron Diver
0a429f60a5 Add newTargetState event and use it for backup loading
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-04-07 14:50:34 +01:00
Cameron Diver
dda6270219 Don't wrap UpdatesLockedErrors with a detailed error
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-04-07 13:12:24 +01:00
Cameron Diver
0950b66c52 Allow spaces in volume definitions
Closes: #1247
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-04-07 10:35:34 +01:00
Pagan Gazzard
81927d7861 Update to balena-register-device 6.0.1
Change-type: patch
2020-04-06 17:45:03 +01:00
Pagan Gazzard
98e956831a Convert test/18-compose-network.coffee to javascript
Change-type: patch
2020-04-02 14:25:24 +01:00
Pagan Gazzard
dcb01cb863 Convert test/16-ports.spec.coffee to typescript
Change-type: patch
2020-04-02 14:25:21 +01:00
Cameron Diver
3c59944ce1 Pass in deviceId when fetching device tags
Change-type: patch
Closes: #1237
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-03-31 12:44:31 +01:00
Cameron Diver
3af89cd13f Add BALENA_DEVICE_ARCH environment variable for containers
Closes: #1232
Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-03-30 16:40:02 +01:00
Cameron Diver
6b827a3f57 Don't throw an error when getting an unhealthy state
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-03-30 10:07:50 +01:00
Pagan Gazzard
15fca80d2d Convert src/device-api/common.coffee to javascript
Change-type: patch
2020-03-28 13:38:34 +00:00
Pagan Gazzard
6ab69e1a69 Switch to mz for the proxyvisor
Change-type: patch
2020-03-27 17:50:30 +00:00
Pagan Gazzard
c1e5b98ae5 Convert proxyvisor to javascript
Change-type: patch
2020-03-27 17:49:01 +00:00
Pagan Gazzard
686f72ecf7 Remove unnecessary code from application-manager
Change-type: patch
2020-03-26 23:50:53 +00:00
Pagan Gazzard
2a50a4262d Improve types used by application-manager 2020-03-26 23:40:16 +00:00
Pagan Gazzard
968e2ba0fb Switch to a named export for application-manager
Change-type: patch
2020-03-26 23:39:21 +00:00
Pagan Gazzard
56c13fb963 Convert device-api/v1 to javascript
Change-type: patch
2020-03-25 12:16:53 +00:00
Pagan Gazzard
9c3295c912 Add type checking for javascript files
Change-type: patch
2020-03-24 16:37:28 +00:00