Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/farmradiohangar/boxter
track and sync multiple voxbox playbacks between machines.
https://github.com/farmradiohangar/boxter
deployment voxbox
Last synced: 7 days ago
JSON representation
track and sync multiple voxbox playbacks between machines.
- Host: GitHub
- URL: https://github.com/farmradiohangar/boxter
- Owner: FarmRadioHangar
- License: mit
- Created: 2017-04-01T11:47:56.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2017-05-18T21:58:04.000Z (over 7 years ago)
- Last Synced: 2024-06-20T02:14:14.468Z (5 months ago)
- Topics: deployment, voxbox
- Language: Go
- Homepage:
- Size: 40 KB
- Stars: 0
- Watchers: 8
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# boxter
boxter is a commandline application which helps track and sync multiple voxbox playbooks between machines.
## Dependencies
- `rsync` boxter relies on rsync to update playbooks
## Commands
sync
```
NAME:
boxter sync - syncs new or specified version of playbookUSAGE:
boxter sync [command options] [arguments...]OPTIONS:
--config value path to the configuration file
--host value the name of the host machine
--boxid value unique id of the box
--remote-playbook-dir value the directory to sync playbooks to in a remote host
--ssh value ssh connection url
--rsh value passed to rsync
```The `--config` points to a simple configuration file which has the following formal
```json
{
"boxidDir": "/path/to/where/boxid/manifext/syncs",
"hostsFile": "/paths/to/hosts/ini/file",
"localPlaybookDIr": "/local/playbooks/dir",
"remotePlaybookDIr": "/path/to/remote/playbook/dir"
}
```You can also specify the version of the playbook you want to sync as the first argument to the sync command
```
boxter sync --config /path/to/config 0.1.0
```This way, `0.1.0` will take precedence over the version you specified on the ini file.
boxter uses a ini configuration file to determine which versions of the voxbox playbook should be provisioned for specific hosts.
In the sample config above `hostsFile` is the path to this configuration file.This is a sample of the ini file
```ini
[latest]
box2 =
box3 =
box4 =[0.1.0]
habarimaalum=[0.2.1]
mambojambo=
```The sections `[all], [0.1.0] etc ` defines the versions of the playbook. The keys defined under these sections represent the host names.
__IMPORTANT__ don't forget to add the `=` sign after the host name. The configuration is nini we need to add this to be compliant with the parser but it has no effect whatsoeve.
So that sample says provision voxbox version `0.1.0` for a host named `habarimaalum`