bandicoot provides a simple UI for orchestrating changes or applying configurations in a datacenter and cloud environment. bandicoot provides a layer on top of Ansible that allows you to easily wrap up automated tasks and provide a simple way to execute them. The role based access control allows you to implement seperations of duties and limit specific actions to be executed by specific roles. The logging feature allows you to track the history of changes in the environment.
Install bandicoot client only. This is if you already have a dedicated bandicoot api server.
$ pip install bandicoots
Install bandicoot api server.
$ pip install bandicoots
$ sudo bandicoot-api-install
Install and Starting the bandicoot api server using Docker.
$ docker pull outbit/bandicoot
$ docker run -d -p 8088:8088 -p 80:80 -p 443:443 outbit/bandicoot
Start the API server on your localhost or on a dedicated IP. If your using the Docker container then make sure you have pulled the image and have run the image using the above example.
$ bandicoot-api -s 127.0.0.1 --insecure
Login to the bandicoot shell. On the first login you will be prompted to change the default password. If your using the Docker container you can remove the "--insecure" flag since by default its configured to use ssl. If you are using valid ssl certificates and not self signed certificates you can also remove the “-–no-check-certificates” flag.
$ bandicoot -u superadmin -s 127.0.0.1 --insecure --no-check-certificates
Password: superadmin
Changing Password From Default
Enter New Password: **********
Enter New Password Again: **********
Example of adding a "hello world" action that prints hello world.
bandicoot> help
actions [list|del|edit|add]
users [list|del|edit|add]
roles [list|del|edit|add]
secrets [list|del|edit|add|encryptpw]
plugins [list]
help [*]
jobs [list|status|kill]
schedules [add|edit|list|del]
inventory [list|del]
ping
logs
help
stats
exit
bandicoot> actions add name=helloworld category=/hello action=world plugin=command desc="print hello world" command_run="echo 'hello world'"
bandicoot> help
actions [list|del|edit|add]
users [list|del|edit|add]
roles [list|del|edit|add]
secrets [list|del|edit|add|encryptpw]
plugins [list]
help [*]
jobs [list|status|kill]
schedules [add|edit|list|del]
inventory [list|del]
ping
logs
help
stats
hello [world]
exit
bandicoot> hello world
hello world
return code: 0
bandicoot> exit
bandicoot is released under the MIT License.
David Whiteside (david@davidwhiteside.com)