diff options
Diffstat (limited to 'mcp/patches/0003-maas-region-force-artifact-download.patch')
-rw-r--r-- | mcp/patches/0003-maas-region-force-artifact-download.patch | 79 |
1 files changed, 0 insertions, 79 deletions
diff --git a/mcp/patches/0003-maas-region-force-artifact-download.patch b/mcp/patches/0003-maas-region-force-artifact-download.patch deleted file mode 100644 index 2982f3621..000000000 --- a/mcp/patches/0003-maas-region-force-artifact-download.patch +++ /dev/null @@ -1,79 +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: Sat, 5 Aug 2017 02:03:01 +0200 -Subject: [PATCH] maas: region: force artifact download - -MaaS configuration fails until all required artifacts are in place, -including bootloaders and target images. - -Hack around this by forcing an explicit artifact sync. - -NOTE: This is probably achievable through existing maas salt custom -module (py) and/or minor rework on that. -This fixup should be temporary at best. - -Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> ---- - maas/files/maas-artifact-sync.sh | 20 ++++++++++++++++++++ - maas/region.sls | 10 +++++++++- - 2 files changed, 29 insertions(+), 1 deletion(-) - create mode 100644 maas/files/maas-artifact-sync.sh - -diff --git a/maas/files/maas-artifact-sync.sh b/maas/files/maas-artifact-sync.sh -new file mode 100644 -index 0000000..1715c51 ---- /dev/null -+++ b/maas/files/maas-artifact-sync.sh -@@ -0,0 +1,20 @@ -+{%- from "maas/map.jinja" import region with context %} -+#!/bin/bash -+function wait_for { -+ local total_attempts=$1; shift -+ local cmdstr=$@ -+ local sleep_time=10 -+ echo -e "\n[NOTE] Waiting for cmd to return success: ${cmdstr}\n" -+ for attempt in $(seq "${total_attempts}"); do -+ eval "${cmdstr}" && break || true -+ echo -n '.'; sleep "${sleep_time}" -+ done -+} -+maas login {{ region.admin.username }} \ -+ http://{{ region.bind.host }}:5240/MAAS/api/2.0 - < \ -+ /var/lib/maas/.maas_credentials || exit 1 -+# wait max 5 min for service up, 15 min image download, 5 min region to rack sync -+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 "true {%- for arch in region.opnfv_arches.split(' ') %} && test -d /var/lib/maas/boot-resources/current/ubuntu/{{ arch }}{%- endfor %}" -diff --git a/maas/region.sls b/maas/region.sls -index aed295d..d6d28bb 100644 ---- a/maas/region.sls -+++ b/maas/region.sls -@@ -161,11 +161,19 @@ maas_login_admin: - - onlyif: /bin/false - {%- endif %} - -+maas_force_artifact_sync: -+ cmd.script: -+ - name: salt://maas/files/maas-artifact-sync.sh -+ - template: jinja -+ - shell: /bin/bash -+ - require: -+ - cmd: maas_login_admin -+ - maas_config: - module.run: - - name: maas.process_maas_config - - require: -- - cmd: maas_login_admin -+ - cmd: maas_force_artifact_sync - {%- if grains.get('kitchen-test') %} - - onlyif: /bin/false - {%- endif %} |