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
-i
is required to keep standard input open, which is required for displaying progress bars in the terminal-t
is required to allocate a pseudo-terminal-e TERM=xterm-256color
gets rich colour output, which is necessary in particular for making the best use ofbossman status
-v ~/.ssh/id_rsa:/home/bossman/.ssh/id_rsa
mounts your SSH private key into the container; see notes below-v $PWD:/work
mounts the current working directory to/work
which is the working directory in the container-v ~/.edgerc:/home/bossman/.edgerc
mounts the Akamai credential file in the appropriate location for bossman to find themynohat/bossman
references 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:
jq
andgit
jsonnet
andjsonnetfmt
in support of the Jsonnet templating languageThe
akamai
command, along with theakamai jsonnet
plugin which makes it easier to work with Akamai configuration as Jsonnethttpie
and thehttpie-edgegrid
authentication plugin