Common testing content for OpenStack-Ansible
Go to file
Jimmy McCrory adb2af675f Allow db user name differing from db name
For some services, the name of the database user may differ from the
name of the database that user needs access to. Add a 'db_user' variable
for use in this case, defaulting to 'db_name' to maintain current
functionality.

Change-Id: Iff2d736415cfbe3e1ec60aa370cc30bd8610541d
2016-10-03 13:27:17 -07:00
common-tasks Merge "Only override UCA repo url on OpenStack CI" 2016-09-06 13:34:06 +00:00
doc Introduced all the scaffolding for test repo 2016-08-12 14:50:07 +00:00
network_interfaces Merge "Fix postup/postdown on RedHat/CentOS hosts" 2016-09-30 02:43:33 +00:00
releasenotes Update reno for stable/newton 2016-09-30 15:07:09 -04:00
tests Implement centralised test scripts 2016-09-23 16:04:36 +01:00
.gitignore Update testing bits for consistency 2016-09-16 21:19:23 -05:00
.gitreview Introduced all the scaffolding for test repo 2016-08-12 14:50:07 +00:00
ansible-role-requirements-gen.sh Added role requirements file to the tests repo 2016-09-13 11:37:49 +00:00
ansible-role-requirements.yaml Added role requirements file to the tests repo 2016-09-13 11:37:49 +00:00
bindep.txt Compress test execution logs 2016-09-09 10:58:01 +01:00
create-grant-db.yml Allow db user name differing from db name 2016-10-03 13:27:17 -07:00
destroy_containers.yml Fix container destroy/create 2016-09-16 12:47:42 -05:00
ensure-rabbitmq.yml Add convergence test for test repo. 2016-08-30 14:37:25 +00:00
get-ansible-role-requirements.yml Implement git clone of roles 2016-09-30 12:58:14 +00:00
iptables-clear.sh Setup iptables-clear.sh 2016-05-26 11:33:41 +01:00
LICENSE Introduced all the scaffolding for test repo 2016-08-12 14:50:07 +00:00
manual-test.rc Update README description of how to use the tests repo 2016-09-28 13:23:01 +01:00
README.rst Renamed test-vars.yml to rolename-overrides.yml in README.rst 2016-10-03 22:40:52 +05:30
run_tests.sh Implement centralised test scripts 2016-09-23 16:04:36 +01:00
setting-nodepool-variables.yml Add Ironic vars and play to central test repo 2016-09-27 13:35:36 +00:00
setup.cfg modify the home-page info with the developer documentation 2016-09-20 16:32:22 +05:30
setup.py Introduced all the scaffolding for test repo 2016-08-12 14:50:07 +00:00
test-ansible-deps.txt Implement centralised test scripts 2016-09-23 16:04:36 +01:00
test-ansible-env-prep.sh Implement git clone of roles 2016-09-30 12:58:14 +00:00
test-ansible.cfg Implement centralised test scripts 2016-09-23 16:04:36 +01:00
test-bashate.sh Implement centralised test scripts 2016-09-23 16:04:36 +01:00
test-install-etcd.yml Add vars and plays for neutron to work 2016-09-20 17:01:19 +01:00
test-install-galera.yml Fix up syntax and dir structure 2016-05-19 16:37:18 +01:00
test-install-glance.yml Remove unused hostname var from test playbooks 2016-09-12 09:08:38 -04:00
test-install-infra.yml Fix test-vars and rabbit play 2016-05-23 12:00:39 +01:00
test-install-ironic.yml Add Ironic vars and play to central test repo 2016-09-27 13:35:36 +00:00
test-install-keystone.yml Modularize networking 2016-09-16 17:07:15 +01:00
test-install-memcached.yml Fix up syntax and dir structure 2016-05-19 16:37:18 +01:00
test-install-neutron.yml Fix CentOS package installation 2016-10-03 10:22:39 -04:00
test-install-nova.yml Fix CentOS package installation 2016-10-03 10:22:39 -04:00
test-install-openstack-hosts.yml Add tests for the openstack_hosts role 2016-08-26 00:05:28 +00:00
test-install-rabbitmq.yml Fix up syntax and dir structure 2016-05-19 16:37:18 +01:00
test-install-sahara.yml Add sahara vars and playbook 2016-10-03 14:11:05 +01:00
test-install-swift.yml Remove swift_storage/replication_address pretasks 2016-09-26 14:16:33 +01:00
test-install-tempest.yml Add rolename setting for tempest 2016-09-26 21:56:47 +01:00
test-log-collect.sh Implement centralised test scripts 2016-09-23 16:04:36 +01:00
test-pep8.sh Implement centralised test scripts 2016-09-23 16:04:36 +01:00
test-prepare-containers.yml Add container logs to the build 2016-09-27 17:35:29 -05:00
test-prepare-host.yml Merge "Fix postup/postdown on RedHat/CentOS hosts" 2016-09-30 02:43:33 +00:00
test-prepare-keys.yml Address ansible_ssh_* var deprecation 2016-09-19 11:06:48 +01:00
test-requirements.txt Updated from global requirements 2016-09-29 22:37:26 +00:00
test-setup-host.yml Add setup-host play 2016-05-20 14:53:54 +01:00
test-setup-swifthosts.yml Fix CentOS package installation 2016-10-03 10:22:39 -04:00
test-vars.yml Add sahara vars and playbook 2016-10-03 14:11:05 +01:00
tox.ini Implement centralised test scripts 2016-09-23 16:04:36 +01:00
Vagrantfile Introduced all the scaffolding for test repo 2016-08-12 14:50:07 +00:00

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"