From dc6d1cf2c179220226bda7fd2475c74693063a75 Mon Sep 17 00:00:00 2001 From: spisarski Date: Thu, 10 Aug 2017 09:17:44 -0600 Subject: Scripts to allow Jenkins to run the SNAPS-OO tests. JIRA: SNAPS-80 Change-Id: I7d634a5484752194d7796e841233bf387c1aeafe Signed-off-by: spisarski --- ci/run_tests.sh | 25 +++++++++++++++++++++++++ ci/setup_proxy.yaml | 17 +++++++++++++++++ ci/squid.conf | 24 ++++++++++++++++++++++++ 3 files changed, 66 insertions(+) create mode 100755 ci/run_tests.sh create mode 100644 ci/setup_proxy.yaml create mode 100644 ci/squid.conf 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 -- cgit 1.2.3-korg