We broke neutron functional tests previously when dropped
compatability with lxc2 so we should fix them now.
Change-Id: Ic2f425a6d9780624596ec6cb1bcf40fef9d8951f
There is no record for why we implement the MQ vhost/user creation
outside of the role in the playbook, when we could do it inside the
role.
Implementing it inside the role allows us to reduce the quantity of
group_vars duplicated from the role, and allows us to better document
the required variables in the role. The delegation can still be done
as it is done in the playbook too.
In this patch we remove the test-vars which were duplicated from the
role, and remove the MQ setup tasks as they are no longer required.
Change-Id: Ib515630c8fbf793258b40f15a4c9f2c18c4c7531
It makes no sense to use become when you're connecting to a
host via the root remote_user. As such, we remove all uses of
'become: true' from the test plays with the exception of the
'test-prepare-keys.yml' playbook which uses a local connection
rather than a remote one and it therefore needs to use become.
We also transition all plays to use 'remote_user' which is the
correct parameter to replace 'user' (since ansible 1.4).
Finally, we switch the horizon nova service setup to its own
playbook using a local connection and the upstream keystone
modules.
Change-Id: I20517c22f07b1bb811a51d8c63741604360fe7f8
Jobs sometimes fail and timeout on this task so adding retries
to make it less prone to CI failures.
Change-Id: I4ecad7ecf56962fc272989a8fafc66b0ff1e5185
There is no record for why we implement the database creation outside
of the role in the playbook, when we could do it inside the role.
Implementing it inside the role allows us to reduce the quantity of
group_vars duplicated from the role, and allows us to better document
the required variables in the role. The delegation can still be done
as it is done in the playbook too.
In this patch we remove the test-vars which were duplicated from the
role, and remove the DB setup tasks as they are no longer required.
Change-Id: I0c40e3b9493e8c5b2c1009a9aae8fe78e963c074
Depends-On: https://review.openstack.org/571781
With the merge of https://review.openstack.org/569061 the
roles which do not have the rabbitmq_all group are failing
with messages like:
'dict object' has no attribute 'rabbitmq_all'
This patch ensures that the tasks are only activated if the
inventory group is present and populated.
Change-Id: I8f9004147753bb7f8121e344379417a6d6e2e807
With the merge of https://review.openstack.org/559127 the roles
which do not yet have the oslomsg_rpc_all/oslomsg_notify_all
groups are failing with messages like:
'dict object' has no attribute 'oslomsg_rpc_all'
'dict object' has no attribute 'oslomsg_notify_all'
This patch puts the old ensure-rabbitmq.yml task include back
and activates it when these groups are not defined.
Change-Id: I90dcd122fbc96f7737363dd353b50a516122667a
This commit contains updates to introduced oslo.messaging
service in place of rabbitmq server.
This patch:
* Add ensure oslo.messaging vhost and user for backend
* Update service role installs
* Add oslo.messaging settings to test-vars
Change-Id: Ie69d522ee2df4282ce4fc69c2b3f81f4df1da77d
Our CentOS builds for Neutron are taking quite some time with the
containers running in serial, this patch moves to build these in
parallel for role testing.
Change-Id: I07b5b0914da340122a85723e7fdb0e1c512578c7
Sometimes a test will result in a failure, but it
takes more time than necessary to find the failure
due to Ansible continuing to execute on other hosts
after removing one from the play execution.
This patch ensures that any error will result in
an immediate failure so that the fatal error is
easier to find.
Change-Id: I4e89bfdb1e48d0ac65f9fb8549e55a19ab773f9f
This updates the neutron test playbook to:
1. More efficiently execute the dependent package
installation, while being flexible enough to
cater for more package managers.
2. More efficiently execute the preparation of
the neutron agent containers by consolidating
tasks, using a dict for the kernel path and
consolidating the container config into a
single task.
3. Splits the implementation of the neutron
server service from the rest to allow the
role to be able to use different hosts for
different services.
4. Use the built-in functionality of the neutron
role for the checksum metadata fix.
Change-Id: I548971e2de92280fe2cc4ff0a6a926497733fa7d
After configuring the bind mounts in the container, we used a
task to wait for SSH to respond on the container, using the
Ansible wait_for module trying to connect to port 22.
When managing containers in Ansible using other connection plugins
that use LXC commands on the physical host to execute modules,
there may not be an SSH daemon running within the container. In
these situations we can accomplish the same check without SSH by
using the wait_for_connection module (new in ansible 2.3) to verify
that Ansible has a working execution path into the container, but
not necessarily via SSH.
Change-Id: I25978a3043af1df1613f41e479b7f058d64f685d
'ansible_become' defined as a host_var or in the inventory for a host
has a higher precedence than 'become' defined within a playbook.
In change Id5b76a87809f03951c954fc3d752419a673403f7, 'become' was
defined explicitly for each play running against localhost. It will also
need to be defined in plays that delegate to localhost.
Change-Id: Ifb5e907594ca5fba459ee5a90b202e17db081f9a
The kernel module bind mount path is different between
Ubuntu and CentOS. This patch provides the right value
based on the platform.
Change-Id: I6e604414707036e71b3e6ec849bcf18f6f4881a8
Replacing usage of ansible_ssh_host, ansible_ssh_user,
ansible_ssh_port with ansible_host, ansible_user and ansible_port
Depends-On: I35371879a87c115f219cd181245fe59f6d7d3f77
Change-Id: I97c3958c406b44b271d361860516d0b903438a83
Neither the rabbit, nor galera common tasks use
the hostname var that was defined, so we can remove
the var from all test playbooks.
Change-Id: I92c85c2c5c53f4e3d028debcfe925c26ad84284b
Moved Rabbitmq and DB tasks to generic files.
This patch removes the redundant behaviour of the tasks such
as Ensuring Rabbitmq hosts and user, creating db, granting access
to db in the testing yml files. The patch makes it more generic
and shifted the common tasks to separate files create-grant-db.yml
and ensure-rabbitmq.yml
Change-Id: Ibd94e1ebdce45b782ab447ca3db5068588a1e368