Common testing content for OpenStack-Ansible
Go to file
Jesse Pretorius b58a2c0287 Implement zuul v2/v3 role fetch shim
In order to be able to simultaneously work with the
differing implementations of zuul-cloner in zuul v2
and zuul v3 we implement a detection routine to
behave appropriately for each version.

This is very much a band-aid just to help us transition
because once the transition to zuul v3 is complete we
should be able to ditch this whole playbook for
something built into zuul v3, and use something very
simple for executing tests when not using zuul.

Change-Id: Ic824e7ca7c564d5de7a27c77a79014ad274afade
2017-10-16 18:08:05 +01:00
ansible-lint Revert "Add linter for passing pkgs as list" 2017-10-13 12:43:03 +00:00
common-tasks Unwedge the openstack-ansible-tests gate 2017-09-14 09:59:23 -06:00
doc Fix openstackdocstheme settings 2017-07-03 16:28:21 +08:00
network_interfaces network_interfaces: Remove useless 'break' command from case statement 2017-09-02 12:48:50 +01:00
releasenotes Fix openstackdocstheme settings 2017-07-03 16:28:21 +08:00
tests Implement zuul v2/v3 role fetch shim 2017-10-16 18:08:05 +01:00
.gitignore .gitignore: Whitespace fix 2017-06-07 09:28:52 +01:00
.gitreview Introduced all the scaffolding for test repo 2016-08-12 14:50:07 +00:00
LICENSE Introduced all the scaffolding for test repo 2016-08-12 14:50:07 +00:00
README.rst Show team and repo badges on README 2016-11-25 16:28:20 +01:00
Vagrantfile Vagrantfile: Add openSUSE Leap 42.3 2017-07-26 15:40:10 +01:00
ansible-role-requirements-gen.sh Use git.o.o and regen requirements file 2016-11-02 12:25:04 +11:00
ansible-role-requirements.yaml Use ansible-hardening repository 2017-05-30 09:22:49 -05:00
bindep.txt Remove SSL SNI packages from bindep 2017-09-12 08:52:26 -06:00
create-grant-db.yml Add options for nova cell_v2 2017-02-02 14:29:41 +00:00
destroy_containers.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
ensure-rabbitmq.yml Add convergence test for test repo. 2016-08-30 14:37:25 +00:00
gen-projects-list.sh gen-projects-list.sh: Add ability to include extra OSA projects 2017-06-26 13:41:07 +01:00
get-ansible-role-requirements.yml Implement zuul v2/v3 role fetch shim 2017-10-16 18:08:05 +01:00
iptables-clear.sh Setup iptables-clear.sh 2016-05-26 11:33:41 +01:00
manual-test.rc Update README description of how to use the tests repo 2016-09-28 13:23:01 +01:00
run_tests.sh Add dnf support 2017-08-02 15:02:02 -05:00
run_tests_common.sh Add fedora to run_tests_common.sh 2017-08-25 12:40:17 -05:00
setting-nodepool-variables.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
setup.cfg Update URL home-page in documents according to document migration 2017-07-14 03:21:10 +00:00
setup.py Updated from global requirements 2017-03-02 11:52:36 +00:00
sync-test-repos.sh sync-test-repos.sh: Add Zuul environment support for synchronizing files 2017-06-18 13:45:30 +00:00
test-ansible-deps.txt Update Ansible to 2.3.2.0 2017-08-14 16:09:50 -07:00
test-ansible-env-prep.sh Implement zuul v2/v3 role fetch shim 2017-10-16 18:08:05 +01:00
test-ansible-functional.sh Only build ARA report when test fails 2017-10-13 12:27:06 +01:00
test-ansible-lint.sh Revert "Add linter for passing pkgs as list" 2017-10-13 12:43:03 +00:00
test-ansible-syntax.sh Implement centralised Ansible test scripts 2016-10-05 09:56:12 +01:00
test-ansible.cfg Implement centralised test scripts 2016-09-23 16:04:36 +01:00
test-bashate.sh Implement centralised Ansible test scripts 2016-10-05 09:56:12 +01:00
test-install-cinder.yml Merge "Implement any_errors_fatal for all test playbooks" 2017-07-17 17:32:51 +00:00
test-install-etcd.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-install-galera.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-install-glance.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-install-gnocchi.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-install-haproxy.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-install-heat.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-install-horizon.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-install-infra.yml Fix test-vars and rabbit play 2016-05-23 12:00:39 +01:00
test-install-ironic.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-install-keystone.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-install-memcached.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-install-neutron.yml Run neutron in parallel 2017-08-22 14:48:28 +00:00
test-install-nova.yml Add dnf support 2017-08-02 15:02:02 -05:00
test-install-openstack-hosts.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-install-rabbitmq.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-install-sahara.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-install-swift.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-install-tempest.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-log-collect.sh Merge "Only build ARA report when test fails" 2017-10-13 13:32:47 +00:00
test-pep8.sh Implement centralised Ansible test scripts 2016-10-05 09:56:12 +01:00
test-prepare-containers.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-prepare-host.yml test-prepare-host: Fix typo in postup/postdown options for SUSE 2017-09-02 12:46:22 +01:00
test-prepare-keys.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-repo-setup.yml Implement any_errors_fatal for all test playbooks 2017-07-17 10:09:11 +00:00
test-requirements.txt Updated from global requirements 2017-09-16 23:21:04 +00:00
test-setup-cinder-localhost.yml Add dnf support 2017-08-02 15:02:02 -05:00
test-setup-host.yml Add setup-host play 2016-05-20 14:53:54 +01:00
test-setup-swifthosts.yml Merge "Implement any_errors_fatal for all test playbooks" 2017-07-17 17:32:51 +00:00
test-vars.yml Remove keystone pin 2017-09-15 08:43:48 -06:00
tox.ini Implement zuul v2/v3 role fetch shim 2017-10-16 18:08:05 +01:00

README.rst

Team and repository tags

image

OpenStack-Ansible testing

This is the openstack-ansible-tests repository, providing a framework and consolidation of testing configuration and playbooks. This can be used to integrate new projects, and ensure that code duplication is minimized whilst allowing the addition of new testing scenarios with greater ease.

Role Integration

To enable the openstack-ansible-tests repository, ensure that the tox.ini configuration in the role repository matches the galera_client repository tox.ini with the exception of the value for ROLE_NAME. A more advanced configuration which implements multiple functional test scenarios is available in the neutron role tox.ini.

To override variables you can create a ${rolename}-overrides.yml file inside the role's tests folder. This variable file can be includes in the functional tox target configuration in tox.ini as demonstrated in the following extract:

ansible-playbook -i {toxinidir}/tests/inventory \
                 -e @{toxinidir}/tests/${rolename}-overrides.yml \
                 {toxinidir}/tests/test.yml -vvvv

In your repositories tests/test.yml file, you can call any of the included playbooks, for example:

- include: common/test-prepare-keys.yml

Network Settings

The networking can be configured and setup using the bridges variable.

The base option, when only 1 interface is required is to specify just a single base - this is only for backwards compatibility with existing test setup and will default to br-mgmt with an IP of 10.1.0.1.

bridges:
  - "br-mgmt"

To allow a more complicated network setup we can specify ip_addr: The IP address on the interface. netmask: Netmask of the interface (defaults to 255.255.255.0) name: Name of the interface veth_peer: Set up a veth peer for the interface alias: Add an alias IP address

For example, a Nova setup may look like this:

bridges:
  - name: "br-mgmt"
    ip_addr: "10.1.0.1"
  - name: "br-vxlan"
    ip_addr: "10.1.1.1"
  - name: "br-vlan"
    ip_addr: "10.1.2.200"
    veth_peer: "eth12"
    alias: "10.1.2.1"