Refactor deployment scripts to use GitHub environment variables and improve SSH key handling

This commit is contained in:
Frank John Begornia
2025-12-12 01:37:27 +08:00
parent a12ee2e5aa
commit 6f7b81f1da
2 changed files with 53 additions and 14 deletions

View File

@@ -13,26 +13,44 @@ jobs:
steps:
- name: Checkout code
run: |
git clone ${{ gitea.repository_url }} /workspace/repo || true
#!/bin/sh
git clone $GITHUB_SERVER_URL/$GITHUB_REPOSITORY.git /workspace/repo || true
cd /workspace/repo
git fetch origin ${{ gitea.ref_name }}
git checkout ${{ gitea.ref_name }}
git pull origin ${{ gitea.ref_name }}
git fetch origin $GITHUB_REF_NAME
git checkout $GITHUB_REF_NAME
git pull origin $GITHUB_REF_NAME
- name: Setup SSH Key
run: |
#!/bin/sh
mkdir -p ~/.ssh
echo "${{ secrets.DEPLOY_SSH_KEY }}" > ~/.ssh/deploy_key
printf '%s' "$DEPLOY_SSH_KEY" > ~/.ssh/deploy_key
chmod 600 ~/.ssh/deploy_key
env:
DEPLOY_SSH_KEY: ${{ secrets.DEPLOY_SSH_KEY }}
- name: Transfer Files to Development Server
run: |
#!/bin/sh
cd /workspace/repo
scp -o StrictHostKeyChecking=no -i ~/.ssh/deploy_key merchbay_admin_dev.tar.gz docker-compose.yml ${{ secrets.DEPLOY_USER }}@${{ secrets.DEPLOY_HOST }}:/tmp/
scp -o StrictHostKeyChecking=no -i ~/.ssh/deploy_key merchbay_admin_dev.tar.gz docker-compose.yml "$DEPLOY_USER@$DEPLOY_HOST:/tmp/"
env:
DEPLOY_USER: ${{ secrets.DEPLOY_USER }}
DEPLOY_HOST: ${{ secrets.DEPLOY_HOST }}
- name: Deploy to Development Server
run: |
ssh -o StrictHostKeyChecking=no -i ~/.ssh/deploy_key ${{ secrets.DEPLOY_USER }}@${{ secrets.DEPLOY_HOST }} << 'ENDSSH'
#!/bin/sh
ssh -o StrictHostKeyChecking=no -i ~/.ssh/deploy_key "$DEPLOY_USER@$DEPLOY_HOST" << 'ENDSSH'
#!/bin/sh
env:
DEPLOY_USER: ${{ secrets.DEPLOY_USER }}
DEPLOY_HOST: ${{ secrets.DEPLOY_HOST }}
DEV_DB_HOST: ${{ secrets.DEV_DB_HOST }}
DEV_DB_PORT: ${{ secrets.DEV_DB_PORT }}
DEV_DB_DATABASE: ${{ secrets.DEV_DB_DATABASE }}
DEV_DB_USERNAME: ${{ secrets.DEV_DB_USERNAME }}
DEV_DB_PASSWORD: ${{ secrets.DEV_DB_PASSWORD }}
# Set deployment directory for dev
DEPLOY_DIR="/var/www/merchbay_admin_dev"
@@ -98,5 +116,6 @@ jobs:
- name: Health Check
run: |
#!/bin/sh
sleep 10
curl -f https://dev.merchbay.app || exit 1