Skip to content

Commit 2f386c5

Browse files
committed
ci: migrate backend pipeline from CircleCI to GitHub Actions
1 parent 31952cf commit 2f386c5

File tree

2 files changed

+57
-98
lines changed

2 files changed

+57
-98
lines changed

.circleci/config.yml

Lines changed: 0 additions & 98 deletions
This file was deleted.
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
name: Build & Push Image
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
7+
env:
8+
AWS_REGION: ${{ secrets.AWS_REGION }}
9+
AWS_ACCOUNT_ID: ${{ secrets.AWS_ACCOUNT_ID }}
10+
ECR_REPO_NAME: ${{ secrets.ECR_REPO_NAME }}
11+
IMAGE_URI: ${{ secrets.AWS_ACCOUNT_ID }}.dkr.ecr.${{ secrets.AWS_REGION }}.amazonaws.com/${{ secrets.ECR_REPO_NAME }}
12+
13+
jobs:
14+
build:
15+
runs-on: ubuntu-latest
16+
17+
permissions:
18+
contents: read
19+
20+
steps:
21+
# Checkout
22+
- name: Checkout
23+
uses: actions/checkout@v4
24+
25+
# SHA (7 chars)
26+
- name: Extract short SHA
27+
id: vars
28+
run: echo "SHORT_SHA=${GITHUB_SHA::7}" >> $GITHUB_ENV
29+
30+
# AWS Login
31+
- name: Configure AWS Credentials
32+
uses: aws-actions/configure-aws-credentials@v4
33+
with:
34+
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
35+
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
36+
aws-region: ${{ env.AWS_REGION }}
37+
38+
# Login ECR
39+
- name: Login to ECR
40+
uses: aws-actions/amazon-ecr-login@v2
41+
42+
# Buildx
43+
- name: Set up Docker Buildx
44+
uses: docker/setup-buildx-action@v3
45+
46+
# Build & Push
47+
- name: Build and Push
48+
uses: docker/build-push-action@v5
49+
with:
50+
context: ./server
51+
file: ./server/Dockerfile
52+
push: true
53+
tags: |
54+
${{ env.IMAGE_URI }}:${{ env.SHORT_SHA }}
55+
${{ env.IMAGE_URI }}:latest
56+
cache-from: type=gha
57+
cache-to: type=gha,mode=max

0 commit comments

Comments
 (0)