Files
github-action/wiki/Home.da.md
T
Tirsvad 2eb852cfc6
Validate workflows / validate (pull_request) Successful in 15s
Reuse TOKEN_FOR_GITEA for the wiki when TOKEN_FOR_GITEA_WIKI is absent
The Publish wiki workflow now reads secrets.TOKEN_FOR_GITEA_WIKI ||
secrets.TOKEN_FOR_GITEA, so the existing token can publish the wiki when it
has write:repository. Update the missing-token message, the credentials and
troubleshooting guides, the README, the tests and the affected English
wiki pages with their Danish and Bahasa Malaysia translations.

Task: MIL-005#8
2026-10-10 09:36:47 +08:00

3.2 KiB

Dette er en oversættelse af Home. Den engelske side er autoritativ, og ændringer her bliver overskrevet, næste gang wikien publiceres.

English | Dansk | Bahasa Melayu

TirSystem GitHub Actions

En samling af genbrugelige Gitea Actions-workflows til DevOps-professionelle og softwareudviklere, der arbejder på TirSystem-projekter.

Oversigt

Dette repository er den centrale samling af genbrugelig automatisering til TirSystems repositories. Det primære repository ligger på git.tirsystem.com (Gitea) og spejles med push til GitHub.

Det indeholder i øjeblikket Gitea-workflowet sync-github-metadata.yml, som kopierer repositoryets beskrivelse og emner (topics) fra Gitea til GitHub-spejlet ved hvert push til main, ved manuel kørsel og dagligt kl. 03:17 UTC.

Krav

  • En Gitea-instans med Actions aktiveret og en runner med labelen ubuntu-latest og python3
  • Et konfigureret GitHub push-spejl på Gitea-repositoryet (højst ét; repositories uden spejl springes over uden fejl)
  • Repository-secrets:
    • TOKEN_FOR_GITEA: Gitea API-token (almindelig tekststreng eller JSON med GITEA_TOKEN)
    • CREDENTIALS_FOR_GITHUB: JSON-objekt med GITHUB_PAT, et GitHub personal access token, der må redigere spejl-repositoryet
    • TOKEN_FOR_GITEA_WIKI (valgfri, kun i dette repository, til workflowet Publish wiki): Gitea-token, der kan skrive til repositoryets wiki; hvis den mangler, bruges TOKEN_FOR_GITEA, som så skal have skriveadgang

Opsætning

Der skal ikke installeres afhængigheder; workflowet bruger kun Pythons standardbibliotek.

  1. Klon repositoryet:
    git clone ssh://git@git.tirsystem.com:10022/TirSystem/github-action.git
    
  2. Tilføj de secrets, der er nævnt under Krav, til repositoryets indstillinger i Gitea.
  3. Konfigurer GitHub push-spejlet i repositoryets indstillinger.

Kørsel

Workflows kører automatisk ved push til main og efter den daglige tidsplan. For at køre manuelt skal du starte Sync GitHub mirror metadata via workflow_dispatch fra fanen Actions i Gitea.

Tests

Workflow-filerne og den Python-kode, der er indlejret i dem, valideres af offline-tests, som hverken kræver netværksadgang eller secrets:

python3 -m venv .venv
source .venv/bin/activate        # Windows PowerShell: .venv\Scripts\Activate.ps1
python -m pip install -r tests/requirements.txt
python -m pytest -q tests

De samme kontroller kører ved hver pull request og hvert push til main gennem validate-workflows.yml. De parser alle workflows som YAML, kompilerer den indlejrede Python-kode, kræver eksplicitte jobtilladelser og tester parsing af credentials, parsing af push-spejlets adresse og synkroniseringsforløbet mod et falsk API.

Efter en ændring af synkroniseringsworkflowet skal du også starte Sync GitHub mirror metadata manuelt i Gitea og sammenligne beskrivelsen og emnerne på GitHub-spejlet.