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. 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: .. code-block:: console $ mkdir myproject $ cd myproject $ git init $ curl -L https://batou.readthedocs.io/en/latest/batou -o batou $ chmod +x batou $ ./batou Preparing virtualenv in .batou ... Pre-installing batou - this can take a while... Installing Jinja2==2.7.3 Installing requests==2.6.0 Installing setuptools==18.3.1 Installing execnet==1.3.0 Installing py==1.4.26 usage: batou [-h] [-d] [-F] {deploy,remote,secrets,init,update} ... batou: error: too few arguments $ git add batou $ git commit -m "Start a batou project." Local ----- To run the master command on your machine you will need to have the following dependencies installed: * Python 2.7 * virtualenv * 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 2.7 * virtualenv * 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 2.7**. 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 :ref:`batou.lib.git.Clone ` component * `make `_ if using the :ref:`batou.lib.cmmi.Build ` component * `nrpe `_ if using the ``batou.lib.nagios.NRPEHost`` component * `rsync `_ if using the :ref:`batou.lib.file.Directory ` component * `subversion `_ if using the :ref:`batou.lib.svn.Checkout ` component * `unzip `_ and `tar `_ if using the :ref:`batou.lib.archive.Extract ` component Distribution-specific installation instructions ----------------------------------------------- .. toctree:: :maxdepth: 1 installation-deb installation-rpm