summaryrefslogtreecommitdiffstats
path: root/ci
diff options
context:
space:
mode:
Diffstat (limited to 'ci')
-rwxr-xr-xci/run_tests.sh25
-rw-r--r--ci/setup_proxy.yaml17
-rw-r--r--ci/squid.conf24
3 files changed, 66 insertions, 0 deletions
diff --git a/ci/run_tests.sh b/ci/run_tests.sh
new file mode 100755
index 0000000..14f1a11
--- /dev/null
+++ b/ci/run_tests.sh
@@ -0,0 +1,25 @@
+#!/usr/bin/env bash
+
+set -e
+
+# Setup Python runtime
+sudo pip install virtualenv
+virtualenv ./vpy
+source ./vpy/bin/activate
+pip install -e ../
+
+# $1 is the IP to the pod's build server
+# $2 is the IP to the pod's control server
+
+# This operation installs squid on the pod's build server
+ansible-playbook -i ${1}, setup_proxy.yaml
+
+# Get RC file from control server
+filename=$(ssh -o StrictHostKeyChecking=no root@${2} find /var/lib/lxc/controller00_nova_api_placement_container-* -name openrc)
+scp root@${2}:${filename} .
+
+# Execute tests
+python ../snaps/test_runner.py -e openrc -n public -ci -p ${1}:3128
+
+# Cleanup virtual python runtime
+rm -rf ./vpy
diff --git a/ci/setup_proxy.yaml b/ci/setup_proxy.yaml
new file mode 100644
index 0000000..996218a
--- /dev/null
+++ b/ci/setup_proxy.yaml
@@ -0,0 +1,17 @@
+---
+- hosts: all
+ user: root
+
+ tasks:
+ - yum: name=squid
+ when: ansible_distribution == "CentOS"
+ - apt: name=squid
+ when: ansible_distribution == "Ubuntu"
+
+ - name: Transfer squid.conf
+ copy: src=squid.conf dest=/etc/squid/squid.conf mode=0640
+
+ - name: Bounce Squid
+ systemd:
+ name: squid
+ state: reloaded
diff --git a/ci/squid.conf b/ci/squid.conf
new file mode 100644
index 0000000..110c1d2
--- /dev/null
+++ b/ci/squid.conf
@@ -0,0 +1,24 @@
+acl SSL_ports port 443
+acl Safe_ports port 80 # http
+acl Safe_ports port 21 # ftp
+acl Safe_ports port 443 # https
+acl Safe_ports port 70 # gopher
+acl Safe_ports port 210 # wais
+acl Safe_ports port 1025-65535 # unregistered ports
+acl Safe_ports port 280 # http-mgmt
+acl Safe_ports port 488 # gss-http
+acl Safe_ports port 591 # filemaker
+acl Safe_ports port 777 # multiling http
+acl CONNECT method CONNECT
+
+http_access allow all
+
+http_port 3128
+
+coredump_dir /var/spool/squid
+
+refresh_pattern ^ftp: 1440 20% 10080
+refresh_pattern ^gopher: 1440 0% 1440
+refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
+refresh_pattern (Release|Packages(.gz)*)$ 0 20% 2880
+refresh_pattern . 0 20% 4320