Installation¶
batou is installed in each of your projects to ensure that every project is run with the correct version of batou and possibly other dependencies. Typically this means you create a new deployment repository for every project.
Starting a new batou project¶
A new project is started by placing the batou master command into the project and adding that to your repository:
$ mkdir myproject
$ cd myproject
$ git init
$ curl -sL https://raw.githubusercontent.com/flyingcircusio/batou/main/bootstrap | sh
$ git commit -m "Start a batou project."
Local¶
To run the batou command on your machine you will need to have the following dependencies installed:
Python 3.5+
OpenSSH
GPG (optional, if you want to use encrypted secrets support)
Mercurial, git, or rsync (you only need to have the one installed you actually use to transfer your repository)
Remote¶
To deploy on a remote server, that server needs to have installed:
Python 3.5+
OpenSSH
Mercurial, git or rsync (you only need to have the one installed you actually use to transfer your repository)
Supported Platforms¶
batou is being tested to run on Linux and Mac OS X.
We do not support deploying from or to non-UNIX targets.
batou is written in Python and requires to be run with Python 3.5+.
Optional requirements¶
Depending on the actual components you are going to install, you may need to have those packages installed on your remote machines:
git if using the batou.lib.git.Clone component
make if using the batou.lib.cmmi.Build component
nrpe if using the
batou.lib.nagios.NRPEHost
componentrsync if using the batou.lib.file.Directory component
subversion if using the batou.lib.svn.Checkout component
unzip and tar if using the batou.lib.archive.Extract component