Akis Kesoglou
06c450e9a5
Fix missing import in os configure
...
Fixes #1028
Change-type: patch
2018-11-20 13:14:49 +02:00
Cameron Diver
6ad4598e7e
Add case-insensitive checking for application names in balena push
...
The filter is added with an `as any`, as the typings dont yet support
using $eq and $ne.
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2018-11-19 12:49:00 +00:00
Akis Kesoglou
8291c96e69
Make specifying the version during configuration optional
...
`version` used to be optional but it seems we recently had to make it a required parameter. However it really feels redundant when all it’s used for is to determine whether the command should issue a legacy user API key or a provisioning key.
This makes version optional but tries to figure it out by itself by reading os-release from the image's boot partition. This is not foul-proof however, and while it'll work with most recent images it won't work with all and in that case it'll bail out and only then warn the user to specify it via the --version argument.
Change-type: minor
2018-11-16 19:39:43 +02:00
Akis Kesoglou
6e36cd139a
Include join
and leave
commands in API documentation
...
Change-type: patch
2018-11-16 16:02:43 +02:00
Cameron Diver
b799f3a46d
Fix the architecture string used when downloading qemu versions
...
Closes : #1019
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2018-11-12 15:57:04 +00:00
Edward Keeble
b83b7145af
Remove unnecessary parentheses
2018-11-07 20:58:27 +01:00
Edward Keeble
26c4e466bd
Store separate local qemu binaries for aarch64 and arm architectures.
...
Copy the correct binary into the local build context when executing a build.
2018-11-07 17:49:20 +01:00
Edward Keeble
42f752e400
Use existing tar-stream dependency to untar qemu archive rather than adding a new dependency.
2018-11-07 17:49:20 +01:00
Edward Keeble
0b67a40d57
Update qemu to v3, and automatically use the correct architecture (arm/aarch64)
...
When building with emulation mode enabled, this downloads the version of qemu
appropriate to the architecture of the project (either arm or aarch64).
Change-type: minor
2018-11-07 17:49:20 +01:00
Tim Perry
a809847d60
Mark api keys in the CLI as non-experimental
...
After the recent SDK updates, they should now work everywhere
Change-type: patch
2018-11-07 16:30:56 +01:00
Tim Perry
75bc937995
Stop validating device config, now that it's API-generated
...
Change-type: patch
2018-11-06 12:31:05 +01:00
Cameron Diver
0deb59b6e2
Dont ignore balena metadata directories when balena pushing
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2018-11-01 13:58:54 +00:00
Tim Perry
4ff42c11e6
Remove rename warning
2018-10-29 22:30:21 +01:00
Tim Perry
dc6cde2cf1
Change env var commands to set app-wide env vars, using the new SDK
...
Change-type: major
2018-10-29 22:29:03 +01:00
Tim Perry
c6eca9f895
Rewrite the env commands in TypeScript
2018-10-29 22:29:02 +01:00
Tim Perry
4907fccf48
Rename everything from 'resin' to 'balena'
...
Change-type: major
2018-10-29 22:29:02 +01:00
Thodoris Greasidis
b6266878d4
utils/promote: Use the application slug for filtering & presenting
...
Change-type: minor
Depends-on: https://github.com/resin-io/resin-api/pull/1570
Depends-on: https://github.com/resin-io/resin-sdk/pull/596
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-10-29 22:29:02 +01:00
Thodoris Greasidis
c2df87bcc6
Code formatting
...
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-10-29 22:29:02 +01:00
Akis Kesoglou
79f33c749b
fix deploy
2018-10-29 22:29:02 +01:00
Thodoris Greasidis
fd316167d8
Sort device types by name
...
Change-type: minor
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-10-29 22:29:02 +01:00
Thodoris Greasidis
f60d857c93
utils/promote: Do not rely on the user to always be there
...
Change-type: minor
Depends-on: https://github.com/resin-io/resin-sdk/pull/595
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-10-29 22:29:02 +01:00
Thodoris Greasidis
31628cfdcb
promote: Use ResinSdk type namespace
...
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-10-29 22:29:02 +01:00
Thodoris Greasidis
4d42f74c0c
Add support for the Opensource provisioning flow
...
Connects-to: #978
Change-type: major
Depends-on: https://github.com/resin-io/resin-sdk/pull/594
HQ: https://github.com/resin-io/balena/pull/1140
Signed-off-by: Thodoris Greasidis <thodoris@resin.io>
2018-10-29 22:29:02 +01:00
Tim Perry
13729ec4b6
Merge pull request #985 from pdcastro/resin_rename_notice
...
Add rename notice to resin-cli
2018-10-29 22:28:08 +01:00
Will Boyce
332e731023
ssh: Move from resin-sdk-preconfigured to resin-sdk
...
Change-type: patch
Signed-off-by: Will Boyce <will@resin.io>
2018-10-22 16:46:56 +01:00
Paulo Castro
f9263975bc
Add rename notice to resin-cli
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2018-10-22 14:09:07 +01:00
Thodoris Greasidis
948e6ea6f8
utils/patterns: Drop resin-sdk-preconfigured
...
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-10-20 18:35:34 +02:00
Thodoris Greasidis
ca9247fb19
actions/app: Drop resin-sdk-preconfigured
...
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-10-20 18:35:34 +02:00
Heds Simons
bf71f9ea16
Merge pull request #981 from resin-io/local-mode-v2
...
Local mode v2
2018-10-19 17:09:28 +02:00
Cameron Diver
fe751fdb23
Check supervisor version before attempting to do a local push
...
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:45:23 +02:00
Cameron Diver
947f91d570
Support multicontainer local mode in resin push
...
Change-type: minor
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:44:56 +02:00
Cameron Diver
c5d4e30e24
logger: Add logs logging function
...
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:44:53 +02:00
Cameron Diver
f560aa7523
export resolveProject function from compose module
...
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:44:49 +02:00
Cameron Diver
6bcfb2dd51
logs: Add log build function to logger
...
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:44:44 +02:00
Cameron Diver
bf062124f7
compose: Add compose typings
...
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:44:39 +02:00
Cameron Diver
221666f59a
Stop accepting resin-compose.yml as a build composition definition
...
These files are not supported by any other part of the resin
infrastructure, and it could cause confusion with it not being
supported everywhere. The idea was originally added because we
thought we might need to make extensions on docker-compose, but
that hasn't happened.
Change-type: major
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:43:49 +02:00
Cameron Diver
cd6ee4ef5e
Send push source packages as gzipped data
...
Change-type: minor
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:43:39 +02:00
Cameron Diver
872b17cf24
refactor: Allow setting of a remote build error message
...
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:43:32 +02:00
Cameron Diver
a3dd489c70
Respect ignore files when tarring sources
...
This commit brings in the ignore and dockerignore libraries, which when
provided with the patterns in the aforementioned files will ignore them.
Change-type: major
Closes: 889
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:43:22 +02:00
Alexis Svinartchouk
0c1c108b2b
Check for correct architecture when preloading, instead of correct device type
...
Preload will now propose to preload any app that matches the image
architecture.
Change-type: major
Signed-off-by: Alexis Svinartchouk <alexis@resin.io>
2018-10-19 16:43:02 +02:00
Alexis Svinartchouk
f02ed43f33
Default preload boolean parameters to false
...
Change-type: patch
Signed-off-by: Alexis Svinartchouk <alexis@resin.io>
2018-10-19 16:42:51 +02:00
Cameron Diver
63c3d7ceee
fix: Apply prettier to merged files
...
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:42:48 +02:00
Cameron Diver
ec589c2639
Correctly error out on failed remote builds
...
The push command was relying on the output from the builder to indicate
the build status, but this isn't helpful for CI. This commit makes the
remote build module respect the `isError` flag which the builder sends
in any errors. Any errors which come from the builder indicate the
release will not be deployed.
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:42:14 +02:00
Scott Lowe
64b4f67477
Update sdk references in wizzard.coffee
...
Change-type:patch
2018-10-18 18:53:03 +02:00
Scott Lowe
0d06701e2f
Update sdk references in notes.coffee
...
Change-type:patch
2018-10-18 16:22:35 +02:00
Scott Lowe
379f1cc217
Update sdk references in device.coffee
...
Change-type:patch
2018-10-18 16:08:29 +02:00
Scott Lowe
7b7ae4ff89
Update sdk sdk references in auth.coffee
...
Change-type:patch
2018-10-18 14:51:03 +02:00
Tim Perry
8df066df12
Fix formatting of preload examples
...
Based on https://github.com/resin-io/docs/pull/915 from @drjasonharrison-vp-eio
Change-type: patch
Signed-off-by: Tim Perry <tim@resin.io>
2018-10-03 15:31:24 +02:00
Pablo Carranza Velez
8298ba5765
device: When registering, print the uuid
...
This restores the behavior from before #911 ,
which is useful from some users.
Closes #966
Change-type: patch
Signed-off-by: Pablo Carranza Velez <pablocarranza@gmail.com>
2018-09-24 15:18:40 +02:00
Tim Perry
8688eb5da0
Include --emulated in the example resin build parameters
...
Change-type: patch
Signed-off-by: Tim Perry <tim@resin.io>
2018-09-19 15:34:29 +02:00
Theodor Gherzan
3b283d4a98
Device api keys are no longer used in the registration process
...
Change-type: patch
Signed-off-by: Theodor Gherzan <theodor@resin.io>
2018-09-10 12:30:51 +01:00
Pagan Gazzard
94f02f0ad8
Add warning about re-enabling automatic updates
...
Change-type: patch
Signed-off-by: Pagan Gazzard <page@resin.io>
2018-08-15 14:20:11 -07:00
Pagan Gazzard
71eca70a22
Fix errors in getRequestStream
not being propogated
...
Change-type: patch
Signed-off-by: Pagan Gazzard <page@resin.io>
2018-08-14 18:21:10 -07:00
Cameron Diver
e7c68c1a5c
Support emulated and nocache options for remote builds
...
Change-type: minor
Closes : #901
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-08-09 14:36:34 +01:00
Tim Perry
802ccc1b9a
Fix bug where the sudo helper failed in os initialize
...
Change-type: patch
Signed-off-by: Tim Perry <tim@resin.io>
2018-08-09 12:11:26 +02:00
Tim Perry
392cd8569f
Make build trigger hash examples clearer
...
Signed-off-by: Tim Perry <tim@resin.io>
2018-08-09 11:47:21 +02:00
Tim Perry
e32eda26d9
Update .resin-sync.yml docs for local push and include example env vars
...
Change-type: patch
Signed-off-by: Tim Perry <tim@resin.io>
2018-08-09 11:21:45 +02:00
Tim Perry
d8aaccf80c
Update typed-error to fix some TS complaints
...
Signed-off-by: Tim Perry <tim@resin.io>
2018-08-09 11:21:45 +02:00
Tim Perry
7c75346a1a
Update klaw
...
The changes from our fork have now been completed and released
Change-type: patch
Signed-off-by: Tim Perry <tim@resin.io>
2018-08-01 16:43:26 +02:00
Tim Perry
e350f9b335
Follow links found during builds
...
Change-Type: patch
2018-07-25 12:38:17 +02:00
Tim Perry
f4f44f978e
Update reconfix to fix volume signature errors in local configure
...
Change-Type: patch
2018-07-24 20:57:40 +02:00
Tim Perry
430d4aeaa7
Be explicit about how much initial history log tailing includes
...
Change-Type: patch
2018-07-20 16:32:31 +02:00
Akis Kesoglou
916cc36430
Lazily import resin-image-fs
...
If for whatever reason resin-image-fs is not importable — eg. if it’s built for another arch — any command that imports `helpers.ts` will just quit without any error/traceback.
2018-07-20 13:04:26 +03:00
Akis Kesoglou
27b877dd33
Forward root CA to device config if one is present
2018-07-19 22:34:31 +03:00
Akis Kesoglou
5cbe1c410f
Add join/leave commands to promote and move devices between platforms
...
Both commands work with local devices by remotely invoking the `os-config` executable via SSH. This requires an as of yet unreleased resinOS (that will most likely be v2.14) and the commands ascertain compatibility merely by looking for the `os-config` executable in the device, and bail out if it’s not present.
`join` and `leave` accept a couple of optional arguments and implement a wizard-style interface if these are not given. They allow to interactively select the device and the application to promote to. If the user has no apps, `join` will offer the user to create one. `join` will also offer the user to login or create an account if they’re not logged in already without exiting the wizard.
`resin-sync` (that's used internally to discover local devices) requires admin privileges. If no device has been specified as an argument, the commands will launch the device scanning process in a privileged subprocess via two new internal commands: `internal sudo` and `internal scanDevices`. This avoids having the user to invoke the commands with sudo and only request escalation if truly needed. This commit also removes the dependency to “president”, implementing “sudo” functionality within the CLI.
Change-Type: minor
2018-07-19 22:18:02 +03:00
Akis Kesoglou
7846af390e
Improve selectFromList
function signature to be much more reusable
2018-07-19 21:53:43 +03:00
Tim Perry
70be2ae596
Tweaks to config options handling after review
2018-07-17 15:38:38 +02:00
Tim Perry
36eb0a108e
Post-review tweaks to OS actions
2018-07-13 19:34:59 +02:00
Tim Perry
0bf6fb1739
Add --version options to os configure & config generate
...
This is used to ensure the correct type of API key is used in all
configuration.
Change-Type: patch
2018-07-13 19:34:59 +02:00
Tim Perry
892adf4c47
Update OS & config actions to the latest SDK
...
Fixes #915
Change-Type: patch
2018-07-13 19:34:59 +02:00
Tim Perry
e62e8b88c2
Simplify logs promises after review
2018-07-12 15:38:27 +02:00
Tim Perry
4388a248b9
Make sure we don't duplicate historical logs when streaming
2018-07-12 15:23:33 +02:00
Tim Perry
f9cf0aaf23
Remove a couple of artifacts of the pubnub logs implementation
2018-07-12 15:10:16 +02:00
Tim Perry
7cb27283c5
Update logs action to use the MC SDK
2018-07-12 01:03:16 +02:00
Tim Perry
52f93f8f12
Add --generate-device-api-key parameter to config generate
...
Change-Type: minor
2018-07-10 19:57:56 +02:00
Tim Perry
bf4f687a2a
Make local commands more resilient to unnamed containers
...
Change-Type: patch
2018-06-28 12:34:31 +02:00
Cameron Diver
1a48fed1f7
Support pinned release preloading
...
Change-type: minor
Closes : #886
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-13 12:29:30 +01:00
Tim Perry
398c34d842
Includes new prettier changes, and pin prettier to stop more appearing
2018-06-12 17:43:15 +02:00
Tim Perry
da8483e6a6
Add a multicontainer caveat to the env var commands
...
Change-Type: patch
2018-06-01 12:37:29 +02:00
Ariel Flesler
b7f94a222d
Update resin-compose-parse dependency version to 1.10.2
...
Change-type: minor
2018-05-30 11:57:04 -03:00
Tim Perry
865f085094
Make sure we still show the device commit, despite API changes
2018-05-24 14:43:45 +01:00
Tim Perry
28fe69fe94
Update to latest SDK in lots of easy device commands
2018-05-18 20:05:24 +02:00
Tim Perry
232cf8d426
Update SDK in resin device(s) to ensure the dashboard URL is correct
...
Fixes #768
Change-Type: patch
2018-05-18 20:00:40 +02:00
Cameron Diver
439d8d396f
Add push command which starts a build on remote resin servers
...
Change-type: minor
Connects-to: #843
2018-05-10 11:43:45 +01:00
Tim Perry
4b818ad51c
Style improvements after review
2018-05-03 18:59:28 +02:00
Tim Perry
c2518448a3
Catch require errors and provide helpful instructions
...
Change-Type: patch
2018-05-03 16:01:40 +02:00
Tim Perry
e7a8deed05
Inline the entire resin-cli-errors module
...
It's awkward that error handling requires you to go to a different
package, it makes things more complicated, and there's nowhere else that
really should be reusing this logic. Let's inline it, so we can
deprecate the module entirely.
Change-Type: patch
2018-05-03 15:15:03 +02:00
Tim Perry
2c46c59a79
Update resin-image-fs to stop non-config commands failing in node 10
...
This doesn't fix actual usage of image fs, just makes it possible to
stop commands that don't use it from failing entirely.
Connects-To: #869
Change-Type: patch
2018-04-30 11:14:39 +02:00
Tim Perry
ad2713fc00
Don't show Docker container status from devices, as it can be wrong
...
The status includes a description of how long the device has been in
this state (Up 6 weeks), which is frequently wrong as when the device
first starts up its clock isn't up to date. It's confusing and messy,
best to just remove it entirely.
Fixes #828
Change-Type: patch
2018-04-18 20:16:44 +02:00
Tim Perry
37e4ec6364
Rename expectedError to exitWithExpectedError
2018-04-17 15:18:06 +02:00
Tim Perry
6a8b947c2e
Don't report lots of user input errors
...
Change-Type: patch
2018-04-17 15:18:06 +02:00
Tim Perry
a16ac37625
Include Sentry breadcrumbs for context in error reports
...
Change-Type: patch
2018-04-17 15:18:06 +02:00
Tim Perry
834a2f1e4d
Warn user that api keys will not be shown again in future
2018-04-11 19:31:03 +02:00
Tim Perry
e0bcb5e0b9
Always call done() for api key generation, not just if we're successful
2018-04-11 19:27:58 +02:00
Tim Perry
59d4890eae
Add 'api-key generate' command
...
Change-Type: minor
2018-04-10 19:21:37 +02:00
Tim Perry
dd268993b3
Throw a clear error when logging in with an invalid token
...
Change-Type: patch
2018-04-04 15:43:34 +02:00
Tim Perry
ce64889b04
Clarify isTokenValid logic
2018-03-29 11:11:25 +02:00
Tim Perry
2db1d84d3c
Do not require a login for builds
...
Fixes : #578
Change-Type: patch
2018-03-29 11:11:25 +02:00
Tim Perry
12a1916007
Allow (experimental!) login with API keys
...
Change-Type: minor
2018-03-29 11:11:25 +02:00
Akis Kesoglou
c6c9046826
Fix crash when an app is not specified for build command
...
This is a regression introduced in #818
Change-Type: patch
2018-03-27 19:12:31 +03:00