diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml new file mode 100644 index 0000000..a7096e6 --- /dev/null +++ b/.gitea/workflows/deploy.yml @@ -0,0 +1,45 @@ +name: Deploy Application + +on: + push: + branches: [main] + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - name: Setup SSH + run: | + echo "Setting up SSH..." + mkdir -p ~/.ssh + echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa + chmod 600 ~/.ssh/id_rsa + echo "SSH key setup complete" + ls -la ~/.ssh/id_rsa + + - name: Deploy + shell: bash + env: + SSH_USER: ${{ secrets.SSH_USER }} + SSH_HOST: ${{ secrets.SSH_HOST }} + SSH_PORT: ${{ secrets.SSH_PORT }} + DEPLOY_PATH: ${{ secrets.DEPLOY_PATH }} + run: | + echo "Starting deployment..." + echo "Debug: User=$SSH_USER Host=$SSH_HOST Port=$SSH_PORT" + + if [ -z "$SSH_USER" ] || [ -z "$SSH_HOST" ] || [ -z "$SSH_PORT" ]; then + echo "Error: Required SSH variables are not set" + exit 1 + fi + + DEST="${SSH_USER}@${SSH_HOST}" + echo "Connecting to $DEST" + + ssh -i ~/.ssh/id_rsa \ + -p "${SSH_PORT}" \ + -o StrictHostKeyChecking=no \ + "${DEST}" \ + "cd ${DEPLOY_PATH} && \ + git pull && \ + docker compose up -d --build" \ No newline at end of file