Skip to content

Commit

Permalink
PM-1566 Reconfigure auto deployment CI
Browse files Browse the repository at this point in the history
  • Loading branch information
Smorci committed Jun 12, 2024
1 parent 7a1ede5 commit 1d2c0a6
Showing 1 changed file with 10 additions and 29 deletions.
39 changes: 10 additions & 29 deletions .github/workflows/build-publish-deploy.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,18 @@ on:
push:
branches:
- main
- PM-1566-reconfigure-ci-keel
workflow_dispatch:
inputs:
docker_tag_prefix:
description: "Enter the Docker Tag Prefix (e.g adhoc-test)"
docker_tag_suffix:
description: "Enter the Docker Tag suffix (e.g adhoc-test)"
required: true
type: string

env:
ECR_REPOSITORY_URL: 673156464838.dkr.ecr.us-west-2.amazonaws.com
ECR_REPOSITORY_NAME: gpt-survey-summarizer
APPLICATION_NAME: gpt-survey-summarizer
DOCKER_TAG_PREFIX: ${{ github.event.inputs.docker_tag_prefix }}
PLATFORM: staging
NAMESPACE: governance

Expand All @@ -24,11 +24,11 @@ jobs:
name: Build Publish and Deploy Docker Image
runs-on: minafoundation-default-runners
steps:
- name: ⚙️ Set environment variables
run: |
echo "AWS_REGION=$AWS_REGION" >> $GITHUB_ENV
echo "DEPLOYMENT_ROLE_NAME=$DEPLOYMENT_ROLE_NAME" >> $GITHUB_ENV
echo "AWS_ROLE_DURATION_SECONDS=$AWS_ROLE_DURATION_SECONDS" >> $GITHUB_ENV
# - name: ⚙️ Set environment variables
# run: |
# echo "AWS_REGION=$AWS_REGION" >> $GITHUB_ENV
# echo "DEPLOYMENT_ROLE_NAME=$DEPLOYMENT_ROLE_NAME" >> $GITHUB_ENV
# echo "AWS_ROLE_DURATION_SECONDS=$AWS_ROLE_DURATION_SECONDS" >> $GITHUB_ENV

- name: 📥 Checkout
uses: actions/checkout@v4
Expand All @@ -39,11 +39,10 @@ jobs:

- name: 🏷️ Generate Tag
run: |
SHORT_SHA=$(echo $GITHUB_SHA | cut -c1-7)
if [ "${{ github.event_name }}" == "workflow_dispatch" ]; then
echo "TAG=${{ env.DOCKER_TAG_PREFIX }}-${{ steps.application-version.outputs.current-version }}-$SHORT_SHA" >> $GITHUB_ENV
echo "TAG=${{ steps.application-version.outputs.current-version }}-${{ github.event.inputs.docker_tag_suffix }}" >> $GITHUB_ENV
elif [ "${{ github.event_name }}" == "push" ] && [ -n "${{ github.event.ref }}" ]; then
echo "TAG=${{ steps.application-version.outputs.current-version }}-$SHORT_SHA" >> $GITHUB_ENV
echo "TAG=${{ steps.application-version.outputs.current-version }}" >> $GITHUB_ENV
else
echo "Invalid event. Exiting..."
exit 1
Expand All @@ -68,21 +67,3 @@ jobs:
image: ${{ env.ECR_REPOSITORY_NAME }}
registry: ${{ env.ECR_REPOSITORY_URL }}
tags: ${{ env.TAG }}

- name: 🔑 Assume role
uses: aws-actions/configure-aws-credentials@v4
with:
aws-region: ${{ env.AWS_REGION }}
role-to-assume: ${{ env.DEPLOYMENT_ROLE_NAME }}
role-session-name: ${{ env.DEPLOYMENT_ROLE_NAME }}
role-duration-seconds: ${{ env.AWS_ROLE_DURATION_SECONDS }}

- name: ⬇️ Get kubeconfig
run: aws eks update-kubeconfig --name $PLATFORM --region $AWS_REGION 1>/dev/null

# "*=" means we set the image for every container in the selected deployments
- name: 💿 Set deployment image
run: kubectl set image deployment "*=$ECR_REPOSITORY_URL/$ECR_REPOSITORY_NAME:$TAG" -l app.kubernetes.io/name=$APPLICATION_NAME -n $NAMESPACE

- name: ⏱️ Wait for deployment to be ready
run: kubectl rollout status deployment --timeout=10m -l app.kubernetes.io/name=$APPLICATION_NAME -n $NAMESPACE

0 comments on commit 1d2c0a6

Please sign in to comment.