aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Bourke <paul.bourke@oracle.com>2016-08-24 17:21:04 +0100
committerPaul Bourke <paul.bourke@oracle.com>2016-08-25 16:42:09 +0100
commit9f5efc5ea6736001160b49a81ec6274ba6353169 (patch)
tree196fa0f445f73a322260f42af8dd1a16ec881a8b
parentd8755e173ff6744e13fa73cbc4ed6b384c51a3e3 (diff)
downloadkolla-9f5efc5ea6736001160b49a81ec6274ba6353169.tar.gz
kolla-9f5efc5ea6736001160b49a81ec6274ba6353169.zip
Import the Murano core libary as part of setup
In order for Murano to be operational the core library package must be imported [0] Add Ansible tasks to do this idempotently. [0] http://docs.openstack.org/developer/murano/install/manual.html TrivialFix Change-Id: I2c49e9d663595650b885267839012b543505337a
-rw-r--r--ansible/roles/murano/tasks/start.yml39
-rw-r--r--docker/murano/murano-api/Dockerfile.j22
-rw-r--r--docker/murano/murano-base/Dockerfile.j24
-rw-r--r--docker/openstack-base/Dockerfile.j27
-rw-r--r--releasenotes/notes/import-murano-core-library-86f00abaa21cfb94.yaml4
5 files changed, 53 insertions, 3 deletions
diff --git a/ansible/roles/murano/tasks/start.yml b/ansible/roles/murano/tasks/start.yml
index f1c096246..5d8282f12 100644
--- a/ansible/roles/murano/tasks/start.yml
+++ b/ansible/roles/murano/tasks/start.yml
@@ -22,3 +22,42 @@
- "/etc/localtime:/etc/localtime:ro"
- "kolla_logs:/var/log/kolla/"
when: inventory_hostname in groups['murano-api']
+
+- name: Waiting for Murano API service to be ready
+ wait_for:
+ host: "{{ hostvars[inventory_hostname]['ansible_' + api_interface]['ipv4']['address'] }}"
+ port: "{{ murano_api_port }}"
+ connect_timeout: 1
+ timeout: 60
+ run_once: True
+ register: check_murano_port
+ until: check_murano_port | success
+ retries: 10
+ delay: 6
+ when: inventory_hostname in groups['murano-api']
+
+- name: Checking if Murano core library package exists
+ command: "docker exec murano_api murano \
+ --os-username admin \
+ --os-password {{ keystone_admin_password }} \
+ --os-project-name admin \
+ --os-auth-url \
+ {{ admin_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone_admin_port }}/v3 \
+ package-list"
+ register: status
+ changed_when: False
+ run_once: True
+ when: inventory_hostname in groups['murano-api']
+
+- name: Importing Murano core library package
+ command: "docker exec murano_api murano \
+ --os-username admin \
+ --os-password {{ keystone_admin_password }} \
+ --os-project-name admin \
+ --os-auth-url \
+ {{ admin_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone_admin_port }}/v3 \
+ package-import --is-public /io.murano.zip"
+ run_once: True
+ when:
+ - inventory_hostname in groups['murano-api']
+ - status.stdout.find("io.murano") == -1
diff --git a/docker/murano/murano-api/Dockerfile.j2 b/docker/murano/murano-api/Dockerfile.j2
index 611d3131c..76dc174f4 100644
--- a/docker/murano/murano-api/Dockerfile.j2
+++ b/docker/murano/murano-api/Dockerfile.j2
@@ -4,8 +4,10 @@ MAINTAINER {{ maintainer }}
{% if install_type == 'binary' %}
{% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %}
+RUN ln -s /var/cache/murano/meta/io.murano.zip /io.murano.zip
{% set murano_api_packages = ['openstack-murano-api'] %}
{% elif base_distro in ['ubuntu'] %}
+RUN ln -s /usr/share/murano-common/io.murano.zip /io.murano.zip
{% set murano_api_packages = ['murano-api'] %}
{% endif %}
diff --git a/docker/murano/murano-base/Dockerfile.j2 b/docker/murano/murano-base/Dockerfile.j2
index 5649cc56b..295f327a4 100644
--- a/docker/murano/murano-base/Dockerfile.j2
+++ b/docker/murano/murano-base/Dockerfile.j2
@@ -21,7 +21,9 @@ RUN ln -s murano-base-source/* murano \
&& /var/lib/kolla/venv/bin/pip --no-cache-dir install --upgrade -c requirements/upper-constraints.txt /murano \
&& mkdir -p /etc/murano /home/murano \
&& cp -r /murano/etc/murano/* /etc/murano/ \
- && chown -R murano: /etc/murano /home/murano
+ && chown -R murano: /etc/murano /home/murano \
+ && cd murano/meta/io.murano \
+ && zip -r /io.murano.zip *
{% endif %}
diff --git a/docker/openstack-base/Dockerfile.j2 b/docker/openstack-base/Dockerfile.j2
index c3d6dc2a9..99544749a 100644
--- a/docker/openstack-base/Dockerfile.j2
+++ b/docker/openstack-base/Dockerfile.j2
@@ -202,7 +202,8 @@ ENV DEBIAN_FRONTEND noninteractive
'postgresql',
'postgresql-devel',
'python-devel',
- 'sqlite-devel'
+ 'sqlite-devel',
+ 'zip'
] %}
{% elif base_distro in ['ubuntu', 'debian'] %}
{% set openstack_base_packages = [
@@ -217,11 +218,13 @@ ENV DEBIAN_FRONTEND noninteractive
'libyaml-dev',
'libz-dev',
'pkg-config',
- 'git'
+ 'git',
+ 'zip'
] %}
{% endif %}
{{ macros.install_packages(openstack_base_packages | customizable("packages")) }}
+
ADD openstack-base-archive /openstack-base-source
RUN ln -s openstack-base-source/* /requirements \
&& mkdir -p /var/lib/kolla \
diff --git a/releasenotes/notes/import-murano-core-library-86f00abaa21cfb94.yaml b/releasenotes/notes/import-murano-core-library-86f00abaa21cfb94.yaml
new file mode 100644
index 000000000..fde8e8a56
--- /dev/null
+++ b/releasenotes/notes/import-murano-core-library-86f00abaa21cfb94.yaml
@@ -0,0 +1,4 @@
+---
+features:
+ - Import Murano core libary during install required
+ for Murano operation.