Skip to content

Commit 9eb6772

Browse files
committed
Add Missing Stage for AWS Deployment
1 parent cfa1790 commit 9eb6772

File tree

1 file changed

+84
-0
lines changed

1 file changed

+84
-0
lines changed

.github/workflows/deploy_aws.yml

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,90 @@ on:
77

88

99
jobs:
10+
build-and-push:
11+
runs-on: ubuntu-latest
12+
permissions:
13+
contents: read
14+
packages: write
15+
16+
env:
17+
COMMIT_SHA: ${{ github.sha }}
18+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
19+
GITHUB_ACTOR: ${{ github.actor }}
20+
21+
steps:
22+
- name: Checkout code
23+
uses: actions/checkout@v4
24+
25+
- name: Login to GitHub Container Registry
26+
uses: docker/login-action@v3
27+
with:
28+
registry: ghcr.io
29+
username: ${{ github.actor }}
30+
password: ${{ secrets.GITHUB_TOKEN }}
31+
32+
# Build and Push Microservices (using multi-stage Docker builds)
33+
- name: Build and push auth-service
34+
run: |
35+
docker build --platform linux/amd64 -t ghcr.io/aet-devops25/team-3/auth-service:${COMMIT_SHA} ./server/auth-service
36+
docker push ghcr.io/aet-devops25/team-3/auth-service:${COMMIT_SHA}
37+
38+
- name: Build and push document-service
39+
run: |
40+
docker build --platform linux/amd64 -t ghcr.io/aet-devops25/team-3/document-service:${COMMIT_SHA} ./server/document-service
41+
docker push ghcr.io/aet-devops25/team-3/document-service:${COMMIT_SHA}
42+
43+
- name: Build and push genai-service
44+
run: |
45+
docker build --platform linux/amd64 -t ghcr.io/aet-devops25/team-3/genai-service:${COMMIT_SHA} ./server/genai-service
46+
docker push ghcr.io/aet-devops25/team-3/genai-service:${COMMIT_SHA}
47+
48+
- name: Build and push eureka-server
49+
run: |
50+
docker build --platform linux/amd64 -t ghcr.io/aet-devops25/team-3/eureka-server:${COMMIT_SHA} ./server/eureka-server
51+
docker push ghcr.io/aet-devops25/team-3/eureka-server:${COMMIT_SHA}
52+
53+
- name: Build and push client for EC2
54+
run: |
55+
docker build --platform linux/amd64 --build-arg VITE_API_BASE_URL=https://studymate-tum.xyz -t ghcr.io/aet-devops25/team-3/client:ec2-${COMMIT_SHA} ./client
56+
docker push ghcr.io/aet-devops25/team-3/client:ec2-${COMMIT_SHA}
57+
58+
- name: Build and push genai
59+
run: |
60+
docker build --platform linux/amd64 -t ghcr.io/aet-devops25/team-3/genai:${COMMIT_SHA} ./genAi
61+
docker push ghcr.io/aet-devops25/team-3/genai:${COMMIT_SHA}
62+
63+
# Tag and push as latest
64+
- name: Tag and push auth-service as latest
65+
run: |
66+
docker tag ghcr.io/aet-devops25/team-3/auth-service:${COMMIT_SHA} ghcr.io/aet-devops25/team-3/auth-service:latest
67+
docker push ghcr.io/aet-devops25/team-3/auth-service:latest
68+
69+
- name: Tag and push document-service as latest
70+
run: |
71+
docker tag ghcr.io/aet-devops25/team-3/document-service:${COMMIT_SHA} ghcr.io/aet-devops25/team-3/document-service:latest
72+
docker push ghcr.io/aet-devops25/team-3/document-service:latest
73+
74+
- name: Tag and push genai-service as latest
75+
run: |
76+
docker tag ghcr.io/aet-devops25/team-3/genai-service:${COMMIT_SHA} ghcr.io/aet-devops25/team-3/genai-service:latest
77+
docker push ghcr.io/aet-devops25/team-3/genai-service:latest
78+
79+
- name: Tag and push eureka-server as latest
80+
run: |
81+
docker tag ghcr.io/aet-devops25/team-3/eureka-server:${COMMIT_SHA} ghcr.io/aet-devops25/team-3/eureka-server:latest
82+
docker push ghcr.io/aet-devops25/team-3/eureka-server:latest
83+
84+
- name: Tag and push client as ec2-latest
85+
run: |
86+
docker tag ghcr.io/aet-devops25/team-3/client:ec2-${COMMIT_SHA} ghcr.io/aet-devops25/team-3/client:ec2-latest
87+
docker push ghcr.io/aet-devops25/team-3/client:ec2-latest
88+
89+
- name: Tag and push genai as latest
90+
run: |
91+
docker tag ghcr.io/aet-devops25/team-3/genai:${COMMIT_SHA} ghcr.io/aet-devops25/team-3/genai:latest
92+
docker push ghcr.io/aet-devops25/team-3/genai:latest
93+
1094
deploy-aws:
1195
runs-on: ubuntu-latest
1296
env:

0 commit comments

Comments
 (0)