Install
Requirements
Bossman requires Python >=3.8 and git >=2.3.10.
Installing Locally
python3 -m pip install bossman
Using Docker
Bossman provides public docker images which can be convenient if the above requirements are hard to meet.
docker run -it --rm \
-e TERM=xterm-256color \
-v ~/.ssh/id_rsa:/home/bossman/.ssh/id_rsa:ro \
-v $PWD:/work \
-v ~/.edgerc:/home/bossman/.edgerc ynohat/bossman version
-iis required to keep standard input open, which is required for displaying progress bars in the terminal-tis required to allocate a pseudo-terminal-e TERM=xterm-256colorgets rich colour output, which is necessary in particular for making the best use ofbossman status-v ~/.ssh/id_rsa:/home/bossman/.ssh/id_rsamounts your SSH private key into the container; see notes below-v $PWD:/workmounts the current working directory to/workwhich is the working directory in the container-v ~/.edgerc:/home/bossman/.edgercmounts the Akamai credential file in the appropriate location for bossman to find themynohat/bossmanreferences the Docker repository, however you may wish to target a specific tag.
It is recommended to create a shell alias to avoid typing the above repeatedly!
Important when using docker, the git user.name and user.email are not set globally.
Make sure you set them locally in the repository configuration:
git config --local user.name "Jane DOE"
git config --local user.email "Jane.DOE@acme.org"
The docker image also comes with a few other tools that go well with bossman, in particular:
jqandgitjsonnetandjsonnetfmtin support of the Jsonnet templating languageThe
akamaicommand, along with theakamai jsonnetplugin which makes it easier to work with Akamai configuration as Jsonnethttpieand thehttpie-edgegridauthentication plugin