Have ideas to improve npm?Join in the discussion! »

    resin-device-operations

    1.7.0 • Public • Published

    resin-device-operations

    npm version dependencies Build Status Build status

    Join our online chat at Gitter chat

    Execute device spec operations.

    Role

    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.

    Installation

    Install resin-device-operations by running:

    $ npm install --save resin-device-operations

    Documentation

    operations.execute(image, operations, options) ⇒ EventEmitter

    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 operation and the progress percentage (0-100).
    • stdout (String data): When an operation prints to stdout.
    • stderr (String data): When an operation prints to stderr.
    • burn (String state): When the burn operation emits progress state.
    • error (Error error): When an error happens.
    • end: When all the operations are completed successfully.

    Kind: static method of operations
    Summary: Execute a set of operations over an image
    Access: public

    Param Type Description
    image String path to image
    operations Array.<Object> array of operations
    options Object configuration options

    Example

    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')

    Support

    If you're having any problem, please raise an issue on GitHub and the Resin.io team will be happy to help.

    Tests

    Run the test suite by doing:

    $ npm test

    Contribute

    Before submitting a PR, please make sure that you include tests, and that coffeelint runs without any warning:

    $ gulp lint

    License

    The project is licensed under the Apache 2.0 license.

    Install

    npm i resin-device-operations

    DownloadsWeekly Downloads

    297

    Version

    1.7.0

    License

    Apache-2.0

    Unpacked Size

    37.4 kB

    Total Files

    14

    Last publish

    Collaborators

    • avatar