Skip to content
Snippets Groups Projects

Move build pipeline out to integration project

1 file
+ 58
0
Compare changes
  • Side-by-side
  • Inline
+ 58
0
@@ -315,6 +315,64 @@ test_ood_image:
@@ -315,6 +315,64 @@ test_ood_image:
artifacts:
artifacts:
reports:
reports:
dotenv: instance.env
dotenv: instance.env
 
rules:
 
- if: $CI_PIPELINE_SOURCE == "schedule"
 
when: always
 
 
test_ood_image_mr:
 
stage: test
 
needs: [build_ood_image]
 
tags:
 
- build
 
script:
 
- openstack image set --accept $BUILT_OOD_IMAGE_ID
 
- FAILED=false
 
- |
 
eval $(ssh-agent -s)
 
chmod 400 "$SSH_PRIV_KEY"
 
ssh-add "$SSH_PRIV_KEY"
 
mkdir ~/.ssh
 
chmod 700 ~/.ssh
 
- |
 
cat > user_data.txt << OEOF
 
#!/bin/bash
 
cat > /etc/resolv.conf << EOF
 
search openstack.internal cm.cluster rc.uab.edu ib.cluster drac.cluster eth.cluster ib-hdr.cluster
 
nameserver 172.20.0.25
 
EOF
 
echo "$DEV_KEY" >> /root/.ssh/authorized_keys
 
mkdir -p /run/shibboleth
 
chown shibd:shibd /run/shibboleth
 
OEOF
 
- >
 
export NEW_INSTANCE_ID=$(openstack server create
 
-c id -f value --image $BUILT_OOD_IMAGE_ID
 
--network $OOD_INSTANCE_NETWORK
 
--security-group ood-https-ports
 
--security-group allow-ssh
 
--user-data user_data.txt
 
--flavor $INSTANCE_FLAVOR
 
--wait
 
$OOD_INSTANCE_NAME)
 
- echo NEW_INSTANCE_ID=$NEW_INSTANCE_ID | tee -a instance.env
 
- openstack server add floating ip $NEW_INSTANCE_ID $FLOATING_IP
 
- >
 
curl --retry 10 --retry-delay 20 --retry-connrefused https://knightly.rc.uab.edu/Shibboleth.sso/Metadata --resolve knightly.rc.uab.edu:443:$FLOATING_IP -kf
 
|| FAILED=true
 
- ssh -o StrictHostKeyChecking=no acctsvc@$FLOATING_IP '[ $(mount | grep "etc/auto" | wc -l) -eq 6 ]' || FAILED=true
 
- |
 
if [ "$FAILED" = true ]; then
 
if [ "${DELETE_WHEN_FAILED-true}" = true ]; then
 
openstack server delete $NEW_INSTANCE_ID
 
openstack image delete $BUILT_OOD_IMAGE_ID
 
fi
 
false
 
fi
 
artifacts:
 
reports:
 
dotenv: instance.env
 
rules:
 
- if: $CI_MERGE_REQUEST_ID
deploy_review:
deploy_review:
stage: deploy
stage: deploy
Loading