Add support to deploy murano
Needed-By: https://review.opendev.org/677830 Depends-On: https://review.opendev.org/682896 Change-Id: If40e2aa07af9ae3099aeb8f1c58388765d3ddd33
This commit is contained in:
parent
88360784d3
commit
0ff6e1fb34
@ -148,6 +148,11 @@
|
||||
src: https://opendev.org/openstack/openstack-ansible-os_mistral
|
||||
version: master
|
||||
trackbranch: master
|
||||
- name: os_murano
|
||||
scm: git
|
||||
src: https://opendev.org/openstack/openstack-ansible-os_murano
|
||||
version: master
|
||||
trackbranch: master
|
||||
- name: os_neutron
|
||||
scm: git
|
||||
src: https://opendev.org/openstack/openstack-ansible-os_neutron
|
||||
|
3
etc/openstack_deploy/conf.d/murano.yml.aio
Normal file
3
etc/openstack_deploy/conf.d/murano.yml.aio
Normal file
@ -0,0 +1,3 @@
|
||||
murano-infra_hosts:
|
||||
aio1:
|
||||
ip: 172.29.236.100
|
8
etc/openstack_deploy/conf.d/murano.yml.example
Normal file
8
etc/openstack_deploy/conf.d/murano.yml.example
Normal file
@ -0,0 +1,8 @@
|
||||
# The infra nodes that will be running the murano services
|
||||
murano-infra_hosts:
|
||||
infra1:
|
||||
ip: 172.20.236.111
|
||||
infra2:
|
||||
ip: 172.20.236.112
|
||||
infra3:
|
||||
ip: 172.20.236.113
|
@ -87,6 +87,9 @@ container_skel:
|
||||
mistral_container:
|
||||
properties:
|
||||
is_metal: true
|
||||
murano_container:
|
||||
properties:
|
||||
is_metal: true
|
||||
neutron_agents_container:
|
||||
properties:
|
||||
is_metal: true
|
||||
|
@ -197,6 +197,11 @@ mistral_service_password:
|
||||
mistral_galera_password:
|
||||
mistral_oslomsg_rpc_password:
|
||||
|
||||
# Murano Options
|
||||
murano_service_password:
|
||||
murano_galera_password:
|
||||
murano_oslomsg_rpc_password:
|
||||
|
||||
## Rally Options:
|
||||
rally_galera_password:
|
||||
|
||||
|
39
inventory/env.d/murano.yml
Normal file
39
inventory/env.d/murano.yml
Normal file
@ -0,0 +1,39 @@
|
||||
---
|
||||
# Copyright 2019, VEXXHOST, 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.
|
||||
|
||||
component_skel:
|
||||
murano_api:
|
||||
belongs_to:
|
||||
- murano_all
|
||||
murano_engine:
|
||||
belongs_to:
|
||||
- murano_all
|
||||
|
||||
container_skel:
|
||||
murano_container:
|
||||
belongs_to:
|
||||
- os-infra_containers
|
||||
- murano-infra_containers
|
||||
contains:
|
||||
- murano_api
|
||||
- murano_engine
|
||||
|
||||
physical_skel:
|
||||
murano-infra_containers:
|
||||
belongs_to:
|
||||
- all_containers
|
||||
murano-infra_hosts:
|
||||
belongs_to:
|
||||
- hosts
|
@ -291,6 +291,17 @@ haproxy_default_services:
|
||||
haproxy_backend_options:
|
||||
- "httpchk GET / HTTP/1.0\\r\\nUser-agent:\\ osa-haproxy-healthcheck"
|
||||
haproxy_service_enabled: "{{ groups['mistral_all'] is defined and groups['mistral_all'] | length > 0 }}"
|
||||
- service:
|
||||
haproxy_service_name: murano
|
||||
haproxy_backend_nodes: "{{ groups['murano_all'] | default([]) }}"
|
||||
haproxy_ssl: "{{ haproxy_ssl }}"
|
||||
haproxy_port: 8082
|
||||
haproxy_balance_type: http
|
||||
haproxy_backend_options:
|
||||
- "httpchk GET /v1 HTTP/1.0\\r\\nUser-agent:\\ osa-haproxy-healthcheck"
|
||||
haproxy_backend_httpcheck_options:
|
||||
- "expect status 401"
|
||||
haproxy_service_enabled: "{{ groups['murano_all'] is defined and groups['murano_all'] | length > 0 }}"
|
||||
- service:
|
||||
haproxy_service_name: trove
|
||||
haproxy_backend_nodes: "{{ groups['trove_api'] | default([]) }}"
|
||||
|
26
inventory/group_vars/murano_all.yml
Normal file
26
inventory/group_vars/murano_all.yml
Normal file
@ -0,0 +1,26 @@
|
||||
---
|
||||
# Copyright 2019, VEXXHOST, 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.
|
||||
|
||||
murano_service_port: 8082
|
||||
murano_service_proto: http
|
||||
murano_service_publicuri_proto: "{{ openstack_service_publicuri_proto | default(murano_service_proto) }}"
|
||||
murano_service_publicurl: "{{ murano_service_publicuri_proto }}://{{ external_lb_vip_address }}:{{ murano_service_port }}"
|
||||
murano_service_internaluri_proto: "{{ openstack_service_internaluri_proto | default(murano_service_proto) }}"
|
||||
murano_service_internalurl: "{{ murano_service_internaluri_proto }}://{{ internal_lb_vip_address }}:{{ murano_service_port }}"
|
||||
murano_service_adminuri_proto: "{{ openstack_service_adminuri_proto | default(murano_service_proto) }}"
|
||||
murano_service_adminurl: "{{ murano_service_adminuri_proto }}://{{ internal_lb_vip_address }}:{{ murano_service_port }}"
|
||||
murano_service_region: "{{ service_region }}"
|
||||
|
||||
|
@ -163,6 +163,11 @@ mistral_notifier
|
||||
[mistral_executor]
|
||||
[mistral_notifier]
|
||||
|
||||
[murano_all:children]
|
||||
murano_api
|
||||
murano_engine
|
||||
[murano_api]
|
||||
[murano_engine]
|
||||
|
||||
[neutron_all:children]
|
||||
neutron_agent
|
||||
|
@ -44,6 +44,7 @@ keystone_install_method: distro
|
||||
keystone_bin: /usr/bin
|
||||
magnum_install_method: distro
|
||||
masakari_install_method: distro
|
||||
murano_install_method: distro
|
||||
monasca_install_method: distro
|
||||
monasca-agent_install_method: distro
|
||||
monasca-ui_install_method: distro
|
||||
|
@ -250,6 +250,12 @@ mistral_git_install_branch: e4f62dab1d6160f2a41cd05b0ec893d7dcc55989 # HEAD as
|
||||
mistral_git_project_group: mistral_all
|
||||
mistral_git_track_branch: master
|
||||
|
||||
## Murano service
|
||||
murano_git_repo: https://opendev.org/openstack/murano
|
||||
murano_git_install_branch: f278aac4a836d20a7b8d01e290b5cf402a65ed3a # HEAD as of 22.08.2019
|
||||
murano_git_project_group: murano_all
|
||||
murano_git_track_branch: master
|
||||
|
||||
## Trove service
|
||||
trove_git_repo: https://opendev.org/openstack/trove
|
||||
trove_git_install_branch: cdac6278aff0ad564a881d16368bbdf9be732b99 # HEAD as of 30.09.2019
|
||||
|
41
playbooks/os-murano-install.yml
Normal file
41
playbooks/os-murano-install.yml
Normal file
@ -0,0 +1,41 @@
|
||||
---
|
||||
# Copyright 2019, VEXXHOST, 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: Install murano components
|
||||
hosts: murano_all
|
||||
gather_facts: "{{ osa_gather_facts | default(True) }}"
|
||||
environment: "{{ deployment_environment_variables | default({}) }}"
|
||||
user: root
|
||||
vars_files:
|
||||
- "defaults/{{ install_method }}_install.yml"
|
||||
tags:
|
||||
- murano
|
||||
pre_tasks:
|
||||
- include_tasks: "common-tasks/os-{{ container_tech | default('lxc') }}-container-setup.yml"
|
||||
when: not is_metal
|
||||
|
||||
- include_tasks: common-tasks/unbound-clients.yml
|
||||
when:
|
||||
- hostvars['localhost']['resolvconf_enabled'] | bool
|
||||
|
||||
- name: Configure package proxy cache
|
||||
include_tasks: common-tasks/package-cache-proxy.yml
|
||||
when: install_method == "source"
|
||||
|
||||
roles:
|
||||
- role: "os_murano"
|
||||
- role: "system_crontab_coordination"
|
||||
tags:
|
||||
- crontab
|
@ -38,6 +38,7 @@
|
||||
- import_playbook: os-masakari-install.yml
|
||||
- import_playbook: os-manila-install.yml
|
||||
- import_playbook: os-mistral-install.yml
|
||||
- import_playbook: os-murano-install.yml
|
||||
|
||||
# This is not an OpenStack service, but integrates with Keystone and must be
|
||||
# deployed afterward.
|
||||
|
4
releasenotes/notes/add-murano-to-repo-ffsdgsdhgb332
Normal file
4
releasenotes/notes/add-murano-to-repo-ffsdgsdhgb332
Normal file
@ -0,0 +1,4 @@
|
||||
---
|
||||
features:
|
||||
- A new playbook ``os-murano-install.yml`` has been added which will deploy the new murano
|
||||
service to hosts assigned to the host group ``murano-infra_hosts``.
|
@ -179,6 +179,9 @@
|
||||
- src: user_variables_manila.yml.j2
|
||||
dest: user_variables_manila.yml
|
||||
condition: "{{ 'manila' in bootstrap_host_scenarios_expanded }}"
|
||||
- src: user_variables_murano.yml.j2
|
||||
dest: user_variables_murano.yml
|
||||
condition: "{{ 'murano' in bootstrap_host_scenarios_expanded }}"
|
||||
- src: user_variables_calico.yml.j2
|
||||
dest: user_variables_calico.yml
|
||||
condition: "{{ 'calico' in bootstrap_host_scenarios_expanded }}"
|
||||
|
@ -0,0 +1,30 @@
|
||||
---
|
||||
# Copyright 2019, VEXXHOST, 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.
|
||||
|
||||
tempest_test_whitelist:
|
||||
- murano_tempest_tests.tests.api.application_catalog
|
||||
|
||||
tempest_tempest_conf_overrides:
|
||||
application_catalog:
|
||||
deployment_tests: True
|
||||
endpoint_type: internalURL
|
||||
linux_image: cirros
|
||||
|
||||
tempest_flavors:
|
||||
- name: m1.tiny
|
||||
id: 203
|
||||
ram: 256
|
||||
disk: 5
|
||||
vcpus: 1
|
@ -38,6 +38,9 @@ bootstrap_host_scenarios_expanded: |-
|
||||
{% if 'ironic' in bootstrap_host_scenarios %}
|
||||
{% set _ = scenario_list.extend(['swift']) %}
|
||||
{% endif %}
|
||||
{% if 'murano' in bootstrap_host_scenarios %}
|
||||
{% set _ = scenario_list.extend(['heat']) %}
|
||||
{% endif %}
|
||||
{% if 'telemetry' in bootstrap_host_scenarios %}
|
||||
{% set _ = scenario_list.extend(['aodh', 'ceilometer', 'gnocchi', 'panko']) %}
|
||||
{% endif %}
|
||||
|
@ -309,6 +309,13 @@ class TestAnsibleInventoryFormatConstraints(unittest.TestCase):
|
||||
'mistral_engine',
|
||||
'mistral_executor',
|
||||
'mistral_notifier',
|
||||
'murano-infra_all',
|
||||
'murano-infra_containers',
|
||||
'murano-infra_hosts',
|
||||
'murano_all',
|
||||
'murano_container',
|
||||
'murano_api',
|
||||
'murano_engine',
|
||||
'mano_all',
|
||||
'mano_containers',
|
||||
'mano_hosts',
|
||||
|
Loading…
Reference in New Issue
Block a user