Common testing content for OpenStack-Ansible
Go to file
Jonathan Rosser 6fd69d3b41 Use "become: True" when installing ansible collections
These are now installed into /etc/ansible [1] which is only writable
by the root user, not the unpriviledged zuul user so we must
elevate priviledges to run ansible-galaxy.

[1] https://review.opendev.org/c/openstack/openstack-ansible-tests/+/925746

Change-Id: Ie20f1a076f9646bf91ed721a2a9154f989a3b19c
2024-08-12 17:26:58 +01:00
common-tasks Bump Ansible version for tests repo 2024-07-25 08:09:24 +00:00
doc Switch sphinx language to en 2022-05-30 16:01:49 +02:00
releasenotes reno: Update master for unmaintained/zed 2024-05-10 18:58:48 +00:00
sync/doc Do not syncronise DB/MQ/Service setup tasks to other roles 2022-01-13 10:02:47 +00:00
tests Bump Ansible version for tests repo 2024-07-25 08:09:24 +00:00
zuul.d Merge "Remove the get_md5 parameter from ansible stat tasks" 2024-08-05 08:10:45 +00:00
.gitignore Dissuade .gitignore references to personal tools 2019-01-21 09:51:26 +08:00
.gitreview OpenDev Migration Patch 2019-04-19 19:31:44 +00:00
bindep.txt Clean up code from unsupported operating systems 2021-03-11 23:08:21 +00:00
CONTRIBUTING.rst [ussuri][goal] Update contributor documentation 2020-05-12 21:08:10 +03:00
create-grant-db.yml Do not log passwords 2018-04-11 13:49:00 +02:00
destroy_containers.yml Bump Ansible version for tests repo 2024-07-25 08:09:24 +00:00
gen-projects-list.sh Replace git.openstack.org with opendev.org 2019-05-08 19:49:28 +03:00
get-ansible-collection-requirements.yml Use "become: True" when installing ansible collections 2024-08-12 17:26:58 +01:00
get-ansible-role-requirements.yml auto-detect interpreter 2020-06-11 14:43:02 -04: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
listening-port-report.yml Bump Ansible version for tests repo 2024-07-25 08:09:24 +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 Add source code repository link for README 2019-08-15 02:12:53 -07:00
run_tests_common.sh Use curl to download u-c 2022-12-28 14:50:57 +01:00
run_tests.sh Update tests for Rocky Linux 2022-03-28 14:48:15 +00:00
setting-nodepool-variables.yml Simplify nodepool variable gathering 2018-03-08 15:36:06 -06:00
sync-test-repos.sh sync: keep doc/requirements.txt syncd across all repos 2019-07-18 16:51:28 -04:00
test-ansible-collection-requirements.yml Respect depends-on for collection installation 2024-08-06 14:55:53 +02:00
test-ansible-deps.txt Bump Ansible version for tests repo 2024-07-25 08:09:24 +00:00
test-ansible-env-prep.sh Respect depends-on for collection installation 2024-08-06 14:55:53 +02:00
test-ansible-functional.sh Remove Centos-7 support 2020-09-22 12:26:52 +00:00
test-ansible-lint.sh Bump Ansible version for tests repo 2024-07-25 08:09:24 +00:00
test-ansible-role-requirements.yml Add ansible.utils collection requirement 2022-03-14 16:28:09 +00:00
test-ansible-syntax.sh Trace execution of test-ansible-syntax.sh 2020-10-05 09:02:59 +01:00
test-ansible.cfg Respect depends-on for collection installation 2024-08-06 14:55:53 +02:00
test-bashate.sh Fix bashate xargs run 2019-03-13 12:09:39 -05:00
test-distro_install-vars.yml Use ansible_facts[] instead of fact variables 2021-03-17 12:20:20 +00:00
test-install-cinder.yml Remove all MQ vhost/user creation tasks/vars 2018-07-27 13:19:10 +01:00
test-install-etcd.yml Ensure remote_user and become are consistently implemented 2018-07-06 09:45:29 +01:00
test-install-galera.yml Use galera server role to install galera client 2020-05-20 15:35:07 +00:00
test-install-glance.yml Merge "Ensure remote_user and become are consistently implemented" 2018-07-09 07:54:50 +00:00
test-install-gnocchi.yml Ensure remote_user and become are consistently implemented 2018-07-06 09:45:29 +01:00
test-install-haproxy.yml Use local connection and become for localhost plays 2018-07-14 14:37:06 +01:00
test-install-heat.yml Remove all MQ vhost/user creation tasks/vars 2018-07-27 13:19:10 +01:00
test-install-horizon.yml auto-detect interpreter 2020-06-11 14:43:02 -04:00
test-install-infra.yml Bump Ansible version for tests repo 2024-07-25 08:09:24 +00:00
test-install-ironic.yml Remove all MQ vhost/user creation tasks/vars 2018-07-27 13:19:10 +01:00
test-install-keystone.yml Run main_pre.yml tasks as initial keystone installation step 2022-05-31 16:54:30 +01:00
test-install-memcached.yml Ensure remote_user and become are consistently implemented 2018-07-06 09:45:29 +01:00
test-install-neutron.yml Use ansible_facts[] instead of fact variables 2021-03-17 12:20:20 +00:00
test-install-nova.yml Use ansible_facts[] instead of fact variables 2021-03-17 12:20:20 +00:00
test-install-openstack-hosts.yml Remove redundant apt cache update task 2018-07-14 14:37:28 +01:00
test-install-rabbitmq.yml Ensure remote_user and become are consistently implemented 2018-07-06 09:45:29 +01:00
test-install-swift.yml use include_tasks instead of include 2018-09-09 08:04:47 +00:00
test-install-tempest.yml Remove use of 'private' for include_role for ansible 2.8 2019-05-16 21:56:15 +01:00
test-log-collect.sh Bump Ansible version for tests repo 2024-07-25 08:09:24 +00:00
test-pep8.sh Implement centralised Ansible test scripts 2016-10-05 09:56:12 +01:00
test-prepare-containers.yml Bump Ansible version for tests repo 2024-07-25 08:09:24 +00:00
test-prepare-host.yml Bump Ansible version for tests repo 2024-07-25 08:09:24 +00:00
test-prepare-keys.yml Bump Ansible version for tests repo 2024-07-25 08:09:24 +00:00
test-repo-setup.yml Bump Ansible version for tests repo 2024-07-25 08:09:24 +00:00
test-requirements.txt Bump Ansible version for tests repo 2024-07-25 08:09:24 +00:00
test-setup-cinder-localhost.yml Use local connection and become for localhost plays 2018-07-14 14:37:06 +01:00
test-setup-host.yml use include_tasks instead of include 2018-09-09 08:04:47 +00:00
test-setup-swifthosts.yml Use ansible_facts[] instead of fact variables 2021-03-17 12:20:20 +00:00
test-vars.yml Bump ansible-core to 2.12.8 2023-10-16 15:32:55 +00:00
tox.ini Bump ansible-core to 2.12.8 2023-10-16 15:32:55 +00:00
Vagrantfile Clean out unused legacy tests 2021-12-07 08:27:46 +00:00

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"
Documentation for the project can be found at:

https://docs.openstack.org/openstack-ansible-tests/latest/

Release notes for the project can be found at:

https://docs.openstack.org/releasenotes/openstack-ansible-tests/

The project source code repository is located at:

https://opendev.org/openstack/openstack-ansible-tests

The project home is at:

https://launchpad.net/openstack-ansible

The project bug tracker is located at:

https://bugs.launchpad.net/openstack-ansible