odl-ovs noha: Support VLAN tagged public
[fuel.git] / mcp / scripts / lib_jump_deploy.sh
index d3ccd6e..3dc3c44 100644 (file)
@@ -124,10 +124,15 @@ function __mount_image {
   sudo kpartx -av "${OPNFV_NBD_DEV}"
   # Hardcode partition index to 1, unlikely to change for Ubuntu UCA image
   sudo partx -uvn 1:1 "${OPNFV_NBD_DEV}"
-  if sudo growpart "${OPNFV_NBD_DEV}" 1; then
+  if [[ "${MCP_OS:-}" =~ ubuntu ]] && sudo growpart "${OPNFV_NBD_DEV}" 1
+  then
+    if [ -e "${image_dir}/e2fsprogs" ]; then
+      E2FSCK_PREFIX="${image_dir}/e2fsprogs/e2fsck/"
+      RESIZE_PREFIX="${image_dir}/e2fsprogs/resize/"
+    fi
     sudo kpartx -u "${OPNFV_NBD_DEV}"
-    sudo e2fsck -pf "${OPNFV_MAP_DEV}"
-    sudo resize2fs "${OPNFV_MAP_DEV}"
+    sudo "${E2FSCK_PREFIX}e2fsck" -pf "${OPNFV_MAP_DEV}"
+    sudo "${RESIZE_PREFIX}resize2fs" "${OPNFV_MAP_DEV}"
   else
     sleep 5 # /dev/nbdNp1 takes some time to come up
   fi
@@ -142,8 +147,6 @@ function __mount_image {
     sudo umount -l "${OPNFV_MNT_DIR}"
     # AArch64 CentOS cloud image has root partition at index 4 instead of 1
     sudo mount "${OPNFV_MAP_DEV/p1/p4}" "${OPNFV_MNT_DIR}"
-    sudo sed -i -e 's/^\(SELINUX\)=.*$/\1=permissive/g' \
-      "${OPNFV_MNT_DIR}/etc/selinux/config"
   else
     # grub-update does not like /dev/nbd*, so use a loop device to work around it
     sudo losetup "${OPNFV_LOOP_DEV}" "${OPNFV_MAP_DEV}"
@@ -155,7 +158,7 @@ function __mount_image {
   if [[ "${MCP_OS:-}" =~ ubuntu1804 ]]; then
     # Ubuntu Bionic (18.04) or newer defaults to using netplan.io, revert it
     sudo mkdir -p "${OPNFV_MNT_DIR}/run/systemd/resolve"
-    sudo cp -f --remove-destination /etc/resolv.conf \
+    echo "nameserver ${dns_public}" | sudo tee \
       "${OPNFV_MNT_DIR}/run/systemd/resolve/stub-resolv.conf"
     sudo chroot "${OPNFV_MNT_DIR}" systemctl stop \
       systemd-networkd.socket systemd-networkd \
@@ -169,9 +172,13 @@ function __mount_image {
     sudo chroot "${OPNFV_MNT_DIR}" apt --assume-yes purge nplan netplan.io
     echo "source /etc/network/interfaces.d/*" | \
       sudo tee "${OPNFV_MNT_DIR}/etc/network/interfaces"
+  elif [[ "${MCP_OS:-}" =~ centos ]]; then
+    sudo sed -i -e 's/^\(SELINUX\)=.*$/\1=permissive/g' \
+      "${OPNFV_MNT_DIR}/etc/selinux/config"
   fi
-  sudo cp -f --remove-destination \
-    /etc/resolv.conf "${OPNFV_MNT_DIR}/etc/resolv.conf"
+  sudo rm -f "${OPNFV_MNT_DIR}/etc/resolv.conf"
+  echo "nameserver ${dns_public}" | sudo tee \
+    "${OPNFV_MNT_DIR}/etc/resolv.conf"
   echo "GRUB_DISABLE_OS_PROBER=true" | \
     sudo tee -a "${OPNFV_MNT_DIR}/etc/default/grub"
   sudo sed -i -e 's/^\(GRUB_TIMEOUT\)=.*$/\1=1/g' -e 's/^GRUB_HIDDEN.*$//g' \