Installing Nucleator
Prerequisites
You will need to install on your local machine:
- Python 2.7x
- Python setup tools (pip)
- Python developer tools (required for Ansible pre-requisites)
Git
sudo apt-get install python2.7 python-pip python-dev git
47Lining patched version of Ansible with STS support
git clone --recursive --depth 1 -b nucleator_distribution https://github.com/47lining/ansible.git && cd ansible && sudo python setup.py install
The following python dependencies for Ansible and Nucleator will be installed automatically as part of the Ansible and Nucleator installation commands
Ansible: paramiko, Jinja2, PyYaml, httplib, boto, pycrypto
- Nucleator: awscli, boto, graffiti-monkey
boto must be version 2.34 or greater, with support for STS.
Install
You can have pip install Nucleator directly from the git repository.
This will install the nucleator command which will be used for the duration of the install, provision, configure cycle.
Initialize
This validates the installation of prerequisites, creates a nucleator configuration directory named .nucleator
in your home directory, and copies template and example configuration files into your nucleator configuration directory.
If Nucleator detects issues with the pre-requisites, it will display commands that will need to be run. When prerequisites are missing, Nucleator may show results like this:
Checking ansible Installation ERROR: Prerequisite ansible not found. Nucleator requires ansible to run. You can install it with all 47Lining pull requests via: git clone --recursive -b nucleator_distribution https://github.com/47lining/ansible.git cd ansible; sudo python setup.py install
Please follow the instructions to install dependencies if needed.
Alternate Install Method
If you are experiencing issues with pip, you can alternatively:
git clone https://github.com/47lining/nucleator-core.git cd nucleator-core python setup.py install
If your python installation requires root access, be sure to add a sudo
to the beginning of the python setup.py
... command above.
Advanced
- Virtualenv - You can run Nucleator within a python virtualenv. You should take care regarding installation of prerequisites in this case. Nucleator will need to be able to obtain its pre-requisites from within the virtualenv where it was installed. If running Nucleator from a virtual environment, both Nucleator and its prerequisites need to be installed on that virtual environment. That is, it is generally not sufficient for Nucleator prerequisites to be installed outside the python virtualenv where Nucleator is running, on the machine that is hosting the virtualenv.
Next: Creating your own Siteconfig Repository