Browse Source

Add integration test

Oskar Schöldström 8 years ago
parent
commit
b7b4a1cb4b
2 changed files with 23 additions and 0 deletions
  1. 11 0
      .travis.yml
  2. 12 0
      tests/test.yml

+ 11 - 0
.travis.yml

@@ -8,6 +8,10 @@ env:
   - distro: ubuntu1204
 
 script:
+  # Configure test script so we can run extra tests after playbook is run.
+  - export container_id=$(date +%s)
+  - export cleanup=false
+
   # Download test shim.
   - wget -O ${PWD}/tests/test.sh https://gist.githubusercontent.com/geerlingguy/73ef1e5ee45d8694570f334be385e181/raw/
   - chmod +x ${PWD}/tests/test.sh
@@ -15,5 +19,12 @@ script:
   # Run tests.
   - ${PWD}/tests/test.sh
 
+  # Setup test site.
+  - 'docker exec ${container_id} mkdir -p /var/www/test'
+  - 'docker exec ${container_id} bash -c "echo Success >| /var/www/test/index.html"'
+
+  # Make sure virtualhost exists.
+  - 'docker exec --tty ${container_id} env TERM=xterm curl http://test.dev/ | grep "Success"'
+
 notifications:
   webhooks: https://galaxy.ansible.com/api/v1/notifications/

+ 12 - 0
tests/test.yml

@@ -3,6 +3,18 @@
 
   vars:
     nginx_use_ppa: true
+    nginx_remove_default_vhost: true
+    nginx_vhosts:
+      - server_name: "test.dev"
+        root: "/var/www/test"
+
+  pre_tasks:
+    - name: Update apt cache.
+      apt: update_cache=yes cache_valid_time=86400
+      when: ansible_os_family == 'Debian'
+
+    - name: Install dependencies.
+      package: name=curl
 
   roles:
     - role_under_test