lib.sh: Skip modprobing nbd, loop if inbuilt 59/54059/5
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Sun, 18 Mar 2018 21:27:11 +0000 (22:27 +0100)
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Sun, 18 Mar 2018 22:10:43 +0000 (23:10 +0100)
While at it, skip waiting for Salt master when deleting UEFI stale
entries if it doesn't respond to ping.

Also, use https for fetching Armband GPG key to bypass yet another
hks issue behind proxies/firewalls that block hks port.

Change-Id: I400cbe3257094b62c96b302a3c81c5ffd1ba4755
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
mcp/scripts/lib.sh
mcp/scripts/salt.sh

index 7d57fcf..ce5db25 100644 (file)
@@ -38,10 +38,11 @@ function get_base_image {
 function __kernel_modules {
   # Load mandatory kernel modules: loop, nbd
   local image_dir=$1
-  sudo modprobe loop
+  test -e /dev/loop-control || sudo modprobe loop
   if sudo modprobe nbd max_part=8 || sudo modprobe -f nbd max_part=8; then
     return 0
   fi
+  if [ -e /dev/nbd0 ]; then return 0; fi  # nbd might be inbuilt
   # CentOS (or RHEL family in general) do not provide 'nbd' out of the box
   echo "[WARN] 'nbd' kernel module cannot be loaded!"
   if [ ! -e /etc/redhat-release ]; then
@@ -225,6 +226,7 @@ function cleanup_mounts {
 function cleanup_uefi {
   # Clean up Ubuntu boot entry if cfg01, kvm nodes online from previous deploy
   local cmd_str="ssh ${SSH_OPTS} ${SSH_SALT}"
+  ping -c 1 -w 1 "${SALT_MASTER}" || return 0
   [ ! "$(hostname)" = 'cfg01' ] || cmd_str='eval'
   ${cmd_str} "sudo salt -C 'kvm* or cmp*' cmd.run \
     \"which efibootmgr > /dev/null 2>&1 && \
index c5582f1..aecfece 100755 (executable)
@@ -71,7 +71,7 @@ ssh ${SSH_OPTS} "${SSH_SALT}" bash -s -e << SALT_INSTALL_END
     ln -sf /usr/share/salt-formulas/reclass/service/opendaylight
 
   # Armband APT-MK nightly/extra repo for forked & extended reclass
-  apt-key adv --keyserver keys.gnupg.net --recv 798AB1D1
+  wget -qO - https://linux.enea.com/apt-mk/public.gpg | apt-key add -
   echo 'deb http://linux.enea.com/apt-mk/xenial nightly extra' > \
     '/etc/apt/sources.list.d/armband_mcp_extra.list'
   apt-get update