Skip to content

aggiornato readme #8

aggiornato readme

aggiornato readme #8

Workflow file for this run

name: Production deployment
on:
push:
branches:
- main
tags:
- 'v*'
jobs:
build:
permissions:
contents: read
packages: write
uses: ./.github/workflows/build.yml
deployment:
runs-on: ubuntu-latest
environment: prod
needs: [build]
steps:
- uses: actions/checkout@v4
- name: Install Sops
uses: mdgreenwald/mozilla-sops-action@v1.2.0
with:
version: '3.8.1'
- name: Decrypt secrets
run: |
for i in backend/deploy/prod/*.env; do
[ -f "$i" ] || break
name=$(basename "${i}")
echo "decrypting $i to $name..."
decrypted=$(sops --decrypt --input-type dotenv $i | sed 's/data=//g')
printf "${decrypted}" > $name
done
shell: bash
env:
SOPS_AGE_KEY: '${{ secrets.AGE_PRIVATE_KEY }}'
- name: Copy docker compose
run:
cp ./backend/deploy/docker-compose.yaml ./docker-compose.yaml
shell: bash
- name: copy files to target server via scp
uses: appleboy/scp-action@v0.1.3
with:
host: ${{ secrets.DEPLOY_HOST }}
username: ${{ secrets.DEPLOY_USERNAME }}
port: 22
key: ${{ secrets.DEPLOY_KEY }}
source: "./docker-compose.yaml,./*.env"
target: "/var/sede/"
- name: Run docker compose
uses: appleboy/ssh-action@v1.0.3
with:
host: ${{ secrets.DEPLOY_HOST }}
username: ${{ secrets.DEPLOY_USERNAME }}
key: ${{ secrets.DEPLOY_KEY }}
port: 22
script: docker compose -f /var/sede/docker-compose.yaml up -d