diff --git a/roles/common/tasks/main.yml b/roles/common/tasks/main.yml index 6a0e210..2895c62 100644 --- a/roles/common/tasks/main.yml +++ b/roles/common/tasks/main.yml @@ -67,12 +67,14 @@ get_url: url: "https://github.com/docker/compose/releases/download/{{docker_compose_version_to_install}}/docker-compose-{{ ansible_system }}-{{ ansible_userspace_architecture }}" dest: /usr/local/bin/docker-compose + validate_certs: false mode: 755 group: docker - name: Set timezone to NewYork timezone: name: America/New_York + ignore_errors: true - name: Replace sudoers file template: src=../roles/common/templates/sudoers.j2 dest=/etc/sudoers @@ -107,7 +109,7 @@ lineinfile: dest=/etc/fstab regexp=\/data state=present - line="{{ nfs_location }}:/volumeUSB1/usbshare/raw-files/fileserver/shares/lab-data /data nfs defaults 0 0" + line="{{ nfs_location }}:/volumeUSB1/usbshare/raw-files/fileserver/shares/lab-data /data nfs defaults,nolock 0 0" - name: Mount USB lab data directory mount: @@ -115,7 +117,8 @@ src: 10.0.0.150:/volumeUSB1/usbshare/raw-files/fileserver/shares/lab-data state: mounted fstype: nfs - + ignore_errors: true + - name: test for swap partition shell: swapon -s | grep -E "^/" register: swapfile @@ -136,6 +139,7 @@ - name: prepare swapfile when: swapfile|failed shell: mkswap /swapfile + ignore_errors: yes - name: enable swap when: swapfile|failed diff --git a/roles/developer-machine/tasks/main.yml b/roles/developer-machine/tasks/main.yml index 1926cb2..3013fec 100644 --- a/roles/developer-machine/tasks/main.yml +++ b/roles/developer-machine/tasks/main.yml @@ -110,7 +110,8 @@ src: 10.0.0.150:/volumeUSB1/usbshare/raw-files state: mounted fstype: nfs - + ignore_errors: true + - name: Install ngrok npm: name: ngrok diff --git a/test-inventory b/test-inventory new file mode 100644 index 0000000..4276e28 --- /dev/null +++ b/test-inventory @@ -0,0 +1,2 @@ +[developer-machines] +localhost diff --git a/test/Dockerfile-ubuntu-xenial b/test/Dockerfile-ubuntu-xenial new file mode 100644 index 0000000..f8dba11 --- /dev/null +++ b/test/Dockerfile-ubuntu-xenial @@ -0,0 +1,28 @@ +FROM ubuntu:16.04 + +MAINTAINER Jacob Cody Wimer + +RUN apt-get update -qq \ + && DEBIAN_FRONTEND=noninteractive \ + apt-get install -y -q \ + build-essential \ + python python-dev python-pip \ + libffi-dev libssl-dev \ + libxml2-dev libxslt1-dev zlib1g-dev \ + git \ + openssl \ + openssh-server \ + ca-certificates \ + apt-transport-https \ + sudo \ + && pip install --upgrade setuptools pip wheel \ + && pip install --upgrade pyyaml jinja2 pycrypto \ + && pip install --upgrade pywinrm \ + && apt-get -qq clean \ + && rm -rf \ + /var/lib/apt/lists/* \ + /tmp/* \ + /var/tmp/* + +RUN mkdir /ansible +VOLUME /ansible diff --git a/test/ansible-test b/test/ansible-test new file mode 100644 index 0000000..3240ee0 --- /dev/null +++ b/test/ansible-test @@ -0,0 +1,6 @@ +#!/bin/bash + +pushd /ansible +pip install pipenv +pipenv install +pipenv run ansible-playbook -i test-inventory --connection=local playbooks/site.yml diff --git a/test/run-tests.sh b/test/run-tests.sh new file mode 100644 index 0000000..53f6c0f --- /dev/null +++ b/test/run-tests.sh @@ -0,0 +1,14 @@ +#!/bin/bash + +project_dir="$( dirname $(dirname $(readlink -f $0)))" + +docker build -t xenial-ansible -f ${project_dir}/test/Dockerfile-ubuntu-xenial ${project_dir} + +docker run -it \ +-v ${project_dir}:/ansible \ +-v /etc/timezone:/etc/timezone:ro \ +-v /etc/localtime:/etc/localtime:ro \ +--rm --privileged \ +xenial-ansible \ +/ansible/test/ansible-test +