11.0.3 • Published 2 years ago

balena-sync v11.0.3

Weekly downloads
594
License
Apache-2.0
Repository
github
Last release
2 years ago

balena-sync

Update your application from a local source directory to a device on-the-fly.

npm version dependencies Build Status Gitter(https://badges.gitter.im/Join Chat.svg)

Role

The intention of this module is to provide a way to sync changes from a local source directory to a device.

THIS MODULE IS LOW LEVEL AND IS NOT MEANT TO BE USED BY END USERS DIRECTLY.

API

This module exports two methods:

capitano(cliTool)

This returns capitano command that can be registered by a cli tool. It is a convenience method that allows adding/modifying balena sync capitano commands/options without requiring changes in both the cli tool and the balena-sync module. The list of supported cli tools currently only includes 'balena-cli'

Example usage in balena-cli:

balenaCliSyncCmd = require('balena-sync').capitano('balena-cli')
capitano.command(balenaCliSyncCmd)

sync(target)

This method returns the proper sync() method for the specified target. Specifying different targets is necessary because the application sync process needs to adapt to the particular destination environment.

The list of currently support targets is

  • remote-balena-io-device
  • local-balena-os-device

and more will be added incrementally (e.g. remote-balena-os-device, virtual-balena-os-device etc.)

The sync() method can be used directly by modules that don't use capitano.

Support

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

Tests

Run the test suite by doing:

$ gulp 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.