mirror of
https://github.com/balena-io/balena-cli.git
synced 2024-12-24 07:46:39 +00:00
update resin-device-init to pull in etcher-image-write
This commit is contained in:
parent
137473353c
commit
77b30409bb
@ -74,7 +74,7 @@ exports.getManifest = function(image, deviceType) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
exports.osProgressHandler = function(step) {
|
exports.osProgressHandler = function(step) {
|
||||||
var bar, rindle, visuals;
|
var progressBars, rindle, visuals;
|
||||||
rindle = require('rindle');
|
rindle = require('rindle');
|
||||||
visuals = require('resin-cli-visuals');
|
visuals = require('resin-cli-visuals');
|
||||||
step.on('stdout', process.stdout.write.bind(process.stdout));
|
step.on('stdout', process.stdout.write.bind(process.stdout));
|
||||||
@ -85,7 +85,12 @@ exports.osProgressHandler = function(step) {
|
|||||||
}
|
}
|
||||||
return console.log(exports.stateToString(state));
|
return console.log(exports.stateToString(state));
|
||||||
});
|
});
|
||||||
bar = new visuals.Progress('Writing Device OS');
|
progressBars = {
|
||||||
step.on('burn', bar.update.bind(bar));
|
write: new visuals.Progress('Writing Device OS'),
|
||||||
|
check: new visuals.Progress('Validating Device OS')
|
||||||
|
};
|
||||||
|
step.on('burn', function(state) {
|
||||||
|
return progressBars[state.type].update(state);
|
||||||
|
});
|
||||||
return rindle.wait(step);
|
return rindle.wait(step);
|
||||||
};
|
};
|
||||||
|
@ -79,6 +79,8 @@ module.exports =
|
|||||||
# otherwise the question will not be asked because
|
# otherwise the question will not be asked because
|
||||||
# `false` is a defined value.
|
# `false` is a defined value.
|
||||||
yes: options.yes || undefined
|
yes: options.yes || undefined
|
||||||
|
|
||||||
|
# TODO: dedupe with the resin-device-operations
|
||||||
.then (answers) ->
|
.then (answers) ->
|
||||||
if answers.yes isnt true
|
if answers.yes isnt true
|
||||||
console.log(chalk.red.bold('Aborted image flash'))
|
console.log(chalk.red.bold('Aborted image flash'))
|
||||||
|
@ -245,6 +245,22 @@ exports.initialize =
|
|||||||
])
|
])
|
||||||
.then (answers) ->
|
.then (answers) ->
|
||||||
return if not answers.drive?
|
return if not answers.drive?
|
||||||
|
|
||||||
|
# TODO: resin local makes use of ejectAsync, see below
|
||||||
|
# DO we need this / should we do that here?
|
||||||
|
|
||||||
|
# getDrive = (drive) ->
|
||||||
|
# driveListAsync().then (drives) ->
|
||||||
|
# selectedDrive = _.find(drives, device: drive)
|
||||||
|
|
||||||
|
# if not selectedDrive?
|
||||||
|
# throw new Error("Drive not found: #{drive}")
|
||||||
|
|
||||||
|
# return selectedDrive
|
||||||
|
# if (os.platform() is 'win32') and selectedDrive.mountpoint?
|
||||||
|
# ejectAsync = Promise.promisify(require('removedrive').eject)
|
||||||
|
# return ejectAsync(selectedDrive.mountpoint)
|
||||||
|
|
||||||
umountAsync(answers.drive).tap ->
|
umountAsync(answers.drive).tap ->
|
||||||
console.info("You can safely remove #{answers.drive} now")
|
console.info("You can safely remove #{answers.drive} now")
|
||||||
.nodeify(done)
|
.nodeify(done)
|
||||||
|
@ -83,8 +83,11 @@ exports.osProgressHandler = (step) ->
|
|||||||
return if state.operation.command is 'burn'
|
return if state.operation.command is 'burn'
|
||||||
console.log(exports.stateToString(state))
|
console.log(exports.stateToString(state))
|
||||||
|
|
||||||
bar = new visuals.Progress('Writing Device OS')
|
progressBars =
|
||||||
|
write: new visuals.Progress('Writing Device OS')
|
||||||
|
check: new visuals.Progress('Validating Device OS')
|
||||||
|
|
||||||
step.on('burn', bar.update.bind(bar))
|
step.on 'burn', (state) ->
|
||||||
|
progressBars[state.type].update(state)
|
||||||
|
|
||||||
return rindle.wait(step)
|
return rindle.wait(step)
|
||||||
|
@ -61,7 +61,7 @@
|
|||||||
"resin-cli-visuals": "^1.3.0",
|
"resin-cli-visuals": "^1.3.0",
|
||||||
"resin-config-json": "^1.0.0",
|
"resin-config-json": "^1.0.0",
|
||||||
"resin-device-config": "^3.0.0",
|
"resin-device-config": "^3.0.0",
|
||||||
"resin-device-init": "^2.1.0",
|
"resin-device-init": "^2.2.0",
|
||||||
"resin-image-fs": "^2.1.2",
|
"resin-image-fs": "^2.1.2",
|
||||||
"resin-image-manager": "^4.1.0",
|
"resin-image-manager": "^4.1.0",
|
||||||
"resin-sdk-preconfigured": "^0.1.1",
|
"resin-sdk-preconfigured": "^0.1.1",
|
||||||
@ -75,5 +75,8 @@
|
|||||||
"unzip2": "^0.2.5",
|
"unzip2": "^0.2.5",
|
||||||
"update-notifier": "^0.6.1",
|
"update-notifier": "^0.6.1",
|
||||||
"valid-email": "^0.0.2"
|
"valid-email": "^0.0.2"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"removedrive": "^1.0.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user