poistettu turha pipeline tiedosto
CI / load-config (push) Successful in 15s
ci-cucumber Cucumber tests passed
ci-bats Bats tests
ci-build Build complete
CI / feature (push) Successful in 2m31s
CI / main (push) Has been skipped

This commit is contained in:
moilanik
2026-06-13 21:16:12 +03:00
parent c5a3a78a96
commit 1bc1e10c2f
7 changed files with 25 additions and 56 deletions
+5 -5
View File
@@ -3,7 +3,7 @@
## Päätös
Provider (gitea-ci-library) ja Consumer (mikropalveluprojekti) erotetaan
selkeällä rajapinnalla: `.gitea/workflows/ci-engine.yml` on ainoa pinta,
selkeällä rajapinnalla: `.gitea/workflows/build-feature.yml` on ainoa pinta,
jota consumer kutsuu.
Kaikki muu providerin koodi (scriptit, git-pages-helmi, retention) on
@@ -18,7 +18,7 @@ riippuvuutta.
# .gitea/workflows/ci.yml — consumerin repo
jobs:
ci:
uses: niko/gitea-ci-library/.gitea/workflows/ci-engine.yml@v1
uses: niko/gitea-ci-library/.gitea/workflows/build-feature.yml@v1
secrets: inherit
```
@@ -44,13 +44,13 @@ Consumer:
- Git-pages Helm-chartti
- Retention sidecar
- Scriptit ja työkalut (toteutus avoin, uudelleenkirjoitettavissa)
- Kaikki paitsi `ci-engine.yml` on sisäistä toteutusta ja voi muuttua
- Kaikki paitsi `build-feature.yml` on sisäistä toteutusta ja voi muuttua
ilman versiopäivitystä
## Periaatteet
1. `ci-engine.yml` on **lukittu rajapinta**. Consumer kutsuu tätä, ei
koskaan providerin scriptejä suoraan. `ci-engine.yml` voi muuttua vain
1. `build-feature.yml` on **lukittu rajapinta**. Consumer kutsuu tätä, ei
koskaan providerin scriptejä suoraan. `build-feature.yml` voi muuttua vain
version vaihtuessa.
2. Consumer omistaa pipeline-logiikan. Provider ei tiedä mitä testejä
ajetaan, missä järjestyksessä tai millä työkaluilla.
+4 -4
View File
@@ -30,12 +30,12 @@ uses: org/repo/scripts/workflow.yml@branch
```
Tästä syystä providerin reusable workflowt (`config-provider.yml`,
`ci-engine.yml`) ovat samassa `.gitea/workflows/`-kansiossa consumerin
pipeline-tiedostojen (`ci.yml`, `build-feature.yml`) kanssa.
`build-feature.yml`) ovat samassa `.gitea/workflows/`-kansiossa consumerin
pipeline-tiedostojen (`ci.yml`) kanssa.
Erottelu on nimessä ja dokumentaatiossa, ei kansiorakenteessa:
- `config-provider.yml`, `ci-engine.yml` — providerin tarjoamia
- `ci.yml`, `build-feature.yml` — consumerin omistamia
- `config-provider.yml`, `build-feature.yml` — providerin tarjoamia
- `ci.yml` — consumerin omistamia
## Providerin `scripts/` (juuressa)
+5 -6
View File
@@ -17,8 +17,7 @@ Tämä repo on käytännössä monorepo, jossa on kaksi itsenäistä osaa:
### 1. Juuri (`gitea-ci-library`)
Provider-kirjasto: reusable workflowt, scriptit, ADRt, dokumentaatio.
Rajapinta: `.gitea/workflows/ci-engine.yml` — ainoa pinta, jota consumerit
kutsuvat.
Consumer kutsuu `build-feature.yml`-workflowa `uses:`-direktiivillä.
### 2. `git-pages/` — oma kokonaisuus
Helm-chartti Codeberg git-pagesille. Täysin itsenäinen — oma dokumentaatio,
@@ -46,7 +45,7 @@ blob-arkkitehtuuri). Git-pages ei tiedä workflowista, scripteistä tai
provider-logiikasta.
## Architecture (POC-tila)
- **Provider & Consumer -malli**: `ci-engine.yml` on lukittu rajapinta.
- **Provider & Consumer -malli**: `build-feature.yml` on lukittu rajapinta.
ADR 0005.
- **Raporttien hostaus**: git-pages Helm-chartilla (`git-pages/`), `GIT_PAGES_URL` määrittää perusosoitteen.
- **Retention**: sidecar samassa podissa, HTTP API localhost:3000,
@@ -59,19 +58,19 @@ provider-logiikasta.
| Path | Purpose |
|---|---|
| `.gitea/workflows/` | `ci-engine.yml` (ainoa reusable workflow POC-vaiheessa) |
| `.gitea/workflows/` | Reusable workflowt (`build-feature.yml`, `config-provider.yml`) |
| `scripts/` | `publish-git-pages.sh`, `report-status.sh`, `dispatch-workflow.sh` |
| **`git-pages/`** | **Oma kokonaisuus: Helm-chartti + docs + retention** |
| `docs/` | Root-tason arkkitehtuuri, ADRt (00010005) |
| `docs/adr/` | Architecture Decision Records |
| `tests/` | Bats-testit skripteille |
| `.gitea/workflows/ci.yml` | Dogfood — kutsuu `ci-engine.yml`:a |
| `.gitea/workflows/ci.yml` | Dogfood — kutsuu `build-feature.yml`:a |
**Tarkemmat git-pages-asiat:** `git-pages/docs/` (implementation-notes,
architecture, design-rationale, secrets, tech-stack).
## Key Technical Decisions
- **Provider & Consumer**: `ci-engine.yml` lukittu rajapinta, muu koodi
- **Provider & Consumer**: `build-feature.yml` lukittu rajapinta, muu koodi
vapaasti muutettavissa
- **Vain Gitea, vain reusable workflowt**: ei custom actioneita, ei
multi-platform
+5 -9
View File
@@ -1,9 +1,6 @@
# 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.
>
> ⚠️ POC-vaihe. Tämä dokumentti kuvaa suunniteltua arkkitehtuuria.
> Normatiivinen lähde: ADR 0004, ADR 0005, `docs/design-rationale.md`.
---
@@ -21,7 +18,7 @@ Kirjasto on Gitea-spesifi. Raportit hallinnoidaan git-pages Helm-chartilla
| Rooli | Kuvaus |
|-------|--------|
| **Provider** | `gitea-ci-library` — tarjoaa `ci-engine.yml`:n (lukittu rajapinta) sekä scriptit |
| **Provider** | `gitea-ci-library` — tarjoaa `build-feature.yml` (lukittu rajapinta) sekä scriptit |
| **Consumer** | Mikropalveluprojekti — kutsuu `uses:`-direktiivillä, omistaa pipeline-logiikan |
Tarkemmin: ADR 0005.
@@ -30,10 +27,10 @@ Tarkemmin: ADR 0005.
| Komponentti | Tila |
|-------------|------|
| `ci-engine.yml` | Toimii POC-tasolla. Ainoa reusable workflow. |
| `build-feature.yml` | Toimii. 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. |
| `dispatch-workflow.sh` | Toimii. Dispatchee workflown ja pollaa valmistumista. |
| `git-pages/` | Helm-chartti raporttien hostaukseen. Oma kokonaisuus, tarkemmin: `git-pages/docs/`. |
## Ulkoiset palvelut
@@ -43,10 +40,9 @@ Tarkemmin: ADR 0005.
| **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)
- `build-feature.yml` on ainoa consumerin kutsuma rajapinta (ADR 0005)
- Gitea Actionsin natiivi commit-status on ensisijainen (ADR 0004)
- Raportit ovat julkisia URL:lla (osoite tunnettava)
+2 -2
View File
@@ -1,8 +1,8 @@
# Reusable workflowt
> ⚠️ **POC-vaihe.** Tämä dokumentti kuvaa suunniteltuja workflow'ta
> (ci-feature, ci-master, deploy, test). POCissa on toteutettu vain
> `ci-engine.yml`. Uudelleenkirjoitus odottaa.
> (ci-feature, ci-master, deploy, test). POCissa on toteutettu
> `build-feature.yml`. Uudelleenkirjoitus odottaa.
---