aboutsummaryrefslogtreecommitdiffstats
path: root/mcp
diff options
context:
space:
mode:
Diffstat (limited to 'mcp')
-rw-r--r--mcp/config/scenario/defaults.yaml3
-rwxr-xr-xmcp/config/states/maas11
-rw-r--r--mcp/patches/0001-server-Fix-generate_dhparams-j2-var-manipulation.patch41
-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/patches/patches.list1
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/maas_pdf.yml.j212
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-odl-ha/infra/maas.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-pike-odl-ha/infra/maas.yml)8
-rw-r--r--mcp/salt-formulas/maas/machines/set_storage_layout.sls20
9 files changed, 23 insertions, 77 deletions
diff --git a/mcp/config/scenario/defaults.yaml b/mcp/config/scenario/defaults.yaml
index 110ffc704..6affc7da6 100644
--- a/mcp/config/scenario/defaults.yaml
+++ b/mcp/config/scenario/defaults.yaml
@@ -43,8 +43,7 @@ aarch64:
- armband 1100 deb [arch=arm64] http://linux.enea.com/mcp-repos/pike/xenial pike-armband main
pkg:
install:
- - linux-image-generic-hwe-16.04-edge
- - linux-headers-generic-hwe-16.04-edge
+ - linux-generic-hwe-16.04
- python-futures
- salt-minion
control:
diff --git a/mcp/config/states/maas b/mcp/config/states/maas
index 10cfd01bf..ec2458234 100755
--- a/mcp/config/states/maas
+++ b/mcp/config/states/maas
@@ -57,16 +57,7 @@ function maas_fixup() {
sleep 10
done
if [ -n "${fdnodes}" ] || [ -n "${rnodes}" ]; then
- for node_system_id in ${fdnodes} ${rnodes}; do
- # For now, we allocate 30GB (fixed) for / on cmp nodes
- local node_hostname=$(echo "${statusout}" | \
- grep -Pzo 'hostname: \K.+(?=\n.+\n\s+system_id: '"${node_system_id}"')')
- if [[ "${node_hostname}" =~ ^cmp ]]; then
- salt -C 'mas01*' state.apply maas.machines.set_storage_layout \
- pillar="{'system_id': '${node_system_id}', 'lv_size': '32212254720'}"
- sleep 10
- fi
- done
+ salt -C 'mas01*' state.apply maas.machines.storage
salt -C 'mas01*' state.apply maas.machines.deploy
return 1
fi
diff --git a/mcp/patches/0001-server-Fix-generate_dhparams-j2-var-manipulation.patch b/mcp/patches/0001-server-Fix-generate_dhparams-j2-var-manipulation.patch
deleted file mode 100644
index f2141862c..000000000
--- a/mcp/patches/0001-server-Fix-generate_dhparams-j2-var-manipulation.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
-: Copyright (c) 2018 Mirantis Inc., Enea AB and others.
-:
-: All rights reserved. This program and the accompanying materials
-: are made available under the terms of the Apache License, Version 2.0
-: which accompanies this distribution, and is available at
-: http://www.apache.org/licenses/LICENSE-2.0
-::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
-From: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
-Date: Tue, 22 May 2018 19:56:47 +0200
-Subject: [PATCH] server: Fix generate_dhparams j2 var manipulation
-
-Fixes: 621ee472
-
-Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
----
- nginx/server.sls | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/nginx/server.sls b/nginx/server.sls
-index 79287c4..f8c9305 100644
---- a/nginx/server.sls
-+++ b/nginx/server.sls
-@@ -78,14 +78,14 @@ nginx_service:
- - require:
- - pkg: nginx_packages
-
--{%- set generate_dhparams = False %}
-+{%- set generate_dhparams = { 'enabled': False } %}
- {%- for site_name, site in server.get('site', {}).iteritems() %}
- {%- if site.get('ssl', {}).get('enabled') and site.ssl.get('mode', 'secure') == 'secure' %}
-- {%- set generate_dhparams = True %}
-+ {%- do generate_dhparams.update({ 'enabled': True }) %}
- {%- endif %}
- {%- endfor %}
-
--{%- if generate_dhparams %}
-+{%- if generate_dhparams['enabled'] %}
- nginx_generate_dhparams:
- cmd.run:
- - name: openssl dhparam -out /etc/ssl/dhparams.pem 2048
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/patches/patches.list b/mcp/patches/patches.list
index 3cdc646a0..ce59395c5 100644
--- a/mcp/patches/patches.list
+++ b/mcp/patches/patches.list
@@ -5,7 +5,6 @@
# which accompanies this distribution, and is available at
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
-/usr/share/salt-formulas/env: 0001-server-Fix-generate_dhparams-j2-var-manipulation.patch
/usr/share/salt-formulas/env: 0002-maas-region-skip-credentials-update.patch
/usr/share/salt-formulas/env: 0003-maas-region-force-artifact-download.patch
/usr/share/salt-formulas/env: 0004-network.dpdk-Move-ifcfg-br-prv-to-interfaces.u.patch
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..1838590e9 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 %}
@@ -80,5 +82,13 @@ parameters:
architecture: {{ node.node.arch | dpkg_arch }}/generic
distro_series: xenial
hwe_kernel: ${_param:hwe_kernel}
+ {%- if loop.index0 >= node_roles.index('cmp001') %}
+ disk_layout:
+ type: lvm
+ root_device: sda
+ volume_group: vgroot
+ volume_name: lvroot
+ volume_size: 100
+ {%- endif %}
{%- endif %}
{%- endfor %}
diff --git a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/infra/maas.yml b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/infra/maas.yml.j2
index 6662f1fad..153b493ce 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/infra/maas.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/infra/maas.yml.j2
@@ -5,10 +5,18 @@
# 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 %}
+ {%- do cluster_arch.append(node.node.arch) %}
+ {%- endif %}
+{%- endfor %}
---
classes:
- cluster.mcp-pike-common-ha.infra.maas
- cluster.mcp-pike-odl-ha.infra
+{%- if 'aarch64' not in cluster_arch %}
parameters:
_param:
hwe_kernel: 'ga-16.04'
+{%- endif %}
diff --git a/mcp/salt-formulas/maas/machines/set_storage_layout.sls b/mcp/salt-formulas/maas/machines/set_storage_layout.sls
deleted file mode 100644
index 0b7e37153..000000000
--- a/mcp/salt-formulas/maas/machines/set_storage_layout.sls
+++ /dev/null
@@ -1,20 +0,0 @@
-##############################################################################
-# Copyright (c) 2018 Mirantis Inc., Enea AB and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
-{%- from "maas/map.jinja" import region with context %}
-
-maas_login_admin:
- cmd.run:
- - name: "maas-region apikey --username {{ region.admin.username }} > /var/lib/maas/.maas_credentials"
- - unless: 'test -e /var/lib/maas/.maas_credentials'
-
-# TODO: implement set_storage_layout via _modules/maas.py
-set_storage_layout:
- cmd.run:
- - name: "maas login {{ region.admin.username }} http://{{ region.bind.host }}:5240/MAAS/api/2.0 - < /var/lib/maas/.maas_credentials && maas opnfv machine set-storage-layout {{ pillar['system_id'] }} storage_layout={{ pillar['storage_layout'] | default('lvm') }} lv_size={{ pillar['lv_size'] | default('100%') }}"
- - require:
- - cmd: maas_login_admin