Skip to content

Commit c5a81a8

Browse files
committed
preparing to deploy
1 parent 05c0696 commit c5a81a8

File tree

11 files changed

+428
-310
lines changed

11 files changed

+428
-310
lines changed

.github/workflows/cicd.yml

Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,111 @@
1+
name: VlowAI CI/CD
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
paths-ignore:
8+
- "README.md"
9+
pull_request:
10+
branches:
11+
- master
12+
paths-ignore:
13+
- "README.md"
14+
15+
jobs:
16+
continuous-integration:
17+
runs-on: ubuntu-latest
18+
19+
steps:
20+
- name: Checkout Code
21+
uses: actions/checkout@v4
22+
23+
- name: Login to Docker Hub
24+
run: |
25+
echo "${{ secrets.DOCKER_PASSWORD }}" | docker login \
26+
-u "${{ secrets.DOCKER_USERNAME }}" --password-stdin
27+
28+
- name: Build and Push Backend Image
29+
run: |
30+
docker build -t ${{ secrets.DOCKER_USERNAME }}/vlow-api:latest ./server
31+
docker push ${{ secrets.DOCKER_USERNAME }}/vlow-api:latest
32+
33+
- name: Build and Push Frontend Image
34+
run: |
35+
docker build -t ${{ secrets.DOCKER_USERNAME }}/vlow-frontend:latest ./client
36+
docker push ${{ secrets.DOCKER_USERNAME }}/vlow-frontend:latest
37+
38+
continuous-deployment:
39+
needs: continuous-integration
40+
runs-on: self-hosted
41+
42+
steps:
43+
- name: Checkout Repository
44+
uses: actions/checkout@v4
45+
46+
- name: Pull Latest Backend Image
47+
run: docker pull ${{ secrets.DOCKER_USERNAME }}/vlow-api:latest
48+
49+
- name: Pull Latest Frontend Image
50+
run: docker pull ${{ secrets.DOCKER_USERNAME }}/vlow-frontend:latest
51+
52+
- name: Stop and Remove Old Containers
53+
run: |
54+
docker compose down || true
55+
56+
- name: Run New Containers
57+
run: |
58+
docker compose up -d --remove-orphans
59+
env:
60+
# SERVER CONFIG
61+
PORT: ${{ secrets.PORT }}
62+
NODE_ENV: ${{ secrets.NODE_ENV }}
63+
FRONTEND_URL: ${{ secrets.FRONTEND_URL }}
64+
JWT_SECRET: ${{ secrets.JWT_SECRET }}
65+
JWT_EXPIRE: ${{ secrets.JWT_EXPIRE }}
66+
67+
# EMAIL CONFIG
68+
SMTP_HOST: ${{ secrets.SMTP_HOST }}
69+
SMTP_PORT: ${{ secrets.SMTP_PORT }}
70+
SMTP_EMAIL: ${{ secrets.SMTP_EMAIL }}
71+
SMTP_PASSWORD: ${{ secrets.SMTP_PASSWORD }}
72+
FROM_EMAIL: ${{ secrets.FROM_EMAIL }}
73+
FROM_NAME: ${{ secrets.FROM_NAME }}
74+
75+
# SEEDER CONFIG FILE
76+
ADMIN_EMAIL: ${{ secrets.ADMIN_EMAIL }}
77+
ADMIN_PASSWORD: ${{ secrets.ADMIN_PASSWORD }}
78+
79+
# DATABASE CONFIG
80+
DB_HOST: ${{ secrets.DB_HOST }}
81+
DB_USER: ${{ secrets.DB_USER }}
82+
DB_PASS: ${{ secrets.DB_PASS }}
83+
DB_NAME: ${{ secrets.DB_NAME }}
84+
DB_DIALECT: ${{ secrets.DB_DIALECT }}
85+
86+
# MINIO CONFIGURATION
87+
MINIO_PUBLIC_URL: ${{ secrets.MINIO_PUBLIC_URL }}
88+
MINIO_ENDPOINT: ${{ secrets.MINIO_ENDPOINT }}
89+
MINIO_PORT: ${{ secrets.MINIO_PORT }}
90+
MINIO_USE_SSL: ${{ secrets.MINIO_USE_SSL }}
91+
MINIO_ACCESS_KEY: ${{ secrets.MINIO_ACCESS_KEY }}
92+
MINIO_SECRET_KEY: ${{ secrets.MINIO_SECRET_KEY }}
93+
MINIO_BUCKET: ${{ secrets.MINIO_BUCKET }}
94+
95+
# N8N CONFIG
96+
N8N_SIMULATOR_URL: ${{ secrets.N8N_SIMULATOR_URL }}
97+
98+
# AI CONFIGURATION
99+
WAHA_BASE_URL: ${{ secrets.WAHA_BASE_URL }}
100+
WAHA_API_KEY: ${{ secrets.WAHA_API_KEY }}
101+
WAHA_EDITION: ${{ secrets.WAHA_EDITION }}
102+
103+
# SECURITY CONFIG
104+
RATE_LIMIT_MAX: ${{ secrets.RATE_LIMIT_MAX }}
105+
RATE_LIMIT_AUTH_MAX: ${{ secrets.RATE_LIMIT_AUTH_MAX }}
106+
DB_POOL_MAX: ${{ secrets.DB_POOL_MAX }}
107+
SYNC_ALTER: ${{ secrets.SYNC_ALTER }}
108+
- name: Add Containers to Tunnel
109+
run: |
110+
docker network connect ${{ secrets.TUNNEL_NAME }} vlow-api || true
111+
docker network connect ${{ secrets.TUNNEL_NAME }} vlow-frontend || true

EVALUATION_INTEGRATION.md

Lines changed: 0 additions & 153 deletions
This file was deleted.

PAGINATION_ARCHITECTURE.md

Lines changed: 0 additions & 113 deletions
This file was deleted.

client/.dockerignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
node_modules
2+
npm-debug.log
3+
.env

0 commit comments

Comments
 (0)