Skip to content

Commit

Permalink
Create deployment.yml
Browse files Browse the repository at this point in the history
  • Loading branch information
thaitri2005 authored Apr 29, 2024
1 parent 2a7f93f commit 1d4fed4
Showing 1 changed file with 46 additions and 0 deletions.
46 changes: 46 additions & 0 deletions .github/workflows/deployment.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: Continuous Deployment

on:
push:
branches:
- main # Set this to your production branch

jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2

- name: Set up Node.js
uses: actions/setup-node@v2
with:
node-version: '20.x' # Match the version you need

- name: Install Dependencies
run: npm ci

- name: Build
run: npm run build # This step depends on your application needing a build process

- name: Copy files to the server
uses: appleboy/scp-action@master
with:
host: ${{ secrets.SERVER_IP }}
username: ${{ secrets.SERVER_USER }}
key: ${{ secrets.SSH_PRIVATE_KEY }}
port: 22
source: "./" # Adjust this to match the files/directories you want to deploy
target: "/path/to/your/app"

- name: Restart the application
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.SERVER_IP }}
username: ${{ secrets.SERVER_USER }}
key: ${{ secrets.SSH_PRIVATE_KEY }}
port: 22
script: |
cd /path/to/your/app
npm install --production
pm2 restart all # Or any other command to restart your app

0 comments on commit 1d4fed4

Please sign in to comment.