Updated tests and role for Xenial support
These changes allow the role to be tested on Xenial hosts while also ensuring that the tests are testing everything within the container as expected. Overview: * Included in this PR is a manual-test.rc. This has been added to allow developers to run tests locally without having to invoke tox. This RC file was lifed from the os_keystone role. * The git package was added to the install list. This is needed on the target when the role is running with developer mode enabled. * Connection settings within the container create prep playbook were removed. A``connection: local`` setting forces all commands to be executed against the host regardless of a delegated task. * A task has been added to the horizon role to when SSL is enabled. This task ensures that that ca certificates are updated. Without this change, when running on Xenial, tempest will fail due to the following error: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590) By updating the ca certificats on tempest is able to verify the certificate and pass the tests. NOTE: This fix came from the puppet-OpenStack community where they ran into the same problems in Xenial as discussed here: [0] [0] - https://irclogs.ubuntu.com/2016/05/18/%23ubuntu-server.html#t13:37 Change-Id: I1e6808c49a8faaba5b2748918be5d6b5a59fd3d1 Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
This commit is contained in:
parent
30f0d599f7
commit
cc71003acb
22
manual-test.rc
Normal file
22
manual-test.rc
Normal file
@ -0,0 +1,22 @@
|
||||
export VIRTUAL_ENV=$(pwd)
|
||||
export ANSIBLE_HOST_KEY_CHECKING=False
|
||||
export ANSIBLE_SSH_CONTROL_PATH=/tmp/%%h-%%r
|
||||
|
||||
# TODO (odyssey4me) These are only here as they are non-standard folder
|
||||
# names for Ansible 1.9.x. We are using the standard folder names for
|
||||
# Ansible v2.x. We can remove this when we move to Ansible 2.x.
|
||||
export ANSIBLE_ACTION_PLUGINS=${HOME}/.ansible/plugins/action
|
||||
export ANSIBLE_CALLBACK_PLUGINS=${HOME}/.ansible/plugins/callback
|
||||
export ANSIBLE_FILTER_PLUGINS=${HOME}/.ansible/plugins/filter
|
||||
export ANSIBLE_LOOKUP_PLUGINS=${HOME}/.ansible/plugins/lookup
|
||||
|
||||
# This is required as the default is the current path or a path specified
|
||||
# in ansible.cfg
|
||||
export ANSIBLE_LIBRARY=${HOME}/.ansible/plugins/library
|
||||
|
||||
# This is required as the default is '/etc/ansible/roles' or a path
|
||||
# specified in ansible.cfg
|
||||
export ANSIBLE_ROLES_PATH=${HOME}/.ansible/roles:$(pwd)/..
|
||||
|
||||
echo "Run manual functional tests by executing the following:"
|
||||
echo "# ./.tox/functional/bin/ansible-playbook -i tests/inventory tests/test.yml -e \"rolename=$(pwd)\""
|
@ -23,6 +23,7 @@ galaxy_info:
|
||||
- name: Ubuntu
|
||||
versions:
|
||||
- trusty
|
||||
- xenial
|
||||
categories:
|
||||
- cloud
|
||||
- python
|
||||
|
@ -40,6 +40,12 @@
|
||||
- include: horizon_ssl_user_provided.yml
|
||||
when: not horizon_external_ssl|bool
|
||||
|
||||
- name: Update the ca certificates
|
||||
command: "update-ca-certificates -f"
|
||||
when: not horizon_external_ssl|bool
|
||||
tags:
|
||||
- horizon-ssl
|
||||
|
||||
- include: horizon_service_setup.yml
|
||||
|
||||
- include: horizon_apache.yml
|
||||
|
@ -15,7 +15,6 @@
|
||||
|
||||
- name: Create test containers
|
||||
hosts: all_containers
|
||||
connection: local
|
||||
gather_facts: false
|
||||
pre_tasks:
|
||||
- name: Destroy test containers
|
||||
@ -51,4 +50,4 @@
|
||||
port: "{{ ansible_ssh_port | default('22') }}"
|
||||
host: "{{ ansible_ssh_host | default(inventory_hostname) }}"
|
||||
search_regex: OpenSSH
|
||||
delay: 1
|
||||
delay: 1
|
||||
|
@ -61,8 +61,8 @@ memcached_servers: 127.0.0.1
|
||||
openrc_os_auth_url: "http://127.0.0.1:5000/v3"
|
||||
openrc_os_domain_name: "Default"
|
||||
openrc_os_password: "{{ keystone_auth_admin_password }}"
|
||||
tempest_dashboard_login_url: "https://10.100.100.4/auth/login/"
|
||||
tempest_dashboard_url: "https://10.100.100.4/"
|
||||
tempest_dashboard_login_url: "https://{{ ansible_hostname }}/auth/login/"
|
||||
tempest_dashboard_url: "https://{{ ansible_hostname }}/"
|
||||
tempest_developer_mode: True
|
||||
tempest_git_install_branch: master
|
||||
tempest_venv_tag: "{{ tempest_git_install_branch }}"
|
||||
|
@ -20,6 +20,7 @@ horizon_apt_packages:
|
||||
- apache2
|
||||
- apache2-utils
|
||||
- cron # required by the Ansible cron module
|
||||
- git
|
||||
- libapache2-mod-wsgi
|
||||
- libssl-dev
|
||||
- libxslt1.1
|
||||
|
Loading…
Reference in New Issue
Block a user