name: Deploy (build on server) on: workflow_dispatch: jobs: deploy: runs-on: ubuntu-latest permissions: contents: read steps: - name: Deploy via SSH uses: appleboy/ssh-action@v1.0.3 with: host: ${{ vars.SSH_HOST }} username: ${{ vars.SSH_USER }} key: ${{ secrets.SSH_KEY }} port: ${{ vars.SSH_PORT }} script: | set -e cd ${{ vars.DEPLOY_PATH }} if [ ! -d .git ]; then git init git remote add origin git@gitea.hmac.kr:b24014/kngil_home.git else git remote set-url origin git@gitea.hmac.kr:b24014/kngil_home.git fi cat << 'ENVEOF' > .env WEB_HOST_PORT=${{ vars.WEB_HOST_PORT }} DB_HOST=${{ vars.DB_HOST }} DB_PORT=${{ vars.DB_PORT }} DB_HOST_PORT=${{ vars.DB_HOST_PORT }} DB_NAME=${{ vars.DB_NAME }} DB_USER=${{ vars.DB_USER }} DB_PASS=${{ secrets.DB_PASS }} OIDC_ISSUER=${{ vars.OIDC_ISSUER }} OIDC_CLIENT_ID=${{ vars.OIDC_CLIENT_ID }} OIDC_CLIENT_SECRET=${{ secrets.OIDC_CLIENT_SECRET }} OIDC_REDIRECT_URL=${{ vars.OIDC_REDIRECT_URL }} OIDC_SCOPES=${{ vars.OIDC_SCOPES }} IDP_SERVICE_URL=${{ vars.IDP_SERVICE_URL }} ENVEOF # Export variables from .env file set -a source .env set +a git fetch origin main git checkout -B main origin/main git pull --ff-only docker compose --env-file .env up -d --build