Skip to content

feat(cicd): add github workflow for automatic deployment #1

feat(cicd): add github workflow for automatic deployment

feat(cicd): add github workflow for automatic deployment #1

Workflow file for this run

name: Build And Deploy
on:
push:
branches: [master]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v3
- name: Set up SSH key
run: |
mkdir -p ~/.ssh
echo "${{ secrets.SSH_KEY }}" > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
ssh-keyscan -t rsa github.com >> ~/.ssh/known_hosts
# scp -rvo "StrictHostKeyChecking=no" $GITHUB_WORKSPACE ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:/repo-name
rsync -avzhP -e "ssh -o StrictHostKeyChecking=no" $GITHUB_WORKSPACE/ ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:/video-sharing-platform
- name: Deploy Backend
uses: appleboy/[email protected]
with:
host: ${{ secrets.SSH_HOST }}
username: ${{ secrets.SSH_USER }}
password: ${{ secrets.PASSWORD }}
key: ${{ secrets.SSH_KEY }}
script: |
cd /video-sharing-platform
# Run Docker Compose
docker compose -f prod.compose.yml up -d --build