From 8d0731eecbb4c7f78e23c8a7e93004da7593afbe Mon Sep 17 00:00:00 2001 From: Alexandru Avadanii Date: Thu, 24 Aug 2017 17:10:33 +0200 Subject: p/fuel: Rebase after MaaS retry got upstream Change-Id: I321fcb4aa77ebcb4595a9468c2257fef8b9a8ed6 Signed-off-by: Alexandru Avadanii --- ...-salt-formulas-Add-enable-armband-formula.patch | 8 +- ...etwork-public-Use-arm-virtual2-POD-config.patch | 6 +- ...twork-public-mgmt-Use-arm-pod3-POD-config.patch | 8 +- ...lt-formulas-armband-Extend-libvirt_domain.patch | 4 +- ...p-salt-formulas-armband-AArch64-bootstrap.patch | 6 +- .../0018-MaaS-commissioning-deployment-retry.patch | 168 --------------------- ...lt-master-Increase-command_timeout-to-15s.patch | 38 +++++ ...ploy.sh-states-bash-debug-continue-on-err.patch | 111 -------------- ...-maas-rm-Ubuntu-boot-entry-on-EFI-systems.patch | 41 +++++ ...lt-master-Increase-command_timeout-to-15s.patch | 38 ----- ...-maas-rm-Ubuntu-boot-entry-on-EFI-systems.patch | 41 ----- 11 files changed, 95 insertions(+), 374 deletions(-) delete mode 100644 patches/opnfv-fuel/0018-MaaS-commissioning-deployment-retry.patch create mode 100644 patches/opnfv-fuel/0018-salt-master-Increase-command_timeout-to-15s.patch delete mode 100644 patches/opnfv-fuel/0019-ci-deploy.sh-states-bash-debug-continue-on-err.patch create mode 100644 patches/opnfv-fuel/0019-states-maas-rm-Ubuntu-boot-entry-on-EFI-systems.patch delete mode 100644 patches/opnfv-fuel/0020-salt-master-Increase-command_timeout-to-15s.patch delete mode 100644 patches/opnfv-fuel/0021-states-maas-rm-Ubuntu-boot-entry-on-EFI-systems.patch diff --git a/patches/opnfv-fuel/0004-mcp-salt-formulas-Add-enable-armband-formula.patch b/patches/opnfv-fuel/0004-mcp-salt-formulas-Add-enable-armband-formula.patch index b053b699..82cc1a3e 100644 --- a/patches/opnfv-fuel/0004-mcp-salt-formulas-Add-enable-armband-formula.patch +++ b/patches/opnfv-fuel/0004-mcp-salt-formulas-Add-enable-armband-formula.patch @@ -36,10 +36,10 @@ Signed-off-by: Alexandru Avadanii create mode 100644 mcp/salt-formulas/armband/vgabios.sls diff --git a/mcp/config/states/maas b/mcp/config/states/maas -index fecd991..85cee8c 100755 +index 31625d8..1e14e5f 100755 --- a/mcp/config/states/maas +++ b/mcp/config/states/maas -@@ -51,6 +51,7 @@ wait_for "! salt '*' test.ping | tee /dev/stderr | fgrep -q 'Not connected'" +@@ -81,6 +81,7 @@ wait_for 90 "! salt '*' test.ping | tee /dev/stderr | fgrep -q 'Not connected'" salt -C '* and not cfg01* and not mas01*' state.apply linux,ntp @@ -48,10 +48,10 @@ index fecd991..85cee8c 100755 salt -C '* and not cfg01* and not mas01*' state.apply salt diff --git a/mcp/config/states/openstack b/mcp/config/states/openstack -index 57ca585..23aaf72 100755 +index 5ded58c..270bf35 100755 --- a/mcp/config/states/openstack +++ b/mcp/config/states/openstack -@@ -23,3 +23,5 @@ salt -I 'neutron:gateway' state.sls neutron +@@ -26,3 +26,5 @@ salt -I 'neutron:gateway' state.sls neutron salt -I 'nova:compute' state.sls nova salt -I 'horizon:server' state.sls horizon diff --git a/patches/opnfv-fuel/0005-network-public-Use-arm-virtual2-POD-config.patch b/patches/opnfv-fuel/0005-network-public-Use-arm-virtual2-POD-config.patch index fb678ce5..64bd7079 100644 --- a/patches/opnfv-fuel/0005-network-public-Use-arm-virtual2-POD-config.patch +++ b/patches/opnfv-fuel/0005-network-public-Use-arm-virtual2-POD-config.patch @@ -37,10 +37,10 @@ Signed-off-by: Alexandru Avadanii 8 files changed, 16 insertions(+), 16 deletions(-) diff --git a/mcp/config/states/networks b/mcp/config/states/networks -index 6f294ce..fced1eb 100755 +index 505153a..bd6e923 100755 --- a/mcp/config/states/networks +++ b/mcp/config/states/networks -@@ -9,7 +9,7 @@ PUBLIC_NET=$(salt --out yaml 'cmp*' pillar.get _param:external_address | \ +@@ -10,7 +10,7 @@ PUBLIC_NET=$(salt --out yaml 'cmp*' pillar.get _param:external_address | \ pillar.get _param:openstack_compute_node01_external_address | \ awk --re-interval '/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/{print $2; exit}') @@ -49,7 +49,7 @@ index 6f294ce..fced1eb 100755 salt 'ctl01*' cmd.run ". /root/keystonercv3; \ openstack compute service list; \ -@@ -20,6 +20,6 @@ salt 'ctl01*' cmd.run ". /root/keystonercv3; \ +@@ -21,6 +21,6 @@ salt 'ctl01*' cmd.run ". /root/keystonercv3; \ openstack network create --external --default --provider-network-type flat \ --provider-physical-network physnet1 floating_net" salt 'ctl01*' cmd.run ". /root/keystonercv3; \ diff --git a/patches/opnfv-fuel/0010-network-public-mgmt-Use-arm-pod3-POD-config.patch b/patches/opnfv-fuel/0010-network-public-mgmt-Use-arm-pod3-POD-config.patch index beb90533..bbfaf5e3 100644 --- a/patches/opnfv-fuel/0010-network-public-mgmt-Use-arm-pod3-POD-config.patch +++ b/patches/opnfv-fuel/0010-network-public-mgmt-Use-arm-pod3-POD-config.patch @@ -13,7 +13,7 @@ Signed-off-by: Alexandru Avadanii 4 files changed, 43 insertions(+), 43 deletions(-) diff --git a/ci/deploy.sh b/ci/deploy.sh -index cf7b3b3..2b4e724 100755 +index f51ba5f..5582727 100755 --- a/ci/deploy.sh +++ b/ci/deploy.sh @@ -139,7 +139,7 @@ URI_REGEXP='(file|https?|ftp)://.*' @@ -26,17 +26,17 @@ index cf7b3b3..2b4e724 100755 # Variables below are disabled for now, to be re-introduced or removed later diff --git a/mcp/config/states/maas b/mcp/config/states/maas -index 85cee8c..46bad6f 100755 +index 1e14e5f..db0241b 100755 --- a/mcp/config/states/maas +++ b/mcp/config/states/maas -@@ -20,7 +20,7 @@ salt -C 'mas01*' state.apply linux.network.interface +@@ -52,7 +52,7 @@ salt -C 'mas01*' state.apply linux.network.interface salt -C 'mas01*' state.apply maas.pxe_nat salt -C 'mas01*' state.apply maas.cluster salt -C 'cfg01*' cmd.run \ - "route add -net 192.168.11.0/24 gw ${MAAS_IP:-192.168.10.3}" + "route add -net 192.168.11.0/24 gw ${MAAS_IP:-192.168.10.2}" - wait_for "salt -C 'mas01*' state.apply maas.region" + wait_for 10 "salt -C 'mas01*' state.apply maas.region" diff --git a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/init.yml b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/init.yml index 93e2de0..1d75356 100644 diff --git a/patches/opnfv-fuel/0014-mcp-salt-formulas-armband-Extend-libvirt_domain.patch b/patches/opnfv-fuel/0014-mcp-salt-formulas-armband-Extend-libvirt_domain.patch index b1e675b2..c9eca2d1 100644 --- a/patches/opnfv-fuel/0014-mcp-salt-formulas-armband-Extend-libvirt_domain.patch +++ b/patches/opnfv-fuel/0014-mcp-salt-formulas-armband-Extend-libvirt_domain.patch @@ -21,10 +21,10 @@ Signed-off-by: Alexandru Avadanii create mode 100644 mcp/salt-formulas/armband/libvirt_domain_template.sls diff --git a/mcp/config/states/maas b/mcp/config/states/maas -index 46bad6f..9fe7de0 100755 +index db0241b..fcb8ce3 100755 --- a/mcp/config/states/maas +++ b/mcp/config/states/maas -@@ -51,7 +51,7 @@ wait_for "! salt '*' test.ping | tee /dev/stderr | fgrep -q 'Not connected'" +@@ -81,7 +81,7 @@ wait_for 90 "! salt '*' test.ping | tee /dev/stderr | fgrep -q 'Not connected'" salt -C '* and not cfg01* and not mas01*' state.apply linux,ntp diff --git a/patches/opnfv-fuel/0016-mcp-salt-formulas-armband-AArch64-bootstrap.patch b/patches/opnfv-fuel/0016-mcp-salt-formulas-armband-AArch64-bootstrap.patch index dc8993fc..154b8241 100644 --- a/patches/opnfv-fuel/0016-mcp-salt-formulas-armband-AArch64-bootstrap.patch +++ b/patches/opnfv-fuel/0016-mcp-salt-formulas-armband-AArch64-bootstrap.patch @@ -24,16 +24,16 @@ Signed-off-by: Alexandru Avadanii create mode 100644 mcp/salt-formulas/armband/files/cloud.py.diff diff --git a/mcp/config/states/maas b/mcp/config/states/maas -index 9fe7de0..0cf4f68 100755 +index fcb8ce3..12ef9ed 100755 --- a/mcp/config/states/maas +++ b/mcp/config/states/maas -@@ -46,6 +46,7 @@ salt -C '* and not cfg01* and not mas01*' saltutil.sync_all +@@ -76,6 +76,7 @@ salt -C '* and not cfg01* and not mas01*' saltutil.sync_all salt -C 'kvm*' pkg.install bridge-utils salt -C 'kvm*' state.apply linux.network +salt -C 'kvm*' state.apply armband.bootstrap_script_arm64 salt -C 'kvm*' system.reboot - wait_for "! salt '*' test.ping | tee /dev/stderr | fgrep -q 'Not connected'" + wait_for 90 "! salt '*' test.ping | tee /dev/stderr | fgrep -q 'Not connected'" diff --git a/mcp/salt-formulas/armband/bootstrap_script_arm64.sls b/mcp/salt-formulas/armband/bootstrap_script_arm64.sls new file mode 100644 diff --git a/patches/opnfv-fuel/0018-MaaS-commissioning-deployment-retry.patch b/patches/opnfv-fuel/0018-MaaS-commissioning-deployment-retry.patch deleted file mode 100644 index 3a26d9b0..00000000 --- a/patches/opnfv-fuel/0018-MaaS-commissioning-deployment-retry.patch +++ /dev/null @@ -1,168 +0,0 @@ -From: Alexandru Avadanii -Date: Wed, 23 Aug 2017 04:23:26 +0200 -Subject: [PATCH] MaaS: commissioning/deployment retry - -While at it, parametrize max attempt number in maas state's "wait_for", -and reduce retries count for certain simpler tasks. - -Change-Id: I3ac2877719cdd32613bcf41186ebbb9f3f3aee93 -Signed-off-by: Alexandru Avadanii ---- - mcp/config/states/maas | 63 ++++++++++++++++------ - mcp/salt-formulas/maas/machines/delete.sls | 12 +++++ - .../maas/machines/mark_broken_fixed.sls | 12 +++++ - 3 files changed, 70 insertions(+), 17 deletions(-) - create mode 100644 mcp/salt-formulas/maas/machines/delete.sls - create mode 100644 mcp/salt-formulas/maas/machines/mark_broken_fixed.sls - -diff --git a/mcp/config/states/maas b/mcp/config/states/maas -index 0cf4f68..080bbf5 100755 ---- a/mcp/config/states/maas -+++ b/mcp/config/states/maas -@@ -1,17 +1,47 @@ - #!/bin/bash - function wait_for() { -+ local total_attempts=$1; shift - local cmdstr=$@ -- local total_attempts=360 - local sleep_time=10 -- local attempt=1 - echo "[NOTE] Waiting for cmd to return success: ${cmdstr}" -- while ((attempt <= total_attempts)); do -+ for attempt in $(seq "${total_attempts}"); do - eval "${cmdstr}" && break || true - echo -n '.'; sleep "${sleep_time}" -- ((attempt+=1)) - done - } - -+# Wait for MaaS commissioning/deploy to finish, retry on failure -+function maas_fixup() { -+ local statuscmd="salt 'mas01*' --out yaml state.apply maas.machines.status" -+ wait_for 180 "${statuscmd} | tee /dev/stderr | " \ -+ "grep -Eq '((Deployed|Ready): 5|status:Failed|status:Allocated)'" -+ local statusout=$(eval "${statuscmd}") -+ -+ local fcnodes=$(echo "${statusout}" | \ -+ grep -Po '(?<=system_id:)(.*)(?=,status:Failed commissioning)') -+ for node_system_id in ${fcnodes}; do -+ salt -C 'mas01*' state.apply maas.machines.delete \ -+ pillar="{'system_id': '${node_system_id}'}" -+ done -+ if [ -n "${fcnodes}" ]; then -+ salt -C 'mas01*' state.apply maas.machines -+ return 1 -+ fi -+ -+ local fdnodes=$(echo "${statusout}" | \ -+ grep -Po '(?<=system_id:)(.*)(?=,status:(Failed deployment|Allocated))') -+ for node_system_id in ${fdnodes}; do -+ salt -C 'mas01*' state.apply maas.machines.mark_broken_fixed \ -+ pillar="{'system_id': '${node_system_id}'}" -+ done -+ if [ -n "${fdnodes}" ]; then -+ salt -C 'mas01*' state.apply maas.machines.deploy -+ return 1 -+ fi -+ -+ return 0 -+} -+ - # MaaS rack/region controller, node commissioning - salt -C 'mas01*' cmd.run "add-apt-repository ppa:maas/stable" - -@@ -22,20 +52,18 @@ salt -C 'mas01*' state.apply maas.cluster - salt -C 'cfg01*' cmd.run \ - "route add -net 192.168.11.0/24 gw ${MAAS_IP:-192.168.10.2}" - --wait_for "salt -C 'mas01*' state.apply maas.region" -+wait_for 10 "salt -C 'mas01*' state.apply maas.region" - - salt -C 'mas01*' state.apply maas.machines --# TODO: relax cond, as this is not re-entrant (e.g. nodes already deployed) --wait_for "salt 'mas01*' --out yaml state.apply maas.machines.status | " \ -- "tee /dev/stderr | fgrep -q 'Ready: 5'" -+wait_for 10 maas_fixup - - # cleanup outdated salt keys --salt-key --out yaml | awk '!/^(minions|- cfg01|- mas01)/ {print $2}' | xargs -I{} salt-key -yd {} -+salt-key --out yaml | awk '!/^(minions|- cfg01|- mas01)/ {print $2}' | \ -+ xargs -I{} salt-key -yd {} - - # MaaS node deployment - salt -C 'mas01*' state.apply maas.machines.deploy --wait_for "salt 'mas01*' --out yaml state.apply maas.machines.status | " \ -- "tee /dev/stderr | fgrep -q 'Deployed: 5'" -+wait_for 10 maas_fixup - - salt -C 'mas01*' pillar.item\ - maas:region:admin:username \ -@@ -48,7 +76,7 @@ salt -C 'kvm*' pkg.install bridge-utils - salt -C 'kvm*' state.apply linux.network - salt -C 'kvm*' state.apply armband.bootstrap_script_arm64 - salt -C 'kvm*' system.reboot --wait_for "! salt '*' test.ping | tee /dev/stderr | fgrep -q 'Not connected'" -+wait_for 90 "! salt '*' test.ping | tee /dev/stderr | fgrep -q 'Not connected'" - - salt -C '* and not cfg01* and not mas01*' state.apply linux,ntp - -@@ -59,7 +87,8 @@ salt -C '* and not cfg01* and not mas01*' state.apply salt - salt -C 'kvm*' saltutil.sync_all - salt -C 'kvm*' state.sls salt.control - --vcp_nodes=$(salt --out yaml 'kvm01*' pillar.get salt:control:cluster:internal:node | awk '/\s+\w+:$/ {gsub(/:$/, "*"); print $1}') -+vcp_nodes=$(salt --out yaml 'kvm01*' pillar.get salt:control:cluster:internal:node | \ -+ awk '/\s+\w+:$/ {gsub(/:$/, "*"); print $1}') - - # Check all vcp nodes are available - rc=1 -@@ -71,9 +100,9 @@ while [ $rc -ne 0 ]; do - sleep 5 - done - --wait_for "salt -C '* and not cfg01* and not mas01*' ssh.set_auth_key ${SUDO_USER} \ -+wait_for 10 "salt -C '* and not cfg01* and not mas01*' ssh.set_auth_key ${SUDO_USER} \ - $(awk 'NR==1{print $2}' $(eval echo ~${SUDO_USER}/.ssh/authorized_keys))" - --wait_for "salt -C '* and not cfg01* and not mas01*' saltutil.sync_all" --salt -C '* and not cfg01* and not mas01*' state.apply salt --wait_for "salt -C '* and not cfg01* and not mas01*' state.apply linux,ntp" -+wait_for 10 "salt -C '* and not cfg01* and not mas01*' saltutil.sync_all" -+wait_for 10 "salt -C '* and not cfg01* and not mas01*' state.apply salt" -+wait_for 10 "salt -C '* and not cfg01* and not mas01*' state.apply linux,ntp" -diff --git a/mcp/salt-formulas/maas/machines/delete.sls b/mcp/salt-formulas/maas/machines/delete.sls -new file mode 100644 -index 0000000..306dbca ---- /dev/null -+++ b/mcp/salt-formulas/maas/machines/delete.sls -@@ -0,0 +1,12 @@ -+{%- 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" -+ -+# TODO: implement delete_machine via _modules/maas.py -+delete_machine: -+ 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 delete {{ pillar['system_id'] }}" -+ - require: -+ - cmd: maas_login_admin -diff --git a/mcp/salt-formulas/maas/machines/mark_broken_fixed.sls b/mcp/salt-formulas/maas/machines/mark_broken_fixed.sls -new file mode 100644 -index 0000000..874718f ---- /dev/null -+++ b/mcp/salt-formulas/maas/machines/mark_broken_fixed.sls -@@ -0,0 +1,12 @@ -+{%- 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" -+ -+# TODO: implement mark_broken_fixed_machine via _modules/maas.py -+mark_broken_fixed_machine: -+ 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 mark-broken {{ pillar['system_id'] }} && maas opnfv machine mark-fixed {{ pillar['system_id'] }}" -+ - require: -+ - cmd: maas_login_admin diff --git a/patches/opnfv-fuel/0018-salt-master-Increase-command_timeout-to-15s.patch b/patches/opnfv-fuel/0018-salt-master-Increase-command_timeout-to-15s.patch new file mode 100644 index 00000000..3380de0a --- /dev/null +++ b/patches/opnfv-fuel/0018-salt-master-Increase-command_timeout-to-15s.patch @@ -0,0 +1,38 @@ +From: Alexandru Avadanii +Date: Thu, 24 Aug 2017 03:50:11 +0200 +Subject: [PATCH] salt-master: Increase command_timeout to 15s + +Default command timeout (10s) is sometimes too small for all minions +to return within the required timeslot. Increase it by 50%. + +While at it, increase the timeout used for executing the "linux" +state against all nodes to 60s, just to be on the safe side. + +Signed-off-by: Alexandru Avadanii +--- + mcp/config/states/maas | 2 +- + mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/config.yml | 1 + + 2 files changed, 2 insertions(+), 1 deletion(-) + +diff --git a/mcp/config/states/maas b/mcp/config/states/maas +index 12ef9ed..14f32ee 100755 +--- a/mcp/config/states/maas ++++ b/mcp/config/states/maas +@@ -107,4 +107,4 @@ wait_for 10 "salt -C '* and not cfg01* and not mas01*' ssh.set_auth_key ${SUDO_U + + wait_for 10 "salt -C '* and not cfg01* and not mas01*' saltutil.sync_all" + wait_for 10 "salt -C '* and not cfg01* and not mas01*' state.apply salt" +-wait_for 10 "salt -C '* and not cfg01* and not mas01*' state.apply linux,ntp" ++wait_for 10 "salt -C '* and not cfg01* and not mas01*' state.apply linux,ntp -t 60" +diff --git a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/config.yml b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/config.yml +index 7d95ebc..46526da 100644 +--- a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/config.yml ++++ b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/config.yml +@@ -37,6 +37,7 @@ parameters: + salt: + master: + accept_policy: open_mode ++ command_timeout: 15 + reclass: + storage: + data_source: diff --git a/patches/opnfv-fuel/0019-ci-deploy.sh-states-bash-debug-continue-on-err.patch b/patches/opnfv-fuel/0019-ci-deploy.sh-states-bash-debug-continue-on-err.patch deleted file mode 100644 index 36e8abc5..00000000 --- a/patches/opnfv-fuel/0019-ci-deploy.sh-states-bash-debug-continue-on-err.patch +++ /dev/null @@ -1,111 +0,0 @@ -From: Alexandru Avadanii -Date: Wed, 23 Aug 2017 16:28:04 +0200 -Subject: [PATCH] ci/deploy.sh, states: bash debug, continue on err - -Since we don't `set -e` in state files, applying each state will -always succeed unless the last instruction in the state fails. -Make this uniform by always succeeding in applying the state. - -While at it, enable bash debugging logs, for better readability -of deploy log files. - -Change-Id: I3cf4886f6d73c6fd1380df1a4e1413334bec1701 -Signed-off-by: Alexandru Avadanii ---- - ci/deploy.sh | 2 +- - mcp/config/states/dpdk | 3 +++ - mcp/config/states/maas | 2 ++ - mcp/config/states/networks | 1 + - mcp/config/states/neutron_compute | 3 +++ - mcp/config/states/opendaylight | 3 +++ - mcp/config/states/openstack | 3 +++ - mcp/config/states/openstack_ha | 3 +++ - 8 files changed, 19 insertions(+), 1 deletion(-) - -diff --git a/ci/deploy.sh b/ci/deploy.sh -index 2b4e724..5582727 100755 ---- a/ci/deploy.sh -+++ b/ci/deploy.sh -@@ -336,7 +336,7 @@ for state in "${cluster_states[@]}"; do - notify "STATE: ${state}\n" 2 - # shellcheck disable=SC2086,2029 - ssh ${SSH_OPTS} "ubuntu@${SALT_MASTER}" \ -- sudo "/root/fuel/mcp/config/states/${state}" -+ sudo "/root/fuel/mcp/config/states/${state} || true" - done - - popd > /dev/null -diff --git a/mcp/config/states/dpdk b/mcp/config/states/dpdk -index 8834d47..c6cd2a5 100755 ---- a/mcp/config/states/dpdk -+++ b/mcp/config/states/dpdk -@@ -1,3 +1,6 @@ -+#!/bin/bash -+set -x -+ - salt -I 'nova:compute' system.reboot - while true; do salt -I 'nova:compute' test.ping | fgrep -q 'Not connected' || break; done - salt -I 'nova:compute' state.sls linux.network.dpdk -diff --git a/mcp/config/states/maas b/mcp/config/states/maas -index 080bbf5..12ef9ed 100755 ---- a/mcp/config/states/maas -+++ b/mcp/config/states/maas -@@ -1,4 +1,6 @@ - #!/bin/bash -+set -x -+ - function wait_for() { - local total_attempts=$1; shift - local cmdstr=$@ -diff --git a/mcp/config/states/networks b/mcp/config/states/networks -index fced1eb..bd6e923 100755 ---- a/mcp/config/states/networks -+++ b/mcp/config/states/networks -@@ -1,4 +1,5 @@ - #!/bin/bash -+set -x - - # Determine public network based on external IPs from compute node - # NOTE: mask currently hardcoded to /24 -diff --git a/mcp/config/states/neutron_compute b/mcp/config/states/neutron_compute -index e2ffec6..d581621 100755 ---- a/mcp/config/states/neutron_compute -+++ b/mcp/config/states/neutron_compute -@@ -1 +1,4 @@ -+#!/bin/bash -+set -x -+ - salt -I 'neutron:compute' state.sls neutron -diff --git a/mcp/config/states/opendaylight b/mcp/config/states/opendaylight -index 3b1cf75..bee4c85 100755 ---- a/mcp/config/states/opendaylight -+++ b/mcp/config/states/opendaylight -@@ -1,3 +1,6 @@ -+#!/bin/bash -+set -x -+ - salt -I 'opendaylight:server' state.sls opendaylight - salt -I 'opendaylight:client' state.sls opendaylight.client - salt -I 'neutron:server' state.sls opendaylight.client -diff --git a/mcp/config/states/openstack b/mcp/config/states/openstack -index 23aaf72..270bf35 100755 ---- a/mcp/config/states/openstack -+++ b/mcp/config/states/openstack -@@ -1,3 +1,6 @@ -+#!/bin/bash -+set -x -+ - salt -I 'rabbitmq:server' state.sls rabbitmq - salt -I 'rabbitmq:server' cmd.run "rabbitmqctl status" - -diff --git a/mcp/config/states/openstack_ha b/mcp/config/states/openstack_ha -index 4a39d51..2597e82 100755 ---- a/mcp/config/states/openstack_ha -+++ b/mcp/config/states/openstack_ha -@@ -1,3 +1,6 @@ -+#!/bin/bash -+set -x -+ - salt -I 'keepalived:cluster' state.sls keepalived -b 1 - salt -I 'keepalived:cluster' pillar.get keepalived:cluster:instance:VIP:address - diff --git a/patches/opnfv-fuel/0019-states-maas-rm-Ubuntu-boot-entry-on-EFI-systems.patch b/patches/opnfv-fuel/0019-states-maas-rm-Ubuntu-boot-entry-on-EFI-systems.patch new file mode 100644 index 00000000..792774f3 --- /dev/null +++ b/patches/opnfv-fuel/0019-states-maas-rm-Ubuntu-boot-entry-on-EFI-systems.patch @@ -0,0 +1,41 @@ +From: Alexandru Avadanii +Date: Thu, 24 Aug 2017 04:09:59 +0200 +Subject: [PATCH] states/maas: rm Ubuntu boot entry on EFI systems + +On EFI-enabled systems, grub-install from grub-efi-* package +installs a boot entry named "ubuntu". + +MaaS relies on IPMI to set boot order to PXE first; however +on systems with buggy firmware or without full IPMI support, +that fails, leading to booting Ubuntu from hard disk instead. + +Work around this by clearing any previous Ubuntu boot entry +from board flash. + +NOTE: This only runs against nodes that are online from a +previous deploy, and already automatically registered with +the new Salt master node. + +Closes: ARMBAND-47 + +Signed-off-by: Alexandru Avadanii +--- + mcp/config/states/maas | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/mcp/config/states/maas b/mcp/config/states/maas +index 14f32ee..b9f3ac6 100755 +--- a/mcp/config/states/maas ++++ b/mcp/config/states/maas +@@ -44,6 +44,11 @@ function maas_fixup() { + return 0 + } + ++# UEFI: Clean up Ubuntu boot entry if kvm node online from previous deploy ++salt -C 'kvm* or cmp*' cmd.run "(which efibootmgr > /dev/null 2>&1 && \ ++ efibootmgr | grep -oP '(?<=Boot)[0-9]+(?=.*ubuntu)' | \ ++ xargs -I{} efibootmgr --delete-bootnum --bootnum {}) || true" ++ + # MaaS rack/region controller, node commissioning + salt -C 'mas01*' cmd.run "add-apt-repository ppa:maas/stable" + diff --git a/patches/opnfv-fuel/0020-salt-master-Increase-command_timeout-to-15s.patch b/patches/opnfv-fuel/0020-salt-master-Increase-command_timeout-to-15s.patch deleted file mode 100644 index 3380de0a..00000000 --- a/patches/opnfv-fuel/0020-salt-master-Increase-command_timeout-to-15s.patch +++ /dev/null @@ -1,38 +0,0 @@ -From: Alexandru Avadanii -Date: Thu, 24 Aug 2017 03:50:11 +0200 -Subject: [PATCH] salt-master: Increase command_timeout to 15s - -Default command timeout (10s) is sometimes too small for all minions -to return within the required timeslot. Increase it by 50%. - -While at it, increase the timeout used for executing the "linux" -state against all nodes to 60s, just to be on the safe side. - -Signed-off-by: Alexandru Avadanii ---- - mcp/config/states/maas | 2 +- - mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/config.yml | 1 + - 2 files changed, 2 insertions(+), 1 deletion(-) - -diff --git a/mcp/config/states/maas b/mcp/config/states/maas -index 12ef9ed..14f32ee 100755 ---- a/mcp/config/states/maas -+++ b/mcp/config/states/maas -@@ -107,4 +107,4 @@ wait_for 10 "salt -C '* and not cfg01* and not mas01*' ssh.set_auth_key ${SUDO_U - - wait_for 10 "salt -C '* and not cfg01* and not mas01*' saltutil.sync_all" - wait_for 10 "salt -C '* and not cfg01* and not mas01*' state.apply salt" --wait_for 10 "salt -C '* and not cfg01* and not mas01*' state.apply linux,ntp" -+wait_for 10 "salt -C '* and not cfg01* and not mas01*' state.apply linux,ntp -t 60" -diff --git a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/config.yml b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/config.yml -index 7d95ebc..46526da 100644 ---- a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/config.yml -+++ b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-ovs-ha/infra/config.yml -@@ -37,6 +37,7 @@ parameters: - salt: - master: - accept_policy: open_mode -+ command_timeout: 15 - reclass: - storage: - data_source: diff --git a/patches/opnfv-fuel/0021-states-maas-rm-Ubuntu-boot-entry-on-EFI-systems.patch b/patches/opnfv-fuel/0021-states-maas-rm-Ubuntu-boot-entry-on-EFI-systems.patch deleted file mode 100644 index 792774f3..00000000 --- a/patches/opnfv-fuel/0021-states-maas-rm-Ubuntu-boot-entry-on-EFI-systems.patch +++ /dev/null @@ -1,41 +0,0 @@ -From: Alexandru Avadanii -Date: Thu, 24 Aug 2017 04:09:59 +0200 -Subject: [PATCH] states/maas: rm Ubuntu boot entry on EFI systems - -On EFI-enabled systems, grub-install from grub-efi-* package -installs a boot entry named "ubuntu". - -MaaS relies on IPMI to set boot order to PXE first; however -on systems with buggy firmware or without full IPMI support, -that fails, leading to booting Ubuntu from hard disk instead. - -Work around this by clearing any previous Ubuntu boot entry -from board flash. - -NOTE: This only runs against nodes that are online from a -previous deploy, and already automatically registered with -the new Salt master node. - -Closes: ARMBAND-47 - -Signed-off-by: Alexandru Avadanii ---- - mcp/config/states/maas | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/mcp/config/states/maas b/mcp/config/states/maas -index 14f32ee..b9f3ac6 100755 ---- a/mcp/config/states/maas -+++ b/mcp/config/states/maas -@@ -44,6 +44,11 @@ function maas_fixup() { - return 0 - } - -+# UEFI: Clean up Ubuntu boot entry if kvm node online from previous deploy -+salt -C 'kvm* or cmp*' cmd.run "(which efibootmgr > /dev/null 2>&1 && \ -+ efibootmgr | grep -oP '(?<=Boot)[0-9]+(?=.*ubuntu)' | \ -+ xargs -I{} efibootmgr --delete-bootnum --bootnum {}) || true" -+ - # MaaS rack/region controller, node commissioning - salt -C 'mas01*' cmd.run "add-apt-repository ppa:maas/stable" - -- cgit 1.2.3-korg