diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 25048fe25bd7eec8769506ceab1d1a7473070dc3..6c2fce7a2590f93505a63edf2c9e7e5f0634e394 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -210,7 +210,7 @@ build_ood_image: reports: dotenv: image.env rules: - - if: $PIPELINE_TARGET == "build" && $BUILD_TARGET == "ood" + - if: $BUILD_TARGET == "ood" when: always deploy_http_proxy_node: @@ -379,7 +379,24 @@ deploy_ood_node: name: $ENV tags: - build + before_script: + - | + for OOD_FLOATING_IP in ${OOD_FLOATING_IP_LIST[@]}; do + OOD_FIXED_IP=$( + openstack floating ip list \ + --floating-ip-address $OOD_FLOATING_IP -c "Fixed IP Address" -f value) + CURRENT_INSTANCE_ID=$( + openstack server list \ + --name $OOD_INSTANCE_NAME --ip $OOD_FIXED_IP -c ID -f value) + openstack server remove floating ip $CURRENT_INSTANCE_ID $OOD_FLOATING_IP + done + - | + if [ -n "$OOD_PORT" ];then + openstack server remove port $CURRENT_INSTANCE_ID $OOD_PORT + fi + script: + - OOD_IMAGE_ID="${BUILT_OOD_IMAGE_ID:-$OOD_IMAGE_ID}" - openstack image set --accept $OOD_IMAGE_ID || true - FAILED=false - | @@ -424,5 +441,5 @@ deploy_ood_node: openstack server add floating ip $OOD_INSTANCE_ID $OOD_FLOATING_IP done rules: - - if: $PIPELINE_TARGET == "deploy" && $OOD_IMAGE_ID + - if: $DEPLOY_TARGET == "ood" when: always diff --git a/openstack-ood/nodeimage.pkr.hcl b/openstack-ood/nodeimage.pkr.hcl index 1a1374419cd8ed985a4cde57378154a5cf07ff3f..6ade3c0bfd08dfcc8e56552b039f56fd5c6f35f9 100644 --- a/openstack-ood/nodeimage.pkr.hcl +++ b/openstack-ood/nodeimage.pkr.hcl @@ -60,7 +60,7 @@ build { provisioner "shell" { inline = [ - "sudo yum install -y libselinux-python3 python3 python3-pip tmux vim git bash-completion curl wget unzip", + "sudo yum install -y libselinux-python3 python3 python3-pip tmux vim git bash-completion curl wget unzip NetworkManager", "sudo python3 -m pip install --upgrade pip", "sudo pip3 install s3cmd==2.3.0 ansible==4.10.0 python-openstackclient==5.8.0" ]