1.9 KiB
1.9 KiB
Architecture — Gitea Actions CI -kirjasto
⚠️ POC-vaihe. Tämä dokumentti kuvaa suunniteltua arkkitehtuuria. Toteutus on edelleen kehitysvaiheessa (
ci-engine.ymlon 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.ymlon ainoa consumerin kutsuma rajapinta (ADR 0005)- Gitea Actionsin natiivi commit-status on ensisijainen (ADR 0004)
- Raportit ovat julkisia URL:lla (osoite tunnettava)