Tony Mack | d02c20a | 2015-10-31 19:12:22 +0000 | [diff] [blame] | 1 | FROM xos |
| 2 | |
| 3 | # Install custom Ansible |
| 4 | RUN DEBIAN_FRONTEND=noninteractive apt-get update && apt-get install -y \ |
| 5 | openssh-client \ |
| 6 | python-crypto \ |
| 7 | python-jinja2 \ |
| 8 | python-paramiko |
| 9 | python-yaml \ |
| 10 | python-httplib2 \ |
| 11 | supervisor |
| 12 | |
| 13 | RUN \ |
| 14 | git clone -b release1.8.2 git://github.com/ansible/ansible.git /opt/ansible && \ |
| 15 | git clone -b release1.8.2 git://github.com/ansible/ansible-modules-extras.git /opt/ansible/lib/ansible/modules/extras && \ |
| 16 | git clone -b release1.8.2 git://github.com/ansible/ansible-modules-extras.git /opt/ansible/v2/ansible/modules/extras && \ |
| 17 | git clone git://github.com/sb98052/ansible-modules-core.git /opt/ansible/lib/ansible/modules/core && \ |
| 18 | git clone git://github.com/sb98052/ansible-modules-core.git /opt/ansible/v2/ansible/modules/core && \ |
| 19 | # git clone uses cached copy, doesn't pick up latest |
| 20 | git -C /opt/ansible pull && \ |
| 21 | git -C /opt/ansible/lib/ansible/modules/core pull && \ |
| 22 | git -C /opt/ansible/v2/ansible/modules/core pull |
| 23 | |
| 24 | RUN cp /tmp/xos/containers/observer/conf/ansible-hosts /etc/ansible/hosts |
| 25 | |
| 26 | # For Observer |
| 27 | RUN mkdir -p /usr/local/share /bin |
| 28 | |
| 29 | ADD http://phantomjs.googlecode.com/files/phantomjs-1.7.0-linux-x86_64.tar.bz2 /usr/local/share/ |
| 30 | |
| 31 | RUN git clone git://git.planet-lab.org/fofum.git /tmp/fofum && \ |
| 32 | cd /tmp/fofum; python setup.py install && \ |
| 33 | rm -rf /tmp/fofum && \ |
| 34 | tar jxvf /usr/local/share/phantomjs-1.7.0-linux-x86_64.tar.bz2 -C /usr/local/share/ && \ |
| 35 | rm -f /usr/local/share/phantomjs-1.7.0-linux-x86_64.tar.bz2 && \ |
| 36 | ln -s /usr/local/share/phantomjs-1.7.0-linux-x86_64 /usr/local/share/phantomjs && \ |
| 37 | ln -s /usr/local/share/phantomjs/bin/phantomjs /bin/phantomjs |
| 38 | |
| 39 | |
| 40 | # Supervisor |
| 41 | RUN cp /tmp/xos/containers/observer/conf/observer.conf /etc/supervisor/conf.d/ |
| 42 | |
| 43 | CMD /usr/bin/supervisord -c /etc/supervisor/conf.d/observer.conf |