Execute device spec operations.
The intention of this module is to provide low level access to how Resin.io device specs configuration operations are executed.
THIS MODULE IS LOW LEVEL AND IS NOT MEANT TO BE USED BY END USERS DIRECTLY.
resin-device-operations by running:
$ npm install --save resin-device-operations
operations.execute(image, operations, options) ⇒
This function returns an
EventEmitter object that emits the following events:
state (Object state): When an operation is going to be executed. The state object contains the
operationand the progress
stdout (String data): When an operation prints to stdout.
stderr (String data): When an operation prints to stderr.
burn (String state): When the
burnoperation emits progress state.
error (Error error): When an error happens.
end: When all the operations are completed successfully.
Kind: static method of
Summary: Execute a set of operations over an image
||path to image|
||array of operations|
execution = operations.execute 'foo/bar.img', [ command: 'copy' from: partition: primary: 1 path: '/bitstreams/parallella_e16_headless_gpiose_7010.bit.bin' to: partition: primary: 1 path: '/parallella.bit.bin' when: coprocessorCore: '16' processorType: 'Z7010' , command: 'copy' from: partition: primary: 1 path: '/bistreams/parallella_e16_headless_gpiose_7020.bit.bin' to: partition: primary: 1 path: '/parallella.bit.bin' when: coprocessorCore: '16' processorType: 'Z7020' ], coprocessorCore: '16' processorType: 'Z7010' execution.on('stdout', process.stdout.write) execution.on('stderr', process.stderr.write) execution.on 'state', (state) -> console.log(state.operation.command) console.log(state.percentage) execution.on 'error', (error) -> throw error execution.on 'end', -> console.log('Finished all operations')
If you're having any problem, please raise an issue on GitHub and the Resin.io team will be happy to help.
Run the test suite by doing:
$ npm test
- Issue Tracker: github.com/resin-io-modules/resin-device-operations/issues
- Source Code: github.com/resin-io-modules/resin-device-operations
Before submitting a PR, please make sure that you include tests, and that coffeelint runs without any warning:
$ gulp lint
The project is licensed under the Apache 2.0 license.