76 lines
2.1 KiB
YAML
76 lines
2.1 KiB
YAML
name: Deploy Project
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
version:
|
|
description: Application Version
|
|
type: string
|
|
required: true
|
|
env:
|
|
description: Deployment Environment
|
|
type: string
|
|
required: false
|
|
|
|
jobs:
|
|
deploy:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
|
|
# - name: Dump inputs context
|
|
# env:
|
|
# INPUTS_CONTEXT: ${{ toJson(inputs) }}
|
|
|
|
- name: Dump Inputs context
|
|
env:
|
|
INPUTS_CONTEXT: ${{ toJson(inputs) }}
|
|
run: echo "$INPUTS_CONTEXT"
|
|
|
|
- name: Dump GitHub context
|
|
env:
|
|
GITHUB_CONTEXT: ${{ toJson(github) }}
|
|
run: echo "$GITHUB_CONTEXT"
|
|
|
|
- name: Dump job context
|
|
env:
|
|
JOB_CONTEXT: ${{ toJson(job) }}
|
|
run: echo "$JOB_CONTEXT"
|
|
|
|
- name: Dump steps context
|
|
env:
|
|
STEPS_CONTEXT: ${{ toJson(steps) }}
|
|
run: echo "$STEPS_CONTEXT"
|
|
|
|
- name: Dump runner context
|
|
env:
|
|
RUNNER_CONTEXT: ${{ toJson(runner) }}
|
|
run: echo "$RUNNER_CONTEXT"
|
|
|
|
- name: Dump strategy context
|
|
env:
|
|
STRATEGY_CONTEXT: ${{ toJson(strategy) }}
|
|
run: echo "$STRATEGY_CONTEXT"
|
|
|
|
- name: Dump matrix context
|
|
env:
|
|
MATRIX_CONTEXT: ${{ toJson(matrix) }}
|
|
run: echo "$MATRIX_CONTEXT"
|
|
|
|
- name: Setup SSH
|
|
shell: bash
|
|
run: |
|
|
whoami
|
|
eval `ssh-agent -s`
|
|
mkdir -p ~/.ssh/
|
|
touch ~/.ssh/id_rsa
|
|
echo "${{secrets.SSH_KEY}}" | tr -d '\r' > ~/.ssh/id_rsa
|
|
chmod 700 ~/.ssh/id_rsa
|
|
ssh-keyscan -t rsa,dsa,ecdsa,ed25519 ${{secrets.SSH_HOST}} >> ~/.ssh/known_hosts
|
|
chmod 644 ~/.ssh/known_hosts
|
|
|
|
- name: SSH to the Prod env
|
|
shell: bash
|
|
run: |
|
|
ssh -tt -o StrictHostKeyChecking=no gitea@${{secrets.SSH_HOST}} 'docker pull docker.savin.nyc/go-receipt-tracker:nightly'
|
|
ssh -tt -o StrictHostKeyChecking=no gitea@${{secrets.SSH_HOST}} 'cd /opt/projects/receipt-tracker && docker compose down --remove-orphans && docker compose up -d'
|