Thodoris Greasidis
eff49beb36
Wait for the device type compatibility check before showing the form
...
Also now fetches the device type from the image/API only once.
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-12-14 15:46:27 +02:00
Thodoris Greasidis
952d74207d
Check that the provided device type option is of the same arch
...
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-12-14 15:46:27 +02:00
Thodoris Greasidis
853d146457
Update the os configure examples to better explain --device-type
...
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-12-14 15:46:27 +02:00
Thodoris Greasidis
97d6a39677
Add explicit device type option to os configure
& config generate
...
Resolves : #1013
Change-type: minor
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-12-14 12:56:43 +02:00
Alexis Svinartchouk
03a3ef38e1
Fix deploy action on node 6
...
Downgrade @types/node to version 6 as we support node6
Change-type: patch
2018-12-14 11:26:59 +01:00
Thodoris Greasidis
1e5cf8655e
actions: Add resource tag operations
...
Resolves : #866
HQ: https://github.com/resin-io/hq/issues/150
HQ: https://github.com/resin-io/hq/pull/281
Change-type: minor
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-12-10 23:05:48 +02:00
Cameron Diver
a357405f3a
Make architecture checking more stringent when installing emulators
...
Also change the documentation to an armv7hf.
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2018-12-03 13:10:54 +00:00
Thodoris Greasidis
b6c041c9b5
actions/os-initialize: Convert Promise to a Bluebird one
...
Resolves : #1038
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-11-27 10:34:21 +02:00
Thodoris Greasidis
93a5380c09
actions/os: Fix os configure using bluebird methods on plain promise
...
Resolves : #1033
Connects-to: #1007
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-11-26 10:00:49 +02:00
Thodoris Greasidis
5abd240d50
actions/config: Fix examples to include --version as required
...
Connects-to: #1007
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-11-23 16:01:01 +02:00
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
Alexis Svinartchouk
ca1ac2bb83
Prefix all pine options with '$' in preload to avoid pine warnings.
...
Change-Type: patch
2018-03-23 15:20:18 +00:00
Akis Kesoglou
4f167cb836
Address review feedback
2018-03-22 13:26:47 +02:00
Akis Kesoglou
9455d438e2
Formatting fixes
2018-03-22 13:26:47 +02:00
Akis Kesoglou
a356ecf9b6
Remove unused code
2018-03-22 13:26:47 +02:00
Akis Kesoglou
066ac591ac
Warn early if deploying a multicontainer project to an incompatible app
...
Change-Type: patch
2018-03-22 13:26:47 +02:00
Akis Kesoglou
62f006b89a
Add legacy deploy method back
...
This mostly reverts the removal of the legacy deploy code that pushed image tars via the builder. It’s needed for users to avoid having to switch between CLI versions in order to push to legacy apps as well.
Note: this pins resin-sdk to 9.0.0-beta14 as I couldn’t get it to install otherwise — npm would always install 9.0.0-beta9 instead.
Change-Type: minor
2018-03-22 13:26:47 +02:00
Akis Kesoglou
242c3731ee
Remove redundant import
2018-03-19 20:52:51 +02:00
Akis Kesoglou
5f7eee8eac
Make sure image name is all lowercase
...
Change-Type: patch
2018-03-19 20:52:51 +02:00
Akis Kesoglou
1833f6ff0a
Improve handling of build log output
...
This makes sure build logs don’t leak escape sequences and new lines and they don’t break the output. Also improved “inline” logs by normalising the stream before passing it to “transpose build stream”.
Fixes : #808
Change-Type: patch
2018-03-19 20:52:51 +02:00
Akis Kesoglou
fe01ead023
Fix getting window size when there’s no TTY attached
...
Change-Type: patch
2018-03-15 10:30:54 +02:00
Akis Kesoglou
14a3f51b73
Add docker-compose-aware builds and deployments
...
Legacy behaviour is mostly retained. The most notable change in behaviour is that invoking `resin deploy` without options is now allowed (see help string how it behaves).
In this commit there are also the following notable changes:
- Deploy/Build are promoted to primary commands
- Extracts QEMU-related code to a new file
- Adds a utility file to retrieve the CLI version and its parts
- Adds a helper that can be used to manipulate display on capable clients
- Declares several new dependencies. Most are already indirectly installed via some dependency
Change-Type: minor
2018-03-07 14:48:05 +00:00
Akis Kesoglou
96116aeaec
Fix invoking undefined method
...
Have no idea how this used to work.
2018-03-07 14:47:16 +00:00
Akis Kesoglou
299bc0db13
Update docker-toolbelt
...
New version is 3.1.0.
The updated version is not backwards compatible as it removes all *Async methods that are in wide use in the CLI. The workaround for now is to manually promisify the client and replace all `new Docker()` calls with a shared function that returns a promisified client.
2018-03-07 14:47:15 +00:00
Tim Perry
079ce552e3
*BREAKING*: Remove support for plugins entirely
...
There are very few plugins in real-world use, we're not actively working
on this at all, and the current approach won't work once we move to
standalone node-less binary installation anyway.
Change-Type: major
2018-03-07 14:46:35 +00:00
Alexis Svinartchouk
163684e3a9
Update dashboard login to use the multicontainer SDK
...
Change-Type: patch
2018-03-07 14:46:35 +00:00
Alexis Svinartchouk
f698f561c9
Multicontainer preload: Update resin-preload to 6.0.0-beta4
...
Change-Type: minor
2018-03-07 14:46:35 +00:00
Alexis Svinartchouk
cb207f18a5
Update the keys action to use the multicontainer SDK
...
Change-Type: patch
2018-03-07 14:46:34 +00:00
Alexis Svinartchouk
76a5cdc977
Require multicontainer SDK
...
* require('resin-sdk') => multicontainer SDK
* require('resin-sdk-preconfigured') => 6.15.0 SDK
* all 'resin-sdk' requires replaced with 'resin-sdk-preconfigured'
* resin-sdk-preconfigured TS typings are copy pasted from the current resin-sdk master
The idea is to progressively replace all 'resin-sdk-preconfigured'
requires with 'resin-sdk' (multicontainer sdk) and eventually remove
resin-sdk-preconfigured from package.json.
Change-Type: patch
2018-03-07 14:46:31 +00:00
Tim Perry
c12360daa8
Tweak TS & add missing deps that may cause build failures in some envs
...
Connects-To: #765
Change-Type: patch
2018-02-20 20:26:18 +01:00
Tim Perry
d8aabfd448
Ensure login does not wait for the browser process to close
...
Unclear why, but for some reason this only actually blocked on the
browser on OSX.
Connects-To: #791
Change-Type: patch
2018-02-16 17:28:19 +01:00
Tim Perry
1ef0a1028f
Add support for Balena in local ssh
...
Change-Type: minor
2018-02-06 12:05:28 +01:00
Thodoris Greasidis
d1c773360f
Fix uuid params being parsed a numbers
...
Connects-To: #489
Change-Type: patch
2018-02-01 17:48:01 +02:00
MoranF
33fd70291a
Add 'or mounted resinOS image'
...
Connects-To: #764
Change-Type: patch
2018-01-30 17:30:18 +01:00
Tim Perry
8c29bba108
Don't use the deprecated 'os configure' format in internal calls
...
Change-Type: patch
2018-01-16 17:54:46 +01:00
Tim Perry
0ba96adbbc
Fix breakage in deploy command from recent TS conversion
...
Change-Type: patch
2018-01-11 10:33:08 +01:00
Tim Perry
83a76f7d6f
Start using Prettier
...
Change-Type: patch
2018-01-10 09:23:00 +01:00
Tim Perry
612012aff8
Lots of small TypeScript tweaks & clarifications from review
2018-01-09 17:14:49 +01:00
Tim Perry
6daed83d88
Lint TypeScript and CoffeeScript with resin-lint
...
Change-Type: patch
2018-01-09 17:14:49 +01:00
Tim Perry
f25442c036
Move documentation generation to TypeScript
...
Change-Type: patch
2018-01-09 17:14:49 +01:00
Tim Perry
ffffd447f2
Convert most of utils to TypeScript
...
Change-Type: patch
2018-01-09 17:14:48 +01:00
Tim Perry
4b511c47f0
Start on some easy TS conversion
2018-01-09 17:14:48 +01:00
Andrew Shirley
ce5fd53822
convert windows paths to posix when passing to tar
...
Due to https://github.com/mafintosh/tar-stream/issues/3 , the tar module
needs posix style paths but system-specific paths are being supplied
Change-Type: patch
2018-01-08 22:50:11 +00:00
Tim Perry
34f24fe331
Fix deprecation warning for os configure, when passing a bare UUID
...
Change-Type: patch
2017-12-22 16:07:19 +01:00
Andreas Fitzek
0653769156
fixed example
2017-12-18 17:03:16 +01:00
Andreas Fitzek
3ed319872a
refactored
2017-12-18 17:03:16 +01:00
Andreas Fitzek
ee124671d8
mention Resin OS version requirement
2017-12-18 17:03:16 +01:00
Andreas Fitzek
1b4dabd37c
Add ssh option for direct host OS access
...
Use the `--host` (short `-H`) option in the ssh command to access
the host OS of the device.
Direct host OS is enabled for devices with Resin OS >= 2.7.5.
Change-Type: minor
Connects-To: #736
Signed-off-by: Andreas Fitzek <andreas@resin.io>
2017-12-18 17:03:16 +01:00
Tim Perry
dba8db19cb
Move from open to opn
...
Change-Type: patch
2017-12-18 14:55:07 +01:00
Tim Perry
1c7a0ba4e1
Ensure logout works even with invalid credentials, or if not logged in
...
Before this point, if you had an invalid token, an expired token, or a
token for a different site, you couldn't log out to clear it properly.
Not a big deal, but awkward and messy, and easily fixed.
Change-Type: patch
2017-12-14 15:34:36 +01:00
Tim Perry
bd6cb04a2b
Replace underscore.string usage with lodash
2017-11-27 12:03:04 +02:00
Tim Perry
001c8f9601
Inline the entire resin-cli-auth module
...
This is part of a general push to demodularize any code that isn't
realistically reusable outside resin-cli, to make the codebase easier to
manage and understand. Once this is done, we'll deprecate the original
module itself.
Change-Type: patch
2017-11-27 12:02:57 +02:00
Tim Perry
eb68bb1a1a
Set up TypeScript compilation, and make a small start on converting the CLI
...
Change-Type: patch
2017-11-23 19:28:15 +02:00
Tim Perry
49d78c56fa
Print a deprecation message if you use the old os configure format
2017-11-16 19:51:34 +01:00
Tim Perry
e38a0c0047
Allow os configure
to configure for an app, not just a specific device
...
This moves to --app and --uuid options, and deprecates the previous
format, but doesn't immediately remove it so this is not a breaking
change.
Connects-To: #691
Change-Type: minor
2017-11-16 19:51:34 +01:00
Tim Perry
eef0d9cdbe
Print help even for expected errors
...
Change-Type: patch
2017-11-16 19:51:17 +01:00
Tim Perry
08c40195e5
Make sure everything uses the same shared deviceApiKey option
2017-11-16 19:09:20 +01:00
Tim Perry
87f46cb957
Allow non-interactice config generate for simple network settings
...
Fixes #695
Fixes #410
Change-Type: minor
2017-11-16 15:04:58 +01:00
Tim Perry
f7075d7db9
Fix issue where network settings were not used by config generate
...
Change-Type: patch
2017-11-16 15:03:49 +01:00
Tim Perry
1fafe64579
Remove resin promote command (which has never worked) to wait for larger resinOS provisioning updates
...
This would be a major change if the command was ever successful, but it
appears it hasn't ever worked for any available published version of
ResinOS, so it's not possible that there are users relying on it.
Change-Type: patch
2017-11-15 14:46:22 +01:00
Tim Perry
890a02e2c8
Fix 'cannot read property R_OK of undefined' error in Node >=6 <6.3
...
Change-Type: patch
2017-11-11 12:29:49 +01:00
Tim Perry
a2635f47ee
Avoid AmbiguousApplication errors in device register when an id is used
...
Change-Type: patch
Connects-To: #665
2017-11-09 16:03:06 +01:00
Alexis Svinartchouk
eef192ff68
Allow preloading jetson-tx2 images, improve flasher images detection and remove the --dont-detect-flasher-type-images option.
...
* update resin-preload to 5.0.0
Connects-To: #705
Change-Type: minor
2017-10-27 12:14:27 +02:00
Alexis Svinartchouk
3bca36c277
Allow specifying --commit=latest
for resin preload
...
Connects-To: #700
Depends-On: https://github.com/resin-io/resin-preload/pull/137
Change-Type: patch
2017-10-25 12:09:08 +02:00
Alexis Svinartchouk
19ce4c4cdb
Respect the -dont-check-device-type option, fix error message
...
Connects-To: #696
Change-Type: patch
2017-10-24 16:45:36 +02:00
Tim Perry
2d43e47610
Add device api keys warning on device register and os configure
2017-10-18 13:43:16 +02:00
Tim Perry
a8f1d16b26
Make resin os configure
safe with device keys for all ResinOS versions
2017-10-18 13:43:16 +02:00
Tim Perry
8e95757f47
Make resin config generate
safe for all ResinOS versions
2017-10-18 13:43:16 +02:00
Pagan Gazzard
3fd4f328ab
Added a device api key parameter to the os configure
command.
...
Change-Type: minor
2017-10-18 13:43:16 +02:00
Pagan Gazzard
97eaf174ec
Added a --device-api-key
option to the config generate
command.
...
Change-Type: minor
2017-10-18 13:43:16 +02:00
Pagan Gazzard
2ef56a9a3f
Added a --device-api-key
option to the device register
command.
...
Change-Type: minor
2017-10-18 13:43:16 +02:00
Tim Perry
0e4c6c459c
Fix issue where os download
would always download prod images
...
This also adds support for submodules using resin-sdk shared options
rather than resin-sdk-preconfigured.
Change-Type: patch
Connects-To: #688
2017-10-17 21:20:35 +02:00
Alexis Svinartchouk
119fa78927
Update resin-preload to 4.0.2 to support preloading Edison images
...
Change-Type: patch
2017-10-16 19:27:12 +02:00
Tim Perry
82888de036
Document how to resin deploy
to an app as a collaborator
...
Change-Type: patch
2017-10-13 16:13:46 +02:00
Tim Perry
3df7bfe700
Ensure hostname truly is optional when configuring device images
...
Change-Type: patch
2017-10-09 12:03:31 +02:00
Alexis Svinartchouk
10976bed43
Fix resin preload --splash-image argument handling
...
Connects-To: #677
Change-Type: patch
2017-10-06 11:16:06 +02:00
Tim Perry
eb729d149e
Ensure analytics failures (e.g. from broken tokens) at startup don't break commands
...
Change-Type: patch
2017-10-05 19:03:01 +02:00
Tim Perry
492e35e5c2
Fix lodash bugs in device move & quickstart
...
Change-Type: patch
2017-08-31 20:22:36 +08:00
Tim Perry
2bbd45e867
Use DOCKER_HOST from env if possible, and no connection options are available
...
Connects-to: #625
Change-Type: patch
2017-08-31 15:18:32 +08:00
Alexis Svinartchouk
223432406d
Add a --dont-check-device-type option for resin preload
...
Connects-To: #646
Change-Type: minor
2017-08-25 12:27:38 +02:00
Alexis Svinartchouk
e0d661a1da
Remove resin-preload build filtering workaround.
...
Connects to #640
Change-Type: patch
2017-08-24 12:39:17 +02:00
Alexis Svinartchouk
b07a394592
Add progress bars and spinners for resin preload.
...
Connects-To: #628
Change-Type: minor
2017-08-22 18:42:20 +02:00
Alexis Svinartchouk
c6c2f0bedc
Don't try preloading the same build twice in an image.
...
Connects to #626
Change-Type: patch
2017-08-21 19:24:30 +02:00
Alexis Svinartchouk
115e46573b
Use _.fromPairs instead of _.object which was removed in lodash 4.0.0
...
Connects-To: #636
Change-Type: patch
2017-08-21 10:01:25 +02:00
Alexis Svinartchouk
999f269e36
Fix resin preload when a commit is provided.
...
Connects-To #629
Change-Type: patch
2017-08-18 09:37:37 +02:00
Tim Perry
e204707ee0
Upgrade to lodash v4
2017-08-16 18:58:46 +02:00
Cameron Diver
dc1b3c3239
Allow the looking up of applications with the owner
...
change-type: minor
Connects-to: #594
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-08-14 17:00:33 +01:00
Alexis Svinartchouk
22b3c39b2b
Integrate resin-preload
...
* split docker connection options from lib.utils.docker.appendOptions
Connects to #609
Connects to https://github.com/resin-io/resin-preload/pull/81
Change-Type: minor
2017-08-11 15:43:07 +02:00
Tim Perry
b7e2c2571f
Remove inconsistent (and now unneccesary) 'Tagging image as' message
...
Change-Type: patch
2017-08-11 13:30:44 +02:00
Tim Perry
5daa682183
Provide a helpful warning when Docker is not installed
...
Change-Type: patch
2017-08-10 21:40:05 +02:00
Tim Perry
9e6dd57a5c
Help users using old node versions to upgrade
2017-08-09 15:20:50 +02:00
Eugene Mirotin
22e0b4b9dc
Support the new OS with resin-sample.ignore connection file
2017-07-27 14:01:49 +03:00
Tim Perry
1f0bec39d9
Hide the intro quickstart message for now (until it gets renovated)
2017-07-18 16:57:16 +02:00
Kostas Lekkas
91b3442fc9
Do not explicitly disable ControlMaster option for device SSH connections
...
The backend server that handles `resin ssh` now supports it.
Also removed the option from local ssh connections to devices, where it
basically has no effect (dropbear on devices supports it)
change-type: minor
fixes #568
2017-06-29 11:53:31 +03:00
Tim Perry
e2a165ce80
Show a correct [Info] tag with the deploying progress bar
2017-06-28 18:57:49 +02:00
Tim Perry
ce5685551d
Remove unused function
2017-06-28 18:52:44 +02:00
Tim Perry
15e677e9f1
Refactor stream logger to keep streams as state
2017-06-28 18:52:40 +02:00
Tim Perry
5ccde3db8e
Fix issue when using resin deploy with non-standard stdin
...
This fixes issues when piping `resin deploy` to a non-TTY, and should
solve issues on Windows too.
Connects-To: #539
2017-06-28 18:40:00 +02:00
Jacinto Arias
bea7b2035a
Added --squash option to resin build command
2017-06-26 13:33:50 +02:00
Tim Perry
6182e7c98a
Make Node warning a multi-line string
2017-06-26 13:24:54 +02:00
Tim Perry
410390a9ae
Remove Buffer polyfill, require Node v6+, and print warnings in older versions
2017-06-22 18:59:50 +02:00
Tim Perry
0c6545218a
Merge pull request #574 from resin-io/565-log-node-version
...
Include node version in sentry logs
2017-06-22 18:17:33 +02:00
Tim Perry
18533de3da
Include node version in sentry logs
2017-06-22 14:48:46 +02:00
Tim Perry
2875bd672e
Add a polyfill to fix local configure
in older (<6) Node versions
2017-06-22 13:38:38 +02:00
Cameron Diver
5000febf72
Read ca files and convert to string before passing to the docker daemon
...
Before this commit, the docker daemon would recieve the filename of the
.pem files, which would be interpreted as the body and would fail. This
commit ensures that the actual body of the pem files are sent to the
daemon.
Change-type: patch
Connects-to: #562
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-06-21 11:11:24 +01:00
Tim Perry
8efaec63ff
Merge pull request #559 from resin-io/558-absolute-qemu
...
Make emulated builds reliable in the presence for WORKDIR comands
2017-06-15 19:41:52 +02:00
Tim Perry
b756f2a597
Make emulated builds reliable in the presence for WORKDIR comands
...
Connects-To: #558
Change-Type: patch
2017-06-15 16:36:44 +02:00
Eugene Mirotin
8bdacbb11e
dedupe the shared options
2017-06-15 16:43:12 +03:00
Eugene Mirotin
d2a9aee685
improve available drives listing
...
make the config a path to the file and not the stringified JSON
2017-06-15 16:43:02 +03:00
Eugene Mirotin
77a4c6fdc2
move available-drives command to util
2017-06-15 16:43:02 +03:00
Eugene Mirotin
97480d3aa4
Improve the supported device types listing
2017-06-15 16:39:55 +03:00
Eugene Mirotin
2e7e033bb9
allow prebuilding the device config and reusing it
2017-06-15 16:39:55 +03:00
Eugene Mirotin
ad940824a6
list detected drives with resin os available-drives
2017-06-15 16:39:55 +03:00
Eugene Mirotin
ed83514a2f
allow passing --drive to resin device init
2017-06-15 16:39:55 +03:00
Eugene Mirotin
8d91a5732a
tolerate the --yes param to device init
2017-06-15 16:39:55 +03:00
Eugene Mirotin
1cfe64e4a7
choose version during device init, and list versions with resin os versions
2017-06-15 16:39:55 +03:00
Eugene Mirotin
24388811ad
remove the user requirement for the supported devices list
2017-06-15 16:38:55 +03:00
Tim Perry
c8d51d92e7
Show a clear message immediately as the deploy starts, if we're deploying an image.
...
Change-Type: patch
2017-06-15 12:36:40 +02:00
Tim Perry
5a28d4c92f
Make cleanup reliable if a local build fails
2017-06-15 12:36:40 +02:00
Tim Perry
66a4faeea5
Small improvement to resin deploy docs
...
Change-Type: patch
2017-06-15 12:36:40 +02:00
Tim Perry
a29b40eefa
Move promise.spread to promise.join for clarity (from review)
2017-06-15 12:34:26 +02:00
Tim Perry
cf7bf2cb7d
Fix the gzip level for image uploads to a good perf/size balance
2017-06-15 12:01:22 +02:00
Tim Perry
df3c5ca07f
Gzip while streaming, rather than gzipping the buffer up front
...
Connects-To: #549
2017-06-15 12:01:22 +02:00
Tim Perry
e584dc43f7
Gzip images when uploading in resin deploy
...
Change-Type: minor
Connects-To: #549
2017-06-15 12:01:22 +02:00
Tim Perry
90a5b15dbc
Refactor docker stream buffering before start gzipping
2017-06-15 12:01:22 +02:00
Tim Perry
37ec11bf25
Ensure emulated builds use the correct relative path to qemu
...
Change-Type: patch
Connects-To: #553
2017-06-14 20:50:24 +02:00
Cameron Diver
f2862f7fe2
Add emulated build option to resin build
...
This commit adds the ability to run a Docker build for an architecture
which is not the host architecture, using qemu-linux-user. Currently
this is only supported for linux.
Added:
* Installation of qemu which supports propagated execve flags
* Copying of qemu binary into the build context
* Transposing the given Dockerfile to use the qemu binary
* Intercepting of the build stream, so the output looks *almost* exactly
the same.
Change-type: minor
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-06-14 12:06:03 +01:00
Gergely Imreh
974be5cc13
resin build: fix mismatch in command line argument signature
...
The command line arg was taking `devicetype`, but the rest of the code
uses `deviceType`. Thus it was impossible to specify a device type
in practice to build a `Dockerfile.template`.
Change-type: patch
Signed-off-by: Gergely Imreh <imrehg@gmail.com>
2017-05-30 10:34:32 +01:00
Cameron Diver
abc183a729
Change update check interval to once a day
...
This gives the user enough notice to stay well updated, but won't spam
them if they're using resin-cli frequently.
Connects-to: #485
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-05-23 17:29:23 -07:00
Tim Perry
78ab47b584
Fix breaking bug in resin local ssh
2017-05-22 20:49:34 +02:00
Eugene Mirotin
2d729a82a0
fix valid-email path
2017-05-20 00:19:31 +03:00
Eugene Mirotin
4b5240d8cd
check for proxytunnel presence
2017-05-19 02:10:14 +03:00
Eugene Mirotin
6ae59654a0
fix
2017-05-19 01:44:30 +03:00
Eugene Mirotin
b88f7a993c
escape params
2017-05-19 01:25:01 +03:00
Eugene Mirotin
880fb43fd9
some fixes
2017-05-18 15:12:52 +03:00
Eugene Mirotin
bc79832e1d
resin ssh proxy support
2017-05-12 18:09:43 +03:00
Tim Perry
1d06bc1b4f
Merge pull request #524 from resin-io/520-include-command-line
...
Include full command line arguments in Sentry errors
2017-05-12 13:27:53 +02:00
Tim Perry
88d5ec0c94
Merge pull request #525 from resin-io/508-fix-docs
...
Get docs and the code generating them back in sync
2017-05-12 13:27:35 +02:00
Tim Perry
a5b535753f
Include the username used in Sentry errors, to help us debug them
2017-05-12 12:02:26 +02:00
Tim Perry
6e5e4bd8a6
Get docs and the code generating them back in sync (from #515 , #508 )
2017-05-12 12:01:37 +02:00
Tim Perry
6e034acf23
Include full command line arguments in Sentry errors, to help us debug them
2017-05-12 11:48:43 +02:00
Akis Kesoglou
654ec75598
Renamed build arg option to —buildArg/-B
2017-05-11 14:20:24 +03:00
Akis Kesoglou
66876a2c85
Add ability to specify built-time variables for local build
...
Change-Type: patch
2017-05-11 14:14:43 +03:00
Akis Kesoglou
fc5640c79d
Draw a progress bar for upload progress
...
Change-Type: patch
2017-05-10 22:28:51 +03:00
Kostas Lekkas
c12b59b978
Show device dashboard url in 'resin device' output
...
change-type: minor
2017-05-08 13:51:06 +03:00
Cameron Diver
404348f92e
Highlight cache usage in resin build
...
This commit will highlight the usage of the cache when doing a docker
build via `resin build`, which not only helps the user understand what
the build is doing, but also achieves more parity with the cloud
builder.
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-05-04 14:09:23 +01:00
Cameron Diver
d249ac168a
Fix the not-enough-unicorns bug
...
Add successful build indicator in the form of a unicorn.
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-05-04 13:18:25 +01:00
Cameron Diver
3ff5880ae3
Allow resin-cli deploy to also upload build logs if present
...
If build is ran through `resin deploy`, then logs will be stored and
uploaded to the database, where the dashboard can display them
Change-type: minor
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-05-04 13:11:50 +01:00
Eugene Mirotin
8866f47805
proxy support
2017-05-01 14:00:50 +03:00
Eugene Mirotin
3df30c8b5a
fix ssh proxy URL retrieval
2017-04-27 16:20:32 +03:00
Cameron Diver
39b171fd2a
Add documentation for new resin build and resin deploy commands
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-04-26 13:38:35 +01:00