mirror of
https://github.com/balena-io/balena-cli.git
synced 2025-02-21 01:42:26 +00:00
Merge pull request #990 from resin-io/drop-sdk-preconfigured-app-patterns
Drop sdk preconfigured app patterns
This commit is contained in:
commit
2b52d5edbc
@ -44,7 +44,8 @@ exports.create =
|
||||
]
|
||||
permission: 'user'
|
||||
action: (params, options, done) ->
|
||||
resin = require('resin-sdk-preconfigured')
|
||||
resin = require('resin-sdk').fromSharedOptions()
|
||||
|
||||
patterns = require('../utils/patterns')
|
||||
|
||||
# Validate the the application name is available
|
||||
@ -57,7 +58,10 @@ exports.create =
|
||||
.then ->
|
||||
return options.type or patterns.selectDeviceType()
|
||||
.then (deviceType) ->
|
||||
return resin.models.application.create(params.name, deviceType)
|
||||
return resin.models.application.create({
|
||||
name: params.name
|
||||
deviceType
|
||||
})
|
||||
.then (application) ->
|
||||
console.info("Application created: #{application.app_name} (#{application.device_type}, id #{application.id})")
|
||||
.nodeify(done)
|
||||
@ -78,7 +82,7 @@ exports.list =
|
||||
permission: 'user'
|
||||
primary: true
|
||||
action: (params, options, done) ->
|
||||
resin = require('resin-sdk-preconfigured')
|
||||
resin = require('resin-sdk').fromSharedOptions()
|
||||
visuals = require('resin-cli-visuals')
|
||||
|
||||
resin.models.application.getAll().then (applications) ->
|
||||
@ -104,7 +108,7 @@ exports.info =
|
||||
permission: 'user'
|
||||
primary: true
|
||||
action: (params, options, done) ->
|
||||
resin = require('resin-sdk-preconfigured')
|
||||
resin = require('resin-sdk').fromSharedOptions()
|
||||
visuals = require('resin-cli-visuals')
|
||||
|
||||
resin.models.application.get(params.name).then (application) ->
|
||||
@ -129,7 +133,7 @@ exports.restart =
|
||||
'''
|
||||
permission: 'user'
|
||||
action: (params, options, done) ->
|
||||
resin = require('resin-sdk-preconfigured')
|
||||
resin = require('resin-sdk').fromSharedOptions()
|
||||
resin.models.application.restart(params.name).nodeify(done)
|
||||
|
||||
exports.remove =
|
||||
@ -149,7 +153,7 @@ exports.remove =
|
||||
options: [ commandOptions.yes ]
|
||||
permission: 'user'
|
||||
action: (params, options, done) ->
|
||||
resin = require('resin-sdk-preconfigured')
|
||||
resin = require('resin-sdk').fromSharedOptions()
|
||||
patterns = require('../utils/patterns')
|
||||
|
||||
patterns.confirm(options.yes, 'Are you sure you want to delete the application?').then ->
|
||||
|
@ -18,11 +18,13 @@ import _ = require('lodash');
|
||||
import Promise = require('bluebird');
|
||||
import form = require('resin-cli-form');
|
||||
import visuals = require('resin-cli-visuals');
|
||||
import resin = require('resin-sdk-preconfigured');
|
||||
import ResinSdk = require('resin-sdk');
|
||||
import chalk from 'chalk';
|
||||
import validation = require('./validation');
|
||||
import messages = require('./messages');
|
||||
|
||||
const resin = ResinSdk.fromSharedOptions();
|
||||
|
||||
export function authenticate(options: {}): Promise<void> {
|
||||
return form
|
||||
.run(
|
||||
@ -96,11 +98,14 @@ export function askLoginType() {
|
||||
}
|
||||
|
||||
export function selectDeviceType() {
|
||||
return resin.models.device.getSupportedDeviceTypes().then(deviceTypes => {
|
||||
return resin.models.config.getDeviceTypes().then(deviceTypes => {
|
||||
return form.ask({
|
||||
message: 'Device Type',
|
||||
type: 'list',
|
||||
choices: deviceTypes,
|
||||
choices: _.map(deviceTypes, ({ slug: value, name }) => ({
|
||||
name,
|
||||
value,
|
||||
})),
|
||||
});
|
||||
});
|
||||
}
|
||||
@ -130,7 +135,9 @@ export function confirm(
|
||||
});
|
||||
}
|
||||
|
||||
export function selectApplication(filter: (app: resin.Application) => boolean) {
|
||||
export function selectApplication(
|
||||
filter: (app: ResinSdk.Application) => boolean,
|
||||
) {
|
||||
return resin.models.application
|
||||
.hasAny()
|
||||
.then(function(hasAnyApplications) {
|
||||
@ -161,7 +168,7 @@ export function selectOrCreateApplication() {
|
||||
|
||||
return resin.models.application.getAll().then(applications => {
|
||||
const appOptions = _.map<
|
||||
resin.Application,
|
||||
ResinSdk.Application,
|
||||
{ name: string; value: string | null }
|
||||
>(applications, application => ({
|
||||
name: `${application.app_name} (${application.device_type})`,
|
||||
@ -223,7 +230,7 @@ export function awaitDevice(uuid: string) {
|
||||
export function inferOrSelectDevice(preferredUuid: string) {
|
||||
return resin.models.device
|
||||
.getAll()
|
||||
.filter<resin.Device>(device => device.is_online)
|
||||
.filter<ResinSdk.Device>(device => device.is_online)
|
||||
.then(onlineDevices => {
|
||||
if (_.isEmpty(onlineDevices)) {
|
||||
throw new Error("You don't have any devices online");
|
||||
@ -240,7 +247,10 @@ export function inferOrSelectDevice(preferredUuid: string) {
|
||||
type: 'list',
|
||||
default: defaultUuid,
|
||||
choices: _.map(onlineDevices, device => ({
|
||||
name: `${device.name || 'Untitled'} (${device.uuid.slice(0, 7)})`,
|
||||
name: `${device.device_name || 'Untitled'} (${device.uuid.slice(
|
||||
0,
|
||||
7,
|
||||
)})`,
|
||||
value: device.uuid,
|
||||
})),
|
||||
});
|
||||
|
Loading…
x
Reference in New Issue
Block a user