dev #1

Merged
edi merged 4 commits from dev into main 2026-03-31 08:50:10 +00:00
2 changed files with 62 additions and 0 deletions
Showing only changes of commit 7aa0d99db1 - Show all commits

View File

@@ -0,0 +1,60 @@
name: Build and Deploy
on:
push:
branches:
- main
- dev
jobs:
build-and-deploy:
runs-on: debian-lxc
steps:
- name: Repository auschecken
uses: actions/checkout@v4
- name: Abhängigkeiten installieren
run: npm ci
# --- BRANCH-SPEZIFISCHE VARIABLEN SETZEN ---
- name: Konfiguration für Produktiv (main)
if: github.ref == 'refs/heads/main'
run: |
echo "ASTRO_SITE_URL=https://iten.pro" >> $GITHUB_ENV
echo "ASTRO_BASE_PATH=/" >> $GITHUB_ENV
echo "TARGET_PATH=~/htdocs/" >> $GITHUB_ENV
echo "DEPLOY_USER=${{ secrets.PROD_SSH_USERNAME }}" >> $GITHUB_ENV
echo "DEPLOY_KEY<<EOF" >> $GITHUB_ENV
echo "${{ secrets.PROD_SSH_PRIVATE_KEY }}" >> $GITHUB_ENV
echo "EOF" >> $GITHUB_ENV
- name: Konfiguration für Test (dev)
if: github.ref == 'refs/heads/dev'
run: |
echo "ASTRO_SITE_URL=https://home.iten.pro" >> $GITHUB_ENV
echo "ASTRO_BASE_PATH=/test" >> $GITHUB_ENV
echo "TARGET_PATH=/var/www/pages/" >> $GITHUB_ENV
echo "DEPLOY_USER=${{ secrets.DEV_SSH_USERNAME }}" >> $GITHUB_ENV
echo "DEPLOY_KEY<<EOF" >> $GITHUB_ENV
echo "${{ secrets.DEV_SSH_PRIVATE_KEY }}" >> $GITHUB_ENV
echo "EOF" >> $GITHUB_ENV
# --- BUILD UND DEPLOYMENT ---
- name: Astro Build ausführen
run: npm run build
# Der Build-Prozess nutzt nun automatisch die oben gesetzten ASTRO_* Variablen
- name: SSH-Umgebung vorbereiten
run: |
mkdir -p ~/.ssh
echo "$DEPLOY_KEY" > ~/.ssh/deploy_key
chmod 600 ~/.ssh/deploy_key
ssh-keyscan -p 22 ssh.netzone.ch >> ~/.ssh/known_hosts
- name: Deploy via rsync
run: |
# Nutzt die dynamischen Variablen für User und Zielpfad
rsync -avz --delete -e "ssh -p 22 -i ~/.ssh/deploy_key" dist/ $DEPLOY_USER@ssh.netzone.ch:$TARGET_PATH

View File

@@ -5,6 +5,8 @@ import tailwindcss from '@tailwindcss/vite';
// https://astro.build/config
export default defineConfig({
site: process.env.ASTRO_SITE_URL || 'http://localhost:4321',
base: process.env.ASTRO_BASE_PATH || '/',
vite: {
plugins: [tailwindcss()]
}