Skip to content
Snippets Groups Projects

Move build pipeline out to integration project

+ 61
5
@@ -21,7 +21,8 @@ variables:
@@ -21,7 +21,8 @@ variables:
PKR_VAR_security_groups: '["allow-ssh"]'
PKR_VAR_security_groups: '["allow-ssh"]'
PKR_VAR_skip_create_image: "false"
PKR_VAR_skip_create_image: "false"
PKR_VAR_ssh_username: "centos"
PKR_VAR_ssh_username: "centos"
PKR_VAR_networks: '["ec11e2be-8fac-46cf-8fa2-9dffb74ba5df"]'
PKR_VAR_networks: '["8cf2f12e-905d-46d9-bc70-b0897c65f75a"]'
 
PKR_VAR_image_membership: '["cf6fa1e53d4c40a49f4e0e469c440359"]'
GIT_AUTHOR_NAME: "Gitlab runner"
GIT_AUTHOR_NAME: "Gitlab runner"
GIT_AUTHOR_EMAIL: "gitlab@runner"
GIT_AUTHOR_EMAIL: "gitlab@runner"
NUM_SERVER_TO_KEEP: 1
NUM_SERVER_TO_KEEP: 1
@@ -197,8 +198,6 @@ build_gpu_image:
@@ -197,8 +198,6 @@ build_gpu_image:
build_ood_image:
build_ood_image:
stage: build
stage: build
environment:
name: knightly
tags:
tags:
- build
- build
script:
script:
@@ -249,6 +248,7 @@ test_ood_image:
@@ -249,6 +248,7 @@ test_ood_image:
tags:
tags:
- build
- build
script:
script:
 
- openstack image set --accept $BUILT_OOD_IMAGE_ID
- FAILED=false
- FAILED=false
- |
- |
eval $(ssh-agent -s)
eval $(ssh-agent -s)
@@ -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:
 
- export OOD_INSTANCE_NETWORK="cicd-net"
 
- 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
@@ -379,8 +437,6 @@ deploy_cheaha:
@@ -379,8 +437,6 @@ deploy_cheaha:
cleanup_knightly:
cleanup_knightly:
stage: cleanup
stage: cleanup
environment:
name: knightly
tags:
tags:
- build
- build
script:
script:
Loading