Common testing content for OpenStack-Ansible
Go to file
Markos Chandras 38eefcc9b8 test-prepare-host: Switch package state to 'present' on openSUSE
Similar to the CentOS case, we should use 'present' instead of 'latest'
for the package state so we don't spend time resolving dependencies,
querying repos etc. The 'present' state can be further improved either
in the zypper itself or in the Ansible module.

Change-Id: I44fae44030af1c9ee88dcc26c6b55c91a2531926
Link: https://github.com/ansible/ansible/pull/37191
Link: https://bugzilla.opensuse.org/show_bug.cgi?id=1084525
(cherry picked from commit 1f2ab67987)
2018-03-12 09:07:45 +00:00
ansible-lint Clean imports in code 2018-01-31 09:17:45 +07:00
common-tasks Set a fact for handling yum's fastestmirror plugin 2018-02-15 17:22:23 +00:00
doc Update docs config for linters 2017-11-02 17:06:46 +08:00
network_interfaces Disable offloading in test by default 2017-11-30 13:37:13 +00:00
releasenotes Remove setting of version/release from releasenotes 2017-11-17 08:13:01 +01:00
tests Update scripts for Queens 2018-02-14 17:13:10 +00:00
zuul.d Add non-voting standard upgrade job 2018-03-01 11:30:25 +00:00
.gitignore .gitignore: Whitespace fix 2017-06-07 09:28:52 +01:00
.gitreview Update scripts for Queens 2018-02-14 17:13:10 +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: Use rsync to copy working directory to VM 2018-01-19 11:26:41 +00:00
bindep.txt bindep.txt: Consolidate some RPM depdendencies 2017-12-05 17:50:02 +00:00
create-grant-db.yml Add options for nova cell_v2 2017-02-02 14:29:41 +00:00
destroy_containers.yml Remove the serialization in tests 2017-12-12 17:52:01 -06:00
ensure-rabbitmq.yml Add convergence test for test repo. 2016-08-30 14:37:25 +00:00
gen-projects-list.sh Remove new retired projects from update bot 2017-11-01 17:38:00 +00:00
get-ansible-role-requirements.yml Skip ansible-lint test against roles 2017-12-19 11:14:18 +00: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 Simplify install_pkg_deps() function 2017-11-06 12:54:26 +00:00
run_tests_common.sh run_tests_common.sh: Add more openSUSE packages 2017-11-27 16:13:03 +00: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 Update scripts for Queens 2018-02-14 17:13:10 +00:00
test-ansible-deps.txt Revert "Revert "Use Ansible 2.4"" 2017-12-13 09:29:41 +00:00
test-ansible-env-prep.sh Update scripts for Queens 2018-02-14 17:13:10 +00:00
test-ansible-functional.sh Add a status line for SELinux status 2018-02-07 11:57:27 -06:00
test-ansible-lint.sh Skip ansible-lint test against roles 2017-12-19 11:14:18 +00:00
test-ansible-syntax.sh Improve lint test flexibility 2017-11-17 15:38:43 +00:00
test-ansible.cfg Skip ansible-lint test against roles 2017-12-19 11:14:18 +00:00
test-bashate.sh Implement centralised Ansible test scripts 2016-10-05 09:56:12 +01:00
test-create-previous-venv.sh Use a venv with previous ansible version for upgrades 2018-01-27 05:25:33 +00: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 Remove jinja delimiters in when 2018-02-15 17:19:48 +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 Remove jinja delimiters in when 2018-02-15 17:19:48 +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 Remove placement_database related options/code 2018-02-07 12:02:09 +00: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 Update rabbitmq install for cluster and upgrade tests 2018-02-11 17:56:27 +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 Vagrantfile: Use rsync to copy working directory to VM 2018-01-19 11:26:41 +00:00
test-pep8.sh Implement centralised Ansible test scripts 2016-10-05 09:56:12 +01:00
test-prepare-containers.yml Remove the serialization in tests 2017-12-12 17:52:01 -06:00
test-prepare-host.yml test-prepare-host: Switch package state to 'present' on openSUSE 2018-03-12 09:07:45 +00:00
test-prepare-keys.yml Always quote the filesystem permissions 2017-11-10 04:20:17 +00:00
test-repo-setup.yml Ensure all pre-cloned git sources are found 2017-10-31 10:06:02 +00:00
test-requirements.txt Updated from global requirements 2018-02-15 21:01:27 +00:00
test-setup-cinder-localhost.yml Use package module to install lvm2 2017-11-21 11:15:24 -06:00
test-setup-host.yml Add setup-host play 2016-05-20 14:53:54 +01:00
test-setup-swifthosts.yml Fix ansible-lint test failures for ironic 2017-11-24 11:07:49 +00:00
test-vars.yml Update scripts for Queens 2018-02-14 17:13:10 +00:00
tox.ini Update scripts for Queens 2018-02-14 17:13:10 +00: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"