summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>2017-08-11 00:07:29 +0200
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>2018-05-24 16:13:26 +0000
commitbe45e3157fe19b8905e3a30f7f839a728a6c6df7 (patch)
tree8b8b49143e34b367c2f127af91740a07d46c09f8
parent1410fe255169da5f7abe4cf49293618f4d2df32d (diff)
maas: boot-resources: Dynamic arch list from PDF
Instead of leaving MaaS default to 'amd64', explicitly set the list of architectures to support based on PDF data. Change-Id: I852a3ce156db3df0c090f10c0b45c26058dbb6c6 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
-rw-r--r--mcp/patches/0003-maas-region-force-artifact-download.patch2
-rw-r--r--mcp/patches/0016-Set-boot-source-selections.patch2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/maas_pdf.yml.j24
3 files changed, 5 insertions, 3 deletions
diff --git a/mcp/patches/0003-maas-region-force-artifact-download.patch b/mcp/patches/0003-maas-region-force-artifact-download.patch
index b61a3d1b8..c689881d8 100644
--- a/mcp/patches/0003-maas-region-force-artifact-download.patch
+++ b/mcp/patches/0003-maas-region-force-artifact-download.patch
@@ -70,4 +70,4 @@ new file mode 100644
+wait_for 30 "maas opnfv boot-resources import"
+wait_for 90 "! maas opnfv boot-resources is-importing | grep -q 'true'"
+maas opnfv rack-controllers import-boot-images || exit 3
-+wait_for 30 "test -d /var/lib/maas/boot-resources/current/ubuntu/amd64"
++wait_for 30 "true {%- for arch in region.opnfv_arches %} && test -d /var/lib/maas/boot-resources/current/ubuntu/{{ arch }}{%- endfor %}"
diff --git a/mcp/patches/0016-Set-boot-source-selections.patch b/mcp/patches/0016-Set-boot-source-selections.patch
index ff52681d2..ae7654c64 100644
--- a/mcp/patches/0016-Set-boot-source-selections.patch
+++ b/mcp/patches/0016-Set-boot-source-selections.patch
@@ -21,7 +21,7 @@ diff --git a/maas/region.sls b/maas/region.sls
+boot_source_selections:
+ cmd.run:
-+ - name: "maas login {{ region.admin.username }} http://{{ region.bind.host }}:5240/MAAS/api/2.0 - < /var/lib/maas/.maas_credentials && maas opnfv boot-source-selection update 1 1 release='{{ region.maas_config.default_distro_series }}'"
++ - name: "maas login {{ region.admin.username }} http://{{ region.bind.host }}:5240/MAAS/api/2.0 - < /var/lib/maas/.maas_credentials && maas opnfv boot-source-selection update 1 1 release='{{ region.maas_config.default_distro_series }}' {%- for arch in region.opnfv_arches.split(' ') %} arches='{{ arch }}' {%- endfor %}"
+ - require:
+ - cmd: maas_login_admin
+ - unless: "maas login {{ region.admin.username }} http://{{ region.bind.host }}:5240/MAAS/api/2.0 - < /var/lib/maas/.maas_credentials && maas opnfv boot-source-selections read 1 | grep -q {{ region.maas_config.default_distro_series }}"
diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/maas_pdf.yml.j2 b/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/maas_pdf.yml.j2
index 335b9c747..963a45ef4 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/maas_pdf.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/maas_pdf.yml.j2
@@ -5,7 +5,6 @@
# which accompanies this distribution, and is available at
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
----
{%- set cluster_arch = [] %}
{%- for node in conf.nodes %}
{%- if node.node.arch not in cluster_arch %}
@@ -14,6 +13,7 @@
{%- endfor %}
{%- set net_admin = [conf.idf.net_config.admin.network,
conf.idf.net_config.admin.mask] | join("/") %}
+---
parameters:
maas:
region:
@@ -31,6 +31,8 @@ parameters:
vid: 0
dhcp_on: true
primary_rack: ${_param:infra_maas_node01_hostname}
+ # Space-separated list of dpkg architectures to be supported by MaaS
+ opnfv_arches:{%- for arch in cluster_arch %} {{ arch | dpkg_arch }}{%- endfor %}
sshprefs:
- '{{ conf.MAAS_SSH_KEY }}'
{%- if 'aarch64' in cluster_arch %}