File tree Expand file tree Collapse file tree 1 file changed +48
-0
lines changed
Expand file tree Collapse file tree 1 file changed +48
-0
lines changed Original file line number Diff line number Diff line change 1+ name : Production deployment
2+ on :
3+ workflow_dispatch :
4+ jobs :
5+ checkout :
6+ runs-on : [self-hosted, prod]
7+ environment : dev
8+ steps :
9+ - name : Get code
10+ uses : actions/checkout@v4
11+ - name : Cache dependencies
12+ id : cache
13+ uses : actions/cache@v4
14+ with :
15+ path : node_modules
16+ key : deps-node-modules-${{ hashFiles('**/package-lock.json') }}
17+ - name : Install dependencies
18+ if : steps.cache.outputs.cache-hit != 'true'
19+ run : npm ci
20+ create_env :
21+ needs : checkout
22+ runs-on : [self-hosted, prod]
23+ environment : dev
24+ steps :
25+ - name : Create .env file
26+ run : |
27+ echo "DB_HOST=${{ secrets.DB_HOST }}" >> dev.env
28+ echo "DB_PORT=${{ secrets.DB_PORT }}" >> dev.env
29+ echo "DB_USER=${{ secrets.DB_USER }}" >> dev.env
30+ echo "DB_PASSWORD=${{ secrets.DB_PASSWORD }}" >> dev.env
31+ echo "DB_NAME=${{ secrets.DB_NAME }}" >> dev.env
32+ echo "DB_DROP_SCHEMA=${{ secrets.DB_DROP_SCHEMA }}" >> dev.env
33+ echo "AUTH_SECRET=${{ secrets.AUTH_SECRET }}" >> dev.env
34+ echo "JWT_EXPIRES_IN=${{ secrets.JWT_EXPIRES_IN }}" >> dev.env
35+ echo "PORT=${{ secrets.PORT }}" >> dev.env
36+ build :
37+ needs : create_env
38+ runs-on : [self-hosted, prod]
39+ steps :
40+ - name : Build website
41+ id : build-website
42+ run : npm run build
43+ deploy :
44+ needs : build
45+ runs-on : [self-hosted, prod]
46+ steps :
47+ - name : Run deployment
48+ run : NODE_ENV=dev pm2 restart dist/main.js --name=events-api
You can’t perform that action at this time.
0 commit comments