Deploy Script
Information
The latest version of our Deploy-Script is v2.1.0. It works fine with all OS images >= v2.1.0.
Features of v2.x (Stable):
- Uses SSH Public Key instead of
sshpass
for communicating with the brick - Execute scripts for backup and tmux session on the brick
- Works with Linux, macOS, Windows (Git-Bash, CMD and Subsystem)
- Link: https://se-gitlab.inf.tu-dresden.de/robolab/robolab-deploy.git
Features of v1.x (Old, works only with OS images < v2.0):
- Uses
sshpass
for communicating with the brick - Bundled with python scripts for backup and tmux session
- Works with Linux, macOS, Windows (CMD, Git-Bash; PowerShell and Subsystem not tested)
- Link: https://github.com/7HAL32/robolab-deploy.git
Please be aware, that you should not program directly on the brick itself, for example via nano
or vim
, but use our transfer script or sshfs
instead.
Updating and Usage
How to update inside a repository (e.g. robolab-deploy
)
Hopefully updates are only necessary in order to get cool new features that have been added. Well, or in case any bug was found and had to be fixed, but that happens like, you know, never. Luckily this process is fairly simple, as you make a pull in the submodule from the master and add the updated directory to a commit in the template repository.
cd path/to/robolab-template/
# Update
git pull
# Push changes to git
cd ..
git add robolab-deploy
git commit -m "Updated submodule robolab-deploy"
git push
Help
For additional information on usage, optional arguments and syntax simply call the stub deploy.py
with the -h
flag.
./deploy.py -h
usage: deploy.py [-h] [-c] [-e] [-b] [-s] [-g GET_FILE [GET_FILE ...]] [-r] [-E]
options:
-h, --help show this help message and exit
-c, --configure Create new or reset current configuration
-e, --execute-only Execute only without copying new files
-b, --backup Create a remote backup of your files on the brick
-s, --sync-log Synchronize log files from the brick
-g GET_FILE [GET_FILE ...], --get-file GET_FILE [GET_FILE ...]
Fetch files from the brick
-r, --reload Only copy files / reload, but do not join tmux session
-E, --exam Run in exam mode (clean src before executing)