| explanation | ||
| howto | ||
| reference | ||
| tutorials | ||
| README.md | ||
Einleitung
sebaTEC Forge ist eine Open-Source-Plattform für Automatisierung und Versionsverwaltung, basierend auf Forgejo.
sebaTEC Forge richtet sich an:
- Anfänger, die mit den Tutorials erste Automatisierungen umsetzen möchten,
- Fortgeschrittene, die mit den How-To-Guides konkrete Aufgaben lösen wollen,
- Nutzer, die eine selbstgehostete Alternative zu GitHub/GitLab suchen.
sebaTEC Forge und diese Dokumentation unterstützt dich beim Einstieg in CI/CD-Pipelines, der Verwaltung privater Repositories und der Automatisierung wiederkehrender Aufgaben ohne Abhängigkeit von externen Anbietern.
Tutorials
Für Einsteiger ohne Vorkenntnisse.
Tutorial 1: "Hello World" - Deine erste Pipeline
Erstelle eine einfache CI/CD-Pipeline, die den Text "Hallo Welt" ausgibt.
Ergebnis: Eine funktionierende Pipeline-Konfiguration, die du als Grundlage für eigene Projekte nutzen kannst.
Tutorial 2: SSH-Zugriff einrichten
Richte SSH-Schlüssel in Forge ein und nutze sie in einer Pipeline, um sicher mit externen Servern zu kommunizieren.
Ergebnis: Eine Pipeline, die über SSH mit einem Remote-Server interagiert (z. B. für Deployments).
Tutorial 3: Abhängigkeiten automatisch aktuell halten mit Renovate
Lade den Renovate-Bot als Mitarbeiter in dein Repository ein und richte automatische Dependency-Updates ein.
Ergebnis: Ein aktiver Renovate-Bot, der dein Repository überwacht und bei veralteten Abhängigkeiten automatisch Pull Requests erstellt.
How-To-Guides
Schritt-für-Schritt-Anleitungen für konkrete Aufgaben.
Hugo
Hugo-Entwicklungsumgebungen
Es gibt zwei Hauptansätze für die Einrichtung von Hugo-Entwicklungsumgebungen:
1. Lokale Installation – Pragmatische Lösung für schnelle Einrichtung:
- Hugo lokal via Bootstrap-Script installieren Installiere eine projektspezifische Hugo-Version lokal, unabhängig von einer systemweit installierten Version. Ideal für schnelle Einrichtungen und einfache Projekte.
2. Containerisierte Entwicklung – Konsistente, isolierte und portable Umgebung:
- Hugo-Entwicklungsumgebung mit DevContainer einrichten Richte eine projektspezifische Hugo-Entwicklungsumgebung mit DevContainer ein. Dies bietet eine konsistente, isolierte und portable Umgebung, die unabhängig vom Host-System funktioniert. Ideal für Teams und Solo-Entwickler, um "it works on my machine"-Probleme zu vermeiden und die Sicherheit zu erhöhen, indem weniger Software auf dem Host-System installiert wird.
Hugo-Deployment und CMS:
- Hugo-Seite auf Hostsharing deployen Richte eine CI/CD-Pipeline ein, die eine statische Hugo-Website generiert und auf Hostsharing veröffentlicht.
- Sveltia CMS zur Hugo-Seite hinzufügen
Binde Sveltia CMS in deine Hugo-Seite ein und verwalte Inhalte über eine Web-Oberfläche unter
/admin.
Forgejo
Repository-Synchronisation:
- Pull-Mirroring: GitHub zu sebaTEC Forge synchronisieren Konfiguriere einen Pull-Mirror, um alle Commits von GitHub automatisch zu sebaTEC Forge zu spiegeln und sebaTEC Forge als zentrale Arbeitskopie zu nutzen.
- Push-Mirroring: sebaTEC Forge zu GitHub synchronisieren Konfiguriere einen Push-Mirror, um alle Commits von sebaTEC Forge automatisch zu GitHub zu spiegeln und GitHub als Backup-Replika zu nutzen.
Sicherheit und Verwaltung:
- Secret per Skript hochladen Lade ein Secret per API und Skript in dein Repository hoch – als Alternative zur manuellen Eingabe über die Web-Oberfläche.
- Git-Commit-Signaturen verifizieren
Prüfe die Authentizität von Commits über die Web-Oberfläche oder mit
git log --show-signatureim Terminal.
Private Abhängigkeiten von sebaTEC Forge nutzen:
- Private Abhängigkeiten lokal nutzen Konfiguriere deinen lokalen Entwicklungsrechner, um private Abhängigkeiten (Go-Module, Hugo-Module, Python-Pakete) von sebaTEC Forge über SSH abzurufen.
- Private Abhängigkeiten in CI/CD-Pipelines nutzen Konfiguriere deine CI/CD-Pipeline, um private Abhängigkeiten (Go-Module, Hugo-Module, Python-Pakete) von sebaTEC Forge-Repositories während des Builds abzurufen.
Referenzen
Technische Details zu Konfigurationsoptionen, Variablen und Befehlen:
- Forgejo Actions Referenz auf forgejo.org
- Makefile-Referenz für Hugo-Deployments
- Forgejo Action Runner: Labels und vorinstallierte Software
Erklärungen
Hintergrund und Konzepte.
Forgejo Action Runner
Verstehe, wie der Forgejo Action Runner funktioniert, welche Runner-Labels es gibt und wann du debian-stable gegenüber debian-testing wählen solltest.
Variables und Secrets in Workflows
Verstehe den Unterschied zwischen Variables (für unkritische Konfiguration) und Secrets (für sensible Daten) und warum diese Trennung wichtig für die Sicherheit ist.
Repository-Sichtbarkeit in sebaTEC Forge
Verstehe die verschiedenen Sichtbarkeitsstufen (öffentlich, eingeschränkt, privat) und deren Auswirkungen auf CI/CD-Pipelines und den Zugriff auf private Abhängigkeiten.