Files
gitea-ci-library/docs/architecture.md
T
niko dacb8b4ef7
CI / feature (push) Has been skipped
CI / main (push) Failing after 0s
POC: test reusable workflow job visibility in Gitea Actions (#5)
Co-authored-by: moilanik <niko.moilanen@tietoevry.com>
Reviewed-on: #5
2026-06-13 09:37:47 +03:00

53 lines
1.9 KiB
Markdown

# 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)