Files
gitea-ci-library/docs/architecture.md
T
moilanik 28754bd410
ci-report POC report published
CI / call-engine (push) Successful in 14s
docs: POC-katselmus — git-pages retention, ADRt, dokumenttipäivitykset
- ADR 0004: commit-status-periaate (natiivi riittää, API vain custom-linkkiin)
- ADR 0005: provider & consumer -malli (ci-engine.yml lukittu rajapinta)
- docs/design-rationale: uusi periaate 1 "Hyödynnä natiivia",
  periaate 2 korjattu (API vain tarvittaessa),
  periaate 6 (MinIO→git-pages), teknologiavalinnat poistettu
- docs/config-model: isContainerBuild→isArtifactBuild, Docker-labelit poistettu
- docs/ai-context: monorepo-kuvaus (git-pages oma kokonaisuus, ohut rajapinta)
- docs/architecture, tech-stack, report-hosting, shared-scripts, workflows:
  MinIO→git-pages, provider agnostinen build-ekosysteemeille
- docs/adr/: ADRt siirretty decisions/→adr/
- git-pages/docs: retention-osiot päivitetty CronJob→sidecar+HTTP API,
  URL-kaava korjattu (reports/{sha8}/)
- git-pages/docs/implementation-notes: uusi (storage v2, Host-header,
  whiteout, .init, PATCH+directoryt)
- git-pages/templates/init-job.yaml: post-install init (.index)
- scripts/publish-git-pages.sh: PUT-fallback poistettu (init hoitaa),
  palauttaa BASE URL ilman index.html
2026-06-12 08:55:23 +03:00

1.9 KiB

Architecture — Gitea Actions CI -kirjasto

⚠️ POC-vaihe. Tämä dokumentti kuvaa suunniteltua arkkitehtuuria. Toteutus on edelleen kehitysvaiheessa (ci-engine.yml on ainoa reusable workflow). Odota uudelleenkirjoitusta ennen kuin luotat tähän dokumenttiin.

Normatiivinen lähde: ADR 0004, ADR 0005, docs/design-rationale.md.


Yleiskuvaus

Kirjasto on kokoelma Gitea Actions reusable workflow -tiedostoja, jotka orkestroivat mikropalveluiden build-, testaus-, raportointi-, deployment- ja test flow -prosessit. Projekti käyttää kirjastoa uses:-direktiivillä.

Kirjasto on Gitea-spesifi. Raportit hallinnoidaan git-pages Helm-chartilla (git-pages/).

Provider & Consumer -malli

Rooli Kuvaus
Provider gitea-ci-library — tarjoaa ci-engine.yml:n (lukittu rajapinta) sekä scriptit
Consumer Mikropalveluprojekti — kutsuu uses:-direktiivillä, omistaa pipeline-logiikan

Tarkemmin: ADR 0005.

Komponentit (POC)

Komponentti Tila
ci-engine.yml Toimii POC-tasolla. Ainoa reusable workflow.
publish-git-pages.sh Toimii. PATCH tar git-pagesiin.
report-status.sh Toimii. POSTaa commit-status (vain custom-linkkiin).
dispatch-workflow.sh Suunniteltu, ei toteutettu POCissa.
git-pages/ Helm-chartti raporttien hostaukseen. Oma kokonaisuus, tarkemmin: git-pages/docs/.

Ulkoiset palvelut

Palvelu Rooli
Gitea REST API Commit-status, workflow-dispatch, run-pollaus
Gitea Packages Docker-imagen säilytys
git-pages Raporttien hostaus
SonarQube Koodin laadun analyysi (suunniteltu)

Arkkitehtuuriset rajoitteet

  • ci-engine.yml on ainoa consumerin kutsuma rajapinta (ADR 0005)
  • Gitea Actionsin natiivi commit-status on ensisijainen (ADR 0004)
  • Raportit ovat julkisia URL:lla (osoite tunnettava)