Skip to content

Commit

Permalink
Merge pull request #4216 from JoinColony/fix-github-eks-deployment
Browse files Browse the repository at this point in the history
cicd: fix github eks deployment plugin
  • Loading branch information
bogdan-1337 authored Jul 11, 2023
2 parents 4954d7a + c133176 commit 40a68a7
Showing 1 changed file with 43 additions and 34 deletions.
77 changes: 43 additions & 34 deletions .github/workflows/buildDeploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -79,29 +79,36 @@ jobs:

env:
NAMESPACE: default
KUBE_CONFIG_DATA: ${{ secrets.KUBE_CONFIG_DATA }}
CLUSTER_NAME: qa
ENVIRONMENT_TAG: qa
REPOSITORY_NAME: app-frontend

steps:

- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v1
- name: Configure AWS credentials for EKS
uses: aws-actions/configure-aws-credentials@v2
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
role-to-assume: arn:aws:iam::${{ secrets.AWS_ACCOUNT_ID }}:role/eks-admin
role-session-name: github-cicd
role-duration-seconds: 1200
aws-region: ${{ env.AWS_REGION }}

- name: Deploy to Kubernetes cluster
uses: kodermax/kubectl-aws-eks@c18ef8acdb80d5311a7dd3611c57fcc70e954b37
- name: Configure AWS EKS
run: |
aws eks --region ${{ env.AWS_REGION }} update-kubeconfig --name ${{ env.CLUSTER_NAME }}
- name: Deploy to Kubernetes cluster
env:
RELEASE_IMAGE: ${{ secrets.AWS_ACCOUNT_ID }}.dkr.ecr.eu-west-2.amazonaws.com/${{ env.ECR_REPOSITORY }}:${{ env.IMAGE_TAG }}
with:
args: set image deployment/dapp-qa-network-100 dapp=${{ env.RELEASE_IMAGE }} --record -n $NAMESPACE
run: |
kubectl set image deployment/dapp-${{ env.ENVIRONMENT_TAG }}-network-100 dapp=${{ env.RELEASE_IMAGE }} -n $NAMESPACE
- name: Verify Kubernetes deployment
uses: kodermax/kubectl-aws-eks@c18ef8acdb80d5311a7dd3611c57fcc70e954b37
with:
args: rollout status deployment/dapp-qa-network-100 -n $NAMESPACE

- name: Validate Kubernetes deployment
run: |
kubectl rollout status deployment/dapp-${{ env.ENVIRONMENT_TAG }}-network-100 -n ${{ env.NAMESPACE }}
- uses: sarisia/actions-status-discord@c193626e5ce172002b8161e116aa897de7ab5383
if: always()
with:
Expand All @@ -119,7 +126,9 @@ jobs:

env:
NAMESPACE: staging
KUBE_CONFIG_DATA: ${{ secrets.KUBE_CONFIG_DATA_PROD }}
CLUSTER_NAME: prod
ENVIRONMENT_TAG: staging
REPOSITORY_NAME: app-frontend

steps:

Expand All @@ -130,31 +139,31 @@ jobs:
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY_PROD }}
aws-region: ${{ env.AWS_REGION }}

- name: Deploy to Kubernetes cluster
uses: kodermax/kubectl-aws-eks@c18ef8acdb80d5311a7dd3611c57fcc70e954b37
- name: Configure AWS EKS
run: |
aws eks --region ${{ env.AWS_REGION }} update-kubeconfig --name ${{ env.CLUSTER_NAME }}
- name: Deploy to Kubernetes cluster
env:
RELEASE_IMAGE: ${{ secrets.AWS_ACCOUNT_ID }}.dkr.ecr.eu-west-2.amazonaws.com/${{ env.ECR_REPOSITORY }}:${{ env.IMAGE_TAG }}
with:
args: set image deployment/dapp-staging-network-100 dapp=${{ env.RELEASE_IMAGE }} --record -n $NAMESPACE
run: |
kubectl set image deployment/dapp-${{ env.ENVIRONMENT_TAG }}-network-100 dapp=${{ env.RELEASE_IMAGE }} -n $NAMESPACE
- name: Verify Kubernetes deployment
uses: kodermax/kubectl-aws-eks@c18ef8acdb80d5311a7dd3611c57fcc70e954b37
with:
args: rollout status deployment/dapp-staging-network-100 -n $NAMESPACE
- name: Validate Kubernetes deployment
run: |
kubectl rollout status deployment/dapp-${{ env.ENVIRONMENT_TAG }}-network-100 -n ${{ env.NAMESPACE }}
- name: Repository Dispatch
uses: peter-evans/repository-dispatch@f2696244ec00ed5c659a5cc77f7138ad0302dffb
with:
token: ${{ secrets.COLONY_INFRASTRUCTURE_PROD_TO_STAGING_TOKEN }}
repository: JoinColony/colonyInfrastructure
event-type: data-sync

- uses: sarisia/actions-status-discord@c193626e5ce172002b8161e116aa897de7ab5383
if: always()
with:
webhook: ${{ env.DISCORD_WEBHOOK }}
title: "Deploy to Staging"

# Deploy dapp frontend to production environment
deployProd:

Expand All @@ -166,7 +175,9 @@ jobs:

env:
NAMESPACE: prod
KUBE_CONFIG_DATA: ${{ secrets.KUBE_CONFIG_DATA_PROD }}
CLUSTER_NAME: prod
ENVIRONMENT_TAG: prod
REPOSITORY_NAME: app-frontend

steps:

Expand All @@ -177,18 +188,16 @@ jobs:
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY_PROD }}
aws-region: ${{ env.AWS_REGION }}

- name: Deploy to Kubernetes cluster
uses: kodermax/kubectl-aws-eks@c18ef8acdb80d5311a7dd3611c57fcc70e954b37
- name: Deploy to Kubernetes cluster
env:
RELEASE_IMAGE: ${{ secrets.AWS_ACCOUNT_ID }}.dkr.ecr.eu-west-2.amazonaws.com/${{ env.ECR_REPOSITORY }}:${{ env.IMAGE_TAG }}
with:
args: set image deployment/dapp-prod-network-100 dapp=${{ env.RELEASE_IMAGE }} --record -n $NAMESPACE

- name: Verify Kubernetes deployment
uses: kodermax/kubectl-aws-eks@c18ef8acdb80d5311a7dd3611c57fcc70e954b37
with:
args: rollout status deployment/dapp-prod-network-100 -n $NAMESPACE

run: |
kubectl set image deployment/dapp-${{ env.ENVIRONMENT_TAG }}-network-100 dapp=${{ env.RELEASE_IMAGE }} -n $NAMESPACE
- name: Validate Kubernetes deployment
run: |
kubectl rollout status deployment/dapp-${{ env.ENVIRONMENT_TAG }}-network-100 -n ${{ env.NAMESPACE }}
- uses: sarisia/actions-status-discord@c193626e5ce172002b8161e116aa897de7ab5383
if: always()
with:
Expand Down

0 comments on commit 40a68a7

Please sign in to comment.