Skip to content

Commit

Permalink
add CI for testing env
Browse files Browse the repository at this point in the history
  • Loading branch information
tanguyenvn committed Aug 30, 2024
1 parent 7612076 commit 278cdc5
Show file tree
Hide file tree
Showing 3 changed files with 144 additions and 4 deletions.
70 changes: 70 additions & 0 deletions .github/workflows/any-branch.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
name: Test
on:
push:
branches-ignore:
- develop
- master

jobs:
test:
name: run tests
strategy:
matrix:
node: ["20.x"]
os: [ubuntu-latest]

runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node }}
cache: "npm"

- name: Run tests
run: |
npm install
npm run build
npm run test:ci
release_to_us_region:
runs-on: ubuntu-latest
needs: test
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: ${{ secrets.AWS_REGION_US }}

- name: Login to Amazon ECR
id: login-ecr
uses: aws-actions/amazon-ecr-login@v2

- name: Build, tag, and push image to Amazon ECR
working-directory: ./packages/fnd-server
env:
ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }}
ECR_REPOSITORY: fnd-server-develop
IMAGE_TAG: latest
run: |
docker build -t $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG -t $ECR_REGISTRY/$ECR_REPOSITORY:$GITHUB_SHA .
echo "Pushing image to ECR..."
docker push $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG
docker push $ECR_REGISTRY/$ECR_REPOSITORY:$GITHUB_SHA
- name: Deploy Production env
timeout-minutes: 10
run: |
aws ecs update-service --cluster $ECS_CLUSTER_FND --service $ECS_SERVICE_FND --force-new-deployment
aws ecs wait services-stable --cluster $ECS_CLUSTER_FND --service $ECS_SERVICE_FND
env:
ECS_CLUSTER_FND: lrc-microservices
ECS_SERVICE_FND: fnd-server-service
69 changes: 69 additions & 0 deletions .github/workflows/develop.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
name: Deploy Backend to Testing Environment
on:
push:
branches:
- develop

jobs:
test:
name: run tests
strategy:
matrix:
node: ["20.x"]
os: [ubuntu-latest]

runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node }}
cache: "npm"

- name: Run tests
run: |
npm install
npm run build
npm run test:ci
release_to_us_region:
runs-on: ubuntu-latest
needs: test
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: ${{ secrets.AWS_REGION_US }}

- name: Login to Amazon ECR
id: login-ecr
uses: aws-actions/amazon-ecr-login@v2

- name: Build, tag, and push image to Amazon ECR
working-directory: ./packages/fnd-server
env:
ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }}
ECR_REPOSITORY: fnd-server-develop
IMAGE_TAG: latest
run: |
docker build -t $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG -t $ECR_REGISTRY/$ECR_REPOSITORY:$GITHUB_SHA .
echo "Pushing image to ECR..."
docker push $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG
docker push $ECR_REGISTRY/$ECR_REPOSITORY:$GITHUB_SHA
- name: Deploy Testing env
timeout-minutes: 10
run: |
aws ecs update-service --cluster $ECS_CLUSTER_FND --service $ECS_SERVICE_FND --force-new-deployment
aws ecs wait services-stable --cluster $ECS_CLUSTER_FND --service $ECS_SERVICE_FND
env:
ECS_CLUSTER_FND: lrc-microservices
ECS_SERVICE_FND: fnd-server-service
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
name: Test and Push Backend to ECR
on: push
name: Deploy Backend to Production Environment
on:
push:
branches:
- master

jobs:
test:
Expand Down Expand Up @@ -27,7 +30,6 @@ jobs:
npm run test:ci
release_to_sg_region:
if: github.ref == 'refs/heads/master'
runs-on: ubuntu-latest
needs: test
steps:
Expand Down Expand Up @@ -67,7 +69,6 @@ jobs:
ECS_SERVICE_FND: fnd-server-service

release_to_us_region:
if: github.ref == 'refs/heads/master'
runs-on: ubuntu-latest
needs: test
steps:
Expand Down

0 comments on commit 278cdc5

Please sign in to comment.