KabaForge
🌍 Türkçe · English · Deutsch · Français · Русский

12 — Actions (CI) und Releases

Mit Actions lassen Sie bei jedem Commit automatisch Tests laufen, Pakete bauen oder Dateien veröffentlichen.

Ihr erster Workflow

Legen Sie im Repository eine Datei .gitea/workflows/test.yml an:

name: test
on: [push, pull_request]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: echo "Repository ausgecheckt"
      - run: ./scripts/test.sh

Sobald Sie committen, startet der Lauf im Reiter Actions. Der auf diesem Server registrierte Runner hört auf die Labels ubuntu-latest, ubuntu-24.04 und ubuntu-22.04; runs-on muss eines davon sein.

Logs lesen

Actions → Lauf → Job → Schritt: Die Ausgabe jedes Schrittes klappt einzeln auf. Der rote Schritt zeigt, wo es hakt; oben rechts starten Sie den Lauf erneut.

Wann soll es laufen

on:
  push:
    branches: [main]        # nur bei Pushes auf main
  pull_request:              # bei jedem Pull Request
  schedule:
    - cron: '0 3 * * *'      # jede Nacht um 03:00

Secrets

Schreiben Sie Passwörter und Tokens nie in die Workflow-Datei. Legen Sie sie unter Einstellungen → Actions → Secrets an und verwenden Sie sie so:

      - run: ./deploy.sh
        env:
          TOKEN: ${{ secrets.DEPLOY_TOKEN }}

In den Logs werden Secrets maskiert.

Ein Release veröffentlichen

Ist ein Arbeitsstand fertig, versehen Sie ihn mit einem Tag und erstellen ein Release:

  1. Releases → Neues Release.
  2. Tag — etwa v1.0.0. Existiert er nicht, wird er angelegt.
  3. Titel und Notizen — was sich geändert hat; die Commit-Liste hilft.
  4. Hängen Sie Installer, Archive oder Dokumente an (Anhänge).
  5. Als Entwurf speichern oder Release veröffentlichen.

Jedes veröffentlichte Release bietet automatisch Quellcode-Archive (.zip, .tar.gz) und dauerhafte Download-Links.

Tag oder Release?

Pakete

Der Reiter Pakete listet die an Ihr Repository gebundenen Paket-Registries (npm, Container, generic und mehr). Sobald Sie ein Paket veröffentlichen, erscheint es hier — samt Installationsanleitung auf seiner Seite.

⬅ Zurück: 11 — Issues, Projekte und Wiki📚 Alle KapitelWeiter: 13 — Repository-Verwaltung und Sicherheit ➡