65 lines
1.9 KiB
YAML
65 lines
1.9 KiB
YAML
name: Deploy CV Site (andreknie.de)
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
paths:
|
|
- 'privat/CV/andreknie.de/**'
|
|
|
|
jobs:
|
|
deploy:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout Code
|
|
uses: actions/checkout@v3
|
|
|
|
- name: Install & Build Frontend
|
|
working-directory: privat/CV/andreknie.de
|
|
run: |
|
|
npm ci
|
|
npm run build
|
|
|
|
- name: Copy project files to VM
|
|
uses: appleboy/scp-action@v0.1.7
|
|
with:
|
|
host: ${{ secrets.SSH_HOST }}
|
|
username: ${{ secrets.SSH_USER }}
|
|
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
|
source: "privat/CV/andreknie.de/*"
|
|
target: "/opt/orchestrator"
|
|
|
|
- name: Execute Deployment on VM
|
|
uses: appleboy/ssh-action@v1.0.3
|
|
with:
|
|
host: ${{ secrets.SSH_HOST }}
|
|
username: ${{ secrets.SSH_USER }}
|
|
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
|
script: |
|
|
cd /opt/orchestrator/privat/CV/andreknie.de
|
|
|
|
# 1. Sichere .env aus den Gitea Secrets generieren
|
|
cat <<EOF > .env
|
|
PORT=3003
|
|
NODE_ENV=production
|
|
BASE_URL=https://andreknie.de
|
|
SMTP_HOST=${{ secrets.SMTP_HOST }}
|
|
SMTP_PORT=587
|
|
SMTP_USER=${{ secrets.SMTP_USER }}
|
|
SMTP_PASS=${{ secrets.SMTP_PASS }}
|
|
STAKEHOLDER_EMAIL=kontakt@d-hive.de
|
|
|
|
DATABASE_URL=postgresql://umami:${{ secrets.UMAMI_DB_PASS }}@umami-db:5432/umami
|
|
POSTGRES_DB=umami
|
|
POSTGRES_USER=umami
|
|
POSTGRES_PASSWORD=${{ secrets.UMAMI_DB_PASS }}
|
|
HASH_SALT=${{ secrets.UMAMI_HASH_SALT }}
|
|
EOF
|
|
|
|
# 2. Frontend-Build in den Caddy-Ordner verschieben
|
|
mkdir -p site
|
|
cp -r dist/* site/
|
|
|
|
# 3. Docker Container neustarten
|
|
docker compose up -d --build
|