Files
openstack-ansible-rabbitmq_…/tests/test-rabbitmq-server-functional.yml
Jimmy McCrory b42372bbc9 Upgrade RabbitMQ Server to 3.6.3
Change the default install version of RabbitMQ Server to 3.6.3.

The 3.6.3 Debian package adds support for systemd and no longer leaves a
rabbitmq-server process running for signal handling to the erlang VM.
The `pgrep` command checking that rabbitmq is running has been updated
to search entire process names to account for this change.

Change-Id: I742b03f64cd0232835b7143507e3d3cd14d79f23
2016-07-10 08:49:38 -07:00

68 lines
2.6 KiB
YAML

---
# Copyright 2016, Rackspace US, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
- name: Run functional tests
hosts: rabbitmq_all
user: root
gather_facts: true
vars_files:
- test-vars.yml
tasks:
- name: Check rabbitmq is running
command: "pgrep -f rabbit"
delegate_to: "{{ item }}"
when: ansible_ssh_host == item
with_items:
- 10.100.100.101
- 10.100.100.102
- 10.100.100.103
- name: Open rabbitmq.config
slurp:
src: "/etc/rabbitmq/rabbitmq.config"
register: rabbitmq_config
- name: Open enabled_plugins
slurp:
src: "/etc/rabbitmq/enabled_plugins"
register: enabled_plugins
- name: Read rabbitmq_ssl_cert
stat:
path: "{{ rabbitmq_ssl_cert }}"
register: rabbitmq_ssl_cert_stat
- name: Read rabbitmq_ssl_key
stat:
path: "{{ rabbitmq_ssl_key }}"
register: rabbitmq_ssl_key_stat
- name: Read rabbit files
set_fact:
enabled_plugins_contents: "{{ enabled_plugins.content | b64decode }}"
rabbitmq_config_contents: "{{ rabbitmq_config.content | b64decode }}"
rabbitmq_ssl_cert_checksum: "{{ rabbitmq_ssl_cert_stat.stat.checksum }}"
rabbitmq_ssl_key_checksum: "{{ rabbitmq_ssl_key_stat.stat.checksum }}"
- name: Check files contents
assert:
that:
- "'rabbitmq_management' in enabled_plugins_contents"
- name: Get status of rabbitmq
command: rabbitmqctl status
register: rabbitmqctl_status
- name: Ensure SSL cert/key checksums are identical across cluster
assert:
that:
- hostvars['container1']['rabbitmq_ssl_cert_checksum'] == hostvars['container2']['rabbitmq_ssl_cert_checksum'] == hostvars['container3']['rabbitmq_ssl_cert_checksum']
- hostvars['container1']['rabbitmq_ssl_key_checksum'] == hostvars['container2']['rabbitmq_ssl_key_checksum'] == hostvars['container3']['rabbitmq_ssl_key_checksum']
- name: Ensure expected version of rabbitmq is running
assert:
that: rabbitmqctl_status.stdout | search ("rabbit,\"RabbitMQ\",\"{{ rabbitmq_release_version }}\"")