From 3d06e07f9c69456dd5fb3b71f56b1b5834f10f63 Mon Sep 17 00:00:00 2001 From: Dmitriy R <dmitriy.r@sitevalley.com> Date: Tue, 17 Jul 2018 17:14:44 +0300 Subject: [PATCH] Added required defaults, env example, Manage LB hook I've decided to add env and required secrets example for easier stratup. Also added missing variables to defaults, as playbook was just failiing without them. Variables regarding rabbitmq were missing. Also, as masakari_venv_download_url is not defined by default, masakari_venv_download had been set to false. Handlers were missing Manage LB task and had wrong variable - masakari-services instead of masakari_services Functional test was missing USER system environment variable. Also test inventory had mistakes. test-masakari-functions.yml wasn't able to pass test due to error. Functional tests moved to voting. Change-Id: I6644d576177f441ca59e9221ce9a2e5b7cc0fc46 --- defaults/main.yml | 8 ++++++++ examples/env.d/masakari.yml | 25 +++++++++++++++++++++++++ examples/masakari_secrets.yml | 3 +++ handlers/main.yml | 5 ++++- tasks/masakari_install.yml | 6 +++--- tests/host_vars/infra1.yml | 2 +- tests/inventory | 11 ++++++----- tests/test-masakari-functional.yml | 1 + tox.ini | 1 + zuul.d/project.yaml | 15 +++------------ 10 files changed, 55 insertions(+), 22 deletions(-) create mode 100644 examples/env.d/masakari.yml create mode 100644 examples/masakari_secrets.yml diff --git a/defaults/main.yml b/defaults/main.yml index ea792de..1683b5b 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -50,6 +50,7 @@ masakari_galera_ssl_ca_cert: "{{ galera_ssl_ca_cert | default('/etc/ssl/certs/ga # venv_download, even when true, will use the fallback method of building the # venv from scratch if the venv download fails. masakari_venv_download: "{{ not masakari_developer_mode | bool }}" +masakari_venv_tag: untagged # Name of the virtual env to deploy into masakari_bin: "/openstack/venvs/masakari-{{ masakari_venv_tag }}/bin" @@ -124,3 +125,10 @@ masakari_services: # pip packages required by this role. The value is picked up # by the py_pkgs lookup. masakari_role_project_group: masakari_all + +## Configuration for RPC communications +masakari_rabbitmq_userid: masakari +masakari_rabbitmq_vhost: /masakari +masakari_rabbitmq_port: 5672 +# Comma separated list of hosts +masakari_rabbitmq_servers: "{{ rabbitmq_all|default('127.0.0.1') }}" diff --git a/examples/env.d/masakari.yml b/examples/env.d/masakari.yml new file mode 100644 index 0000000..7bb68a6 --- /dev/null +++ b/examples/env.d/masakari.yml @@ -0,0 +1,25 @@ +--- +component_skel: + masakari_engine: + belongs_to: + - masakari_all + masakari_api: + belongs_to: + - masakari_all + +container_skel: + masakari_container: + belongs_to: + - instance_ha_containers + - masakari-infra_hosts + contains: + - masakari_engine + - masakari_api + +physical_skel: + instance_ha_containers: + belongs_to: + - all_containers + masakari_hosts: + belongs_to: + - hosts \ No newline at end of file diff --git a/examples/masakari_secrets.yml b/examples/masakari_secrets.yml new file mode 100644 index 0000000..69e21fd --- /dev/null +++ b/examples/masakari_secrets.yml @@ -0,0 +1,3 @@ +masakari_container_mysql_password: +masakari_rabbitmq_password: +masakari_service_password: \ No newline at end of file diff --git a/handlers/main.yml b/handlers/main.yml index 57e19c9..acdbd85 100644 --- a/handlers/main.yml +++ b/handlers/main.yml @@ -18,6 +18,9 @@ name: "{{ item.value.service_name }}" state: restarted daemon_reload: yes - with_dict: "{{ masakari-services }}" + with_dict: "{{ masakari_services }}" when: inventory_hostname in groups[item.value.group] +- meta: noop + listen: Manage LB + when: false \ No newline at end of file diff --git a/tasks/masakari_install.yml b/tasks/masakari_install.yml index f1a2405..2252f7e 100644 --- a/tasks/masakari_install.yml +++ b/tasks/masakari_install.yml @@ -124,9 +124,9 @@ section: masakari option: need_service_restart value: True - when: (masakari_get_venv | changed) or - (masakari_venv_dir | changed) or - (install_packages | changed) or + when: (masakari_get_venv is changed) or + (masakari_venv_dir is changed) or + (install_packages is changed) or (ansible_local is not defined) or ('openstack_ansible' not in ansible_local) or ('masakari' not in ansible_local['openstack_ansible']) or diff --git a/tests/host_vars/infra1.yml b/tests/host_vars/infra1.yml index 671e847..be40819 100644 --- a/tests/host_vars/infra1.yml +++ b/tests/host_vars/infra1.yml @@ -13,6 +13,6 @@ # See the License for the specific language governing permissions and # limitations under the License. -ansible_host: 10.1.1.101 +ansible_host: 10.1.0.2 ansible_become: True ansible_user: root diff --git a/tests/inventory b/tests/inventory index e257362..1f49378 100644 --- a/tests/inventory +++ b/tests/inventory @@ -24,14 +24,15 @@ memcached_all [keystone_all] infra1 -[masakari_all] -masakari1 +[masakari_all:children] +masakari_api +masakari_engine [utility_all] masakari1 [masakari_api] -masakari - -[masakari_all] +masakari1 + +[masakari_engine] masakari1 diff --git a/tests/test-masakari-functional.yml b/tests/test-masakari-functional.yml index 613338a..a9f1e75 100644 --- a/tests/test-masakari-functional.yml +++ b/tests/test-masakari-functional.yml @@ -26,3 +26,4 @@ until: result.status == 200 retries: 5 delay: 10 + diff --git a/tox.ini b/tox.ini index e7a26c3..1f7d4ac 100644 --- a/tox.ini +++ b/tox.ini @@ -18,6 +18,7 @@ passenv = HTTPS_PROXY no_proxy NO_PROXY + USER whitelist_externals = bash setenv = diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml index f58e024..f5e2938 100644 --- a/zuul.d/project.yaml +++ b/zuul.d/project.yaml @@ -14,15 +14,6 @@ # limitations under the License. - project: - check: - jobs: - - openstack-ansible-linters - - openstack-ansible-functional-centos-7: - voting: false - - openstack-ansible-functional-opensuse-423: - voting: false - - openstack-ansible-functional-ubuntu-xenial: - voting: false - gate: - jobs: - - openstack-ansible-linters + templates: + - openstack-ansible-role-jobs +