Files
michaelschiemer/deployment/legacy/gitea-workflows/CI_CD_CHECKLIST.md
2025-11-24 21:28:25 +01:00

2.9 KiB

CI/CD Pipeline - Setup Checklist

Status

1. Repository Secrets in Gitea BEREIT

Pfad: Repository → Settings → Secrets

Schnelles Setup:

bash scripts/prepare-secrets.sh

Erforderliche Secrets:

  • REGISTRY_USER: admin
  • REGISTRY_PASSWORD: registry-secure-password-2025
  • SSH_PRIVATE_KEY: Vollständiger Inhalt von ~/.ssh/production

Details: Siehe .gitea/workflows/QUICK_SECRETS_SETUP.md

Hinweis: Alle Secrets müssen in Gitea konfiguriert werden, bevor die Pipeline läuft.

2. Docker Registry

  • Registry läuft auf registry.michaelschiemer.de
  • Authentifizierung konfiguriert (admin/registry-secure-password-2025)
  • Erreichbar via HTTP auf 127.0.0.1:5000
  • Image framework bereits vorhanden

Registry-Test:

curl -u admin:registry-secure-password-2025 http://127.0.0.1:5000/v2/_catalog
# Erwartete Ausgabe: {"repositories":["framework"]}

3. Ansible Playbooks

  • deploy-update.yml - Aktualisiert für Docker Compose
  • rollback.yml - Aktualisiert für Docker Compose
  • setup-infrastructure.yml - Enthält Registry-Setup
  • sync-stacks.yml - Synchronisiert Stack-Konfigurationen

4. Workflow-Konfiguration

  • .gitea/workflows/production-deploy.yml - Haupt-Workflow
  • Dockerfile.production - Production Dockerfile erstellt
  • Application Stack konfiguriert (deployment/stacks/application/docker-compose.yml)

📋 Nächste Schritte

Schritt 1: Secrets in Gitea hinzufügen

Siehe .gitea/workflows/SECRETS_SETUP.md für detaillierte Anleitung.

Schritt 2: Workflow manuell testen

  1. Gehe zu: https://git.michaelschiemer.de/<username>/michaelschiemer/actions
  2. Wähle "Production Deployment Pipeline"
  3. Klicke "Run workflow"
  4. Wähle Branch main
  5. Beobachte die Ausführung

Schritt 3: Automatisches Deployment testen

  1. Push zu main Branch
  2. Workflow sollte automatisch starten
  3. Prüfe Logs in Gitea Actions

🔧 Troubleshooting

Registry nicht erreichbar

# Prüfe Registry-Status
ssh deploy@94.16.110.151 "docker ps | grep registry"

# Teste Registry-Erreichbarkeit
ssh deploy@94.16.110.151 "curl -u admin:registry-secure-password-2025 http://127.0.0.1:5000/v2/_catalog"

Workflow schlägt bei Registry-Login fehl

  • Prüfe, ob REGISTRY_USER und REGISTRY_PASSWORD Secrets korrekt gesetzt sind
  • Prüfe, ob das Passwort in Gitea mit dem Server übereinstimmt

Image Pull schlägt fehl

  • Prüfe, ob das Image in der Registry existiert:
    curl -u admin:registry-secure-password-2025 http://127.0.0.1:5000/v2/framework/tags/list
    
  • Prüfe Registry-Logs für Fehler

Deployment schlägt fehl

  • Prüfe Ansible-Logs im Workflow
  • Prüfe, ob deployment/stacks/application/docker-compose.yml auf dem Server existiert
  • Prüfe Docker-Logs auf dem Server:
    ssh deploy@94.16.110.151 "cd ~/deployment/stacks/application && docker compose logs"