updated dependency of jobs and made instanceId a global variable

This commit is contained in:
Souhaila Noor 2021-11-23 13:29:56 -06:00
parent 7e8cbdeb53
commit 692f2f8cb4

View file

@ -12,6 +12,7 @@ include:
- .go/pkg/mod/
variables:
GOVERSION: "1.16.9"
INSTANCE_ID_FILE: ./linux-amd64-instance.txt
stages:
- lint
@ -220,12 +221,12 @@ deploy node for linux amd64:
- SUBNET_ID=$(aws ec2 describe-subnets --filters 'Name=vpc-id,Values=vpc-03a4ba3d5b7c8f978' 'Name=availability-zone,Values=us-east-2a' --query 'Subnets[0].SubnetId' --output text --profile $PROFILE)
- aws ec2 run-instances --image-id $AMI --instance-type $INSTANCE --security-group-ids $SECURITY_GROUP --subnet-id $SUBNET_ID --key-name gitlab-featurebase-dev --tag-specifications 'ResourceType=instance,Tags=[{Key=Name,Value=linux-amd64-node}]' --profile $PROFILE --user-data file://./qa/scripts/cloud-init.sh --iam-instance-profile Name=featurebase-dev-ssm > config.json
- INSTANCE_ID=$(jq '.Instances | .[] |.InstanceId' config.json | tr -d '"')
- echo $INSTANCE_ID > linux-amd64-instance.txt
- echo $INSTANCE_ID > $INSTANCE_ID_FILE
needs:
- job: build for linux amd64
artifacts:
paths:
- linux-amd64-instance.txt
- $INSTANCE_ID_FILE
needs:
- job: build for linux amd64
@ -251,7 +252,7 @@ initiate featurebase linux amd64 in node:
- echo "$AWS_SSH_PRIVATE_KEY" | ssh-add -
- chmod 700 /root/.ssh
- '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
- INSTANCE_ID=$(cat linux-amd64-instance.txt)
- INSTANCE_ID=$(cat $INSTANCE_ID_FILE)
script:
- for i in {0..24}; do IP=$(aws ec2 describe-instances --instance-ids $INSTANCE_ID --filters 'Name=instance-state-name, Values=running' --query 'Reservations[*].Instances[*].PublicIpAddress' --output text --profile $PROFILE); if [ -n "$IP" ]; then break; fi; sleep 5; done
- scp -o StrictHostKeyChecking=no -i gitlab-featurebase-dev.pem featurebase_linux_amd64 ./qa/scripts/featurebase.conf ./qa/scripts/featurebase.service ec2-user@$IP:.
@ -270,10 +271,9 @@ terminate node for linux amd64:
- aws configure set aws_access_key_id $AWS_ACCESS_KEY_ID
- aws configure set aws_secret_access_key $AWS_SECRET_ACCESS_KEY
- aws configure set region "us-east-2"
- INSTANCE_ID=$(cat linux-amd64-instance.txt)
- INSTANCE_ID=$(cat $INSTANCE_ID_FILE)
script:
- aws ec2 terminate-instances --instance-ids $INSTANCE_ID
needs:
- job: deploy node for linux amd64
- job: initiate featurebase linux amd64 in node
when: always