Skip to content

Commit b0b090c

Browse files
committed
๐Ÿ“ฆ chore: dto test workflow add
1 parent 0a82b79 commit b0b090c

File tree

7 files changed

+270
-233
lines changed

7 files changed

+270
-233
lines changed
Lines changed: 45 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,45 @@
1-
name: Feed-Crawler-Deployment
2-
3-
on:
4-
push:
5-
branches:
6-
- main
7-
paths:
8-
- "feed-crawler/**"
9-
workflow_dispatch: # ์ˆ˜๋™ ์‹คํ–‰์„ ํ—ˆ์šฉํ•˜๋Š” ์ด๋ฒคํŠธ
10-
11-
jobs:
12-
deployment:
13-
runs-on: ubuntu-latest
14-
steps:
15-
# public ์„œ๋ฒ„๋กœ ssh ์ ‘์†
16-
- name: ssh connection
17-
uses: appleboy/[email protected]
18-
with:
19-
host: ${{ secrets.CLOUD_PUBLIC_INSTANCE_HOST }}
20-
username: ${{ secrets.CLOUD_PUBLIC_INSTANCE_USERNAME }}
21-
key: ${{ secrets.CLOUD_PUBLIC_INSTANCE_SSH_KEY }}
22-
port: ${{ secrets.CLOUD_PUBLIC_INSTANCE_PORT }}
23-
script: |
24-
cd /var/web05-Denamu
25-
git pull origin main
26-
cd /var/web05-Denamu/feed-crawler/
27-
28-
mkdir -p env
29-
echo "DB_PORT=${{ secrets.FEED_CRAWLER_DB_PORT }}" > env/.env.prod
30-
echo "DB_HOST=${{ secrets.FEED_CRAWLER_DB_HOST }}" >> env/.env.prod
31-
echo "DB_NAME=${{ secrets.FEED_CRAWLER_DB_NAME }}" >> env/.env.prod
32-
echo "DB_USER=${{ secrets.FEED_CRAWLER_DB_USER }}" >> env/.env.prod
33-
echo "DB_PASS=${{ secrets.FEED_CRAWLER_DB_PASSWORD }}" >> env/.env.prod
34-
echo "TIME_INTERVAL=${{ vars.FEED_CRAWLER_TIME_INTERVAL }}" >> env/.env.prod
35-
echo "REDIS_HOST=${{secrets.REDIS_HOST }}" >> env/.env.prod
36-
echo "REDIS_PORT=${{secrets.REDIS_PORT}}" >> env/.env.prod
37-
echo "REDIS_USERNAME=${{secrets.REDIS_USERNAME}}" >> env/.env.prod
38-
echo "REDIS_PASSWORD=${{secrets.REDIS_PASSWORD}}" >> env/.env.prod
39-
echo "AI_API_KEY=${{secrets.AI_API_KEY}}" >> env/.env.prod
40-
echo "AI_RATE_LIMIT_COUNT=${{ vars.AI_RATE_LIMIT_COUNT }}" >> env/.env.prod
41-
42-
cd /var/web05-Denamu
43-
docker-compose -f docker-compose/docker-compose.prod.yml up --build --no-deps --force-recreate -d feed-crawler
44-
docker image prune -f
45-
docker builder prune -f
1+
name: Feed-Crawler-Deployment
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
paths:
8+
- "feed-crawler/**"
9+
workflow_dispatch: # ์ˆ˜๋™ ์‹คํ–‰์„ ํ—ˆ์šฉํ•˜๋Š” ์ด๋ฒคํŠธ
10+
11+
jobs:
12+
deployment:
13+
runs-on: ubuntu-latest
14+
steps:
15+
# public ์„œ๋ฒ„๋กœ ssh ์ ‘์†
16+
- name: ssh connection
17+
uses: appleboy/[email protected]
18+
with:
19+
host: ${{ secrets.CLOUD_PUBLIC_INSTANCE_HOST }}
20+
username: ${{ secrets.CLOUD_PUBLIC_INSTANCE_USERNAME }}
21+
key: ${{ secrets.CLOUD_PUBLIC_INSTANCE_SSH_KEY }}
22+
port: ${{ secrets.CLOUD_PUBLIC_INSTANCE_PORT }}
23+
script: |
24+
cd /var/web05-Denamu
25+
git pull origin main
26+
cd /var/web05-Denamu/feed-crawler/
27+
28+
mkdir -p env
29+
echo "DB_PORT=${{ secrets.FEED_CRAWLER_DB_PORT }}" > env/.env.prod
30+
echo "DB_HOST=${{ secrets.FEED_CRAWLER_DB_HOST }}" >> env/.env.prod
31+
echo "DB_NAME=${{ secrets.FEED_CRAWLER_DB_NAME }}" >> env/.env.prod
32+
echo "DB_USER=${{ secrets.FEED_CRAWLER_DB_USER }}" >> env/.env.prod
33+
echo "DB_PASS=${{ secrets.FEED_CRAWLER_DB_PASSWORD }}" >> env/.env.prod
34+
echo "TIME_INTERVAL=${{ vars.FEED_CRAWLER_TIME_INTERVAL }}" >> env/.env.prod
35+
echo "REDIS_HOST=${{secrets.REDIS_HOST }}" >> env/.env.prod
36+
echo "REDIS_PORT=${{secrets.REDIS_PORT}}" >> env/.env.prod
37+
echo "REDIS_USERNAME=${{secrets.REDIS_USERNAME}}" >> env/.env.prod
38+
echo "REDIS_PASSWORD=${{secrets.REDIS_PASSWORD}}" >> env/.env.prod
39+
echo "AI_API_KEY=${{secrets.AI_API_KEY}}" >> env/.env.prod
40+
echo "AI_RATE_LIMIT_COUNT=${{ vars.AI_RATE_LIMIT_COUNT }}" >> env/.env.prod
41+
42+
cd /var/web05-Denamu
43+
docker-compose -f docker-compose/docker-compose.prod.yml up --build --no-deps --force-recreate -d feed-crawler
44+
docker image prune -f
45+
docker builder prune -f
Lines changed: 39 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,39 @@
1-
name: FEED-CRAWLER Test
2-
3-
on:
4-
pull_request:
5-
branches:
6-
- main
7-
workflow_dispatch:
8-
9-
jobs:
10-
tests:
11-
runs-on: ubuntu-latest
12-
13-
steps:
14-
# 1. ํ˜„์žฌ PR ๋ธŒ๋žœ์น˜๋กœ ์ฒดํฌ์•„์›ƒ ํ•˜๊ธฐ
15-
- name: Checkout code
16-
uses: actions/checkout@v3
17-
with:
18-
ref: ${{ github.event.pull_request.head.ref }}
19-
20-
# 2. Node.js ํ™˜๊ฒฝ ์„ค์ •
21-
- name: Set up Node.js
22-
uses: actions/setup-node@v4
23-
with:
24-
node-version: '22'
25-
cache: 'npm'
26-
27-
# 3. ์˜์กด์„ฑ ์„ค์น˜
28-
- name: Install dependencies
29-
working-directory: ./feed-crawler
30-
run: npm install
31-
32-
# 4. ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ ์‹คํ–‰
33-
- name: Run Integration Test
34-
working-directory: ./feed-crawler
35-
run: npm run test
36-
env:
37-
TEST_TIME_INTERVAL: ${{ vars.FEED_CRAWLER_TEST_TIME_INTERVAL }}
38-
39-
# TODO: ํ…Œ์ŠคํŠธ ์ปค๋ฒ„๋ฆฌ์ง€, ํ˜น์€ ํ…Œ์ŠคํŠธ ๋กœ๊ทธ ์ปค๋ฉ˜ํŠธ ์ž‘์„ฑ ๋กœ์ง ์ถ”๊ฐ€ํ•˜๊ธฐ
1+
name: FEED-CRAWLER Test
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- main
7+
workflow_dispatch:
8+
9+
jobs:
10+
tests:
11+
runs-on: ubuntu-latest
12+
13+
steps:
14+
# 1. ํ˜„์žฌ PR ๋ธŒ๋žœ์น˜๋กœ ์ฒดํฌ์•„์›ƒ ํ•˜๊ธฐ
15+
- name: Checkout code
16+
uses: actions/checkout@v3
17+
with:
18+
ref: ${{ github.event.pull_request.head.ref }}
19+
20+
# 2. Node.js ํ™˜๊ฒฝ ์„ค์ •
21+
- name: Set up Node.js
22+
uses: actions/setup-node@v4
23+
with:
24+
node-version: "22"
25+
cache: "npm"
26+
27+
# 3. ์˜์กด์„ฑ ์„ค์น˜
28+
- name: Install dependencies
29+
working-directory: ./feed-crawler
30+
run: npm ci
31+
32+
# 4. ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ ์‹คํ–‰
33+
- name: Run Integration Test
34+
working-directory: ./feed-crawler
35+
run: npm run test
36+
env:
37+
TEST_TIME_INTERVAL: ${{ vars.FEED_CRAWLER_TEST_TIME_INTERVAL }}
38+
39+
# TODO: ํ…Œ์ŠคํŠธ ์ปค๋ฒ„๋ฆฌ์ง€, ํ˜น์€ ํ…Œ์ŠคํŠธ ๋กœ๊ทธ ์ปค๋ฉ˜ํŠธ ์ž‘์„ฑ ๋กœ์ง ์ถ”๊ฐ€ํ•˜๊ธฐ
Lines changed: 54 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -1,54 +1,54 @@
1-
name: Server Deployment
2-
3-
on:
4-
push:
5-
branches:
6-
- main
7-
paths:
8-
- "server/**"
9-
workflow_dispatch: # ์ˆ˜๋™ ์‹คํ–‰์„ ํ—ˆ์šฉํ•˜๋Š” ์ด๋ฒคํŠธ
10-
11-
jobs:
12-
deployment:
13-
runs-on: ubuntu-latest
14-
steps:
15-
# public ์„œ๋ฒ„๋กœ ssh ์ ‘์†
16-
- name: ssh connection
17-
uses: appleboy/[email protected]
18-
with:
19-
host: ${{ secrets.CLOUD_PUBLIC_INSTANCE_HOST }}
20-
username: ${{ secrets.CLOUD_PUBLIC_INSTANCE_USERNAME }}
21-
key: ${{ secrets.CLOUD_PUBLIC_INSTANCE_SSH_KEY }}
22-
port: ${{ secrets.CLOUD_PUBLIC_INSTANCE_PORT }}
23-
script: |
24-
cd /var/web05-Denamu
25-
git pull origin main
26-
cd /var/web05-Denamu/server
27-
28-
mkdir -p env
29-
echo "PORT=${{ secrets.PRODUCT_PORT }}" > env/.env.prod
30-
echo "DB_TYPE=mysql" >> env/.env.prod
31-
echo "DB_DATABASE=${{ secrets.PRODUCT_DB_DATABASE }}" >> env/.env.prod
32-
echo "DB_HOST=${{ secrets.PRODUCT_DB_HOST }}" >> env/.env.prod
33-
echo "DB_PORT=${{ secrets.PRODUCT_DB_PORT }}" >> env/.env.prod
34-
echo "DB_USERNAME=${{ secrets.PRODUCT_DB_USERNAME }}" >> env/.env.prod
35-
echo "DB_PASSWORD=${{ secrets.PRODUCT_DB_PASSWORD }}" >> env/.env.prod
36-
echo "REDIS_HOST=${{secrets.REDIS_HOST }}" >> env/.env.prod
37-
echo "REDIS_PORT=${{secrets.REDIS_PORT}}" >> env/.env.prod
38-
echo "REDIS_USERNAME=${{secrets.REDIS_USERNAME}}" >> env/.env.prod
39-
echo "REDIS_PASSWORD=${{secrets.REDIS_PASSWORD}}" >> env/.env.prod
40-
echo "EMAIL_USER=${{secrets.EMAIL_USER}}" >> env/.env.prod
41-
echo "EMAIL_PASSWORD=${{secrets.EMAIL_PASSWORD}}" >> env/.env.prod
42-
echo "JWT_ACCESS_SECRET=${{secrets.JWT_ACCESS_SECRET}}" >> env/.env.prod
43-
echo "JWT_REFRESH_SECRET=${{secrets.JWT_REFRESH_SECRET}}" >> env/.env.prod
44-
echo "REFRESH_TOKEN_EXPIRE=${{secrets.REFRESH_TOKEN_EXPIRE}}" >> env/.env.prod
45-
echo "ACCESS_TOKEN_EXPIRE=${{secrets.ACCESS_TOKEN_EXPIRE}}" >> env/.env.prod
46-
echo "GOOGLE_CLIENT_ID=${{secrets.GOOGLE_CLIENT_ID}}" >> env/.env.prod
47-
echo "GOOGLE_CLIENT_SECRET=${{secrets.GOOGLE_CLIENT_SECRET}}" >> env/.env.prod
48-
echo "GITHUB_CLIENT_ID=${{secrets.GIT_CLIENT_ID}}" >> env/.env.prod
49-
echo "GITHUB_CLIENT_SECRET=${{secrets.GIT_CLIENT_SECRET}}" >> env/.env.prod
50-
51-
cd /var/web05-Denamu
52-
docker-compose -f docker-compose/docker-compose.prod.yml up --build --no-deps --force-recreate -d app
53-
docker image prune -f
54-
docker builder prune -f
1+
name: BE Deployment
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
paths:
8+
- "server/**"
9+
workflow_dispatch: # ์ˆ˜๋™ ์‹คํ–‰์„ ํ—ˆ์šฉํ•˜๋Š” ์ด๋ฒคํŠธ
10+
11+
jobs:
12+
deployment:
13+
runs-on: ubuntu-latest
14+
steps:
15+
# public ์„œ๋ฒ„๋กœ ssh ์ ‘์†
16+
- name: ssh connection
17+
uses: appleboy/[email protected]
18+
with:
19+
host: ${{ secrets.CLOUD_PUBLIC_INSTANCE_HOST }}
20+
username: ${{ secrets.CLOUD_PUBLIC_INSTANCE_USERNAME }}
21+
key: ${{ secrets.CLOUD_PUBLIC_INSTANCE_SSH_KEY }}
22+
port: ${{ secrets.CLOUD_PUBLIC_INSTANCE_PORT }}
23+
script: |
24+
cd /var/web05-Denamu
25+
git pull origin main
26+
cd /var/web05-Denamu/server
27+
28+
mkdir -p env
29+
echo "PORT=${{ secrets.PRODUCT_PORT }}" > env/.env.prod
30+
echo "DB_TYPE=mysql" >> env/.env.prod
31+
echo "DB_DATABASE=${{ secrets.PRODUCT_DB_DATABASE }}" >> env/.env.prod
32+
echo "DB_HOST=${{ secrets.PRODUCT_DB_HOST }}" >> env/.env.prod
33+
echo "DB_PORT=${{ secrets.PRODUCT_DB_PORT }}" >> env/.env.prod
34+
echo "DB_USERNAME=${{ secrets.PRODUCT_DB_USERNAME }}" >> env/.env.prod
35+
echo "DB_PASSWORD=${{ secrets.PRODUCT_DB_PASSWORD }}" >> env/.env.prod
36+
echo "REDIS_HOST=${{secrets.REDIS_HOST }}" >> env/.env.prod
37+
echo "REDIS_PORT=${{secrets.REDIS_PORT}}" >> env/.env.prod
38+
echo "REDIS_USERNAME=${{secrets.REDIS_USERNAME}}" >> env/.env.prod
39+
echo "REDIS_PASSWORD=${{secrets.REDIS_PASSWORD}}" >> env/.env.prod
40+
echo "EMAIL_USER=${{secrets.EMAIL_USER}}" >> env/.env.prod
41+
echo "EMAIL_PASSWORD=${{secrets.EMAIL_PASSWORD}}" >> env/.env.prod
42+
echo "JWT_ACCESS_SECRET=${{secrets.JWT_ACCESS_SECRET}}" >> env/.env.prod
43+
echo "JWT_REFRESH_SECRET=${{secrets.JWT_REFRESH_SECRET}}" >> env/.env.prod
44+
echo "REFRESH_TOKEN_EXPIRE=${{secrets.REFRESH_TOKEN_EXPIRE}}" >> env/.env.prod
45+
echo "ACCESS_TOKEN_EXPIRE=${{secrets.ACCESS_TOKEN_EXPIRE}}" >> env/.env.prod
46+
echo "GOOGLE_CLIENT_ID=${{secrets.GOOGLE_CLIENT_ID}}" >> env/.env.prod
47+
echo "GOOGLE_CLIENT_SECRET=${{secrets.GOOGLE_CLIENT_SECRET}}" >> env/.env.prod
48+
echo "GITHUB_CLIENT_ID=${{secrets.GIT_CLIENT_ID}}" >> env/.env.prod
49+
echo "GITHUB_CLIENT_SECRET=${{secrets.GIT_CLIENT_SECRET}}" >> env/.env.prod
50+
51+
cd /var/web05-Denamu
52+
docker-compose -f docker-compose/docker-compose.prod.yml up --build --no-deps --force-recreate -d app
53+
docker image prune -f
54+
docker builder prune -f
Lines changed: 37 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,37 @@
1-
name: BE Test
2-
3-
on:
4-
pull_request:
5-
branches:
6-
- main
7-
workflow_dispatch:
8-
9-
jobs:
10-
tests:
11-
runs-on: ubuntu-latest
12-
13-
steps:
14-
# 1. ํ˜„์žฌ PR ๋ธŒ๋žœ์น˜๋กœ ์ฒดํฌ์•„์›ƒ ํ•˜๊ธฐ
15-
- name: Checkout code
16-
uses: actions/checkout@v3
17-
with:
18-
ref: ${{ github.event.pull_request.head.ref }}
19-
20-
# 2. Node.js ํ™˜๊ฒฝ ์„ค์ •
21-
- name: Set up Node.js
22-
uses: actions/setup-node@v4
23-
with:
24-
node-version: '22'
25-
cache: 'npm'
26-
27-
# 3. ์˜์กด์„ฑ ์„ค์น˜
28-
- name: Install dependencies
29-
working-directory: ./server
30-
run: npm install
31-
32-
# 4. ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ ์‹คํ–‰
33-
- name: Run Integration Test
34-
working-directory: ./server
35-
run: npm run test
36-
37-
# TODO: ํ…Œ์ŠคํŠธ ์ปค๋ฒ„๋ฆฌ์ง€, ํ˜น์€ ํ…Œ์ŠคํŠธ ๋กœ๊ทธ ์ปค๋ฉ˜ํŠธ ์ž‘์„ฑ ๋กœ์ง ์ถ”๊ฐ€ํ•˜๊ธฐ
1+
name: BE DTO Test
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- main
7+
workflow_dispatch:
8+
9+
jobs:
10+
tests:
11+
runs-on: ubuntu-latest
12+
13+
steps:
14+
# 1. ํ˜„์žฌ PR ๋ธŒ๋žœ์น˜๋กœ ์ฒดํฌ์•„์›ƒ ํ•˜๊ธฐ
15+
- name: Checkout code
16+
uses: actions/checkout@v3
17+
with:
18+
ref: ${{ github.event.pull_request.head.ref }}
19+
20+
# 2. Node.js ํ™˜๊ฒฝ ์„ค์ •
21+
- name: Set up Node.js
22+
uses: actions/setup-node@v4
23+
with:
24+
node-version: "22"
25+
cache: "npm"
26+
27+
# 3. ์˜์กด์„ฑ ์„ค์น˜
28+
- name: Install dependencies
29+
working-directory: ./server
30+
run: npm ci
31+
32+
# 4. DTO ํ…Œ์ŠคํŠธ ์‹คํ–‰
33+
- name: Run Integration Test
34+
working-directory: ./server
35+
run: npm run test:dto
36+
37+
# TODO: ํ…Œ์ŠคํŠธ ์ปค๋ฒ„๋ฆฌ์ง€, ํ˜น์€ ํ…Œ์ŠคํŠธ ๋กœ๊ทธ ์ปค๋ฉ˜ํŠธ ์ž‘์„ฑ ๋กœ์ง ์ถ”๊ฐ€ํ•˜๊ธฐ
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
name: BE E2E Test
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- main
7+
workflow_dispatch:
8+
9+
jobs:
10+
tests:
11+
runs-on: ubuntu-latest
12+
13+
steps:
14+
# 1. ํ˜„์žฌ PR ๋ธŒ๋žœ์น˜๋กœ ์ฒดํฌ์•„์›ƒ ํ•˜๊ธฐ
15+
- name: Checkout code
16+
uses: actions/checkout@v3
17+
with:
18+
ref: ${{ github.event.pull_request.head.ref }}
19+
20+
# 2. Node.js ํ™˜๊ฒฝ ์„ค์ •
21+
- name: Set up Node.js
22+
uses: actions/setup-node@v4
23+
with:
24+
node-version: "22"
25+
cache: "npm"
26+
27+
# 3. ์˜์กด์„ฑ ์„ค์น˜
28+
- name: Install dependencies
29+
working-directory: ./server
30+
run: npm ci
31+
32+
# 4. E2E ํ…Œ์ŠคํŠธ ์‹คํ–‰
33+
- name: Run Integration Test
34+
working-directory: ./server
35+
run: npm run test:e2e
36+
37+
# TODO: ํ…Œ์ŠคํŠธ ์ปค๋ฒ„๋ฆฌ์ง€, ํ˜น์€ ํ…Œ์ŠคํŠธ ๋กœ๊ทธ ์ปค๋ฉ˜ํŠธ ์ž‘์„ฑ ๋กœ์ง ์ถ”๊ฐ€ํ•˜๊ธฐ

0 commit comments

Comments
ย (0)