feat(platform): add production CI and containers

This commit is contained in:
sechmachine
2026-08-15 22:45:35 +07:00
parent b13c547068
commit cea4378f56
17 changed files with 567 additions and 14 deletions
+15 -1
View File
@@ -50,7 +50,7 @@ The baseline schema includes later-workflow tables; table presence does not mean
the corresponding feature is complete.
- Iteration 2: Project invitations and approved membership exits, broader Project lifecycle transfers, Task edit/delete/reassignment and work logs, leave, missed-checkout corrections, notifications, schedulers, and complete metrics.
- Iteration 3: HTML/XLSX/PDF report parity, Chart.js trends, production security hardening, application containers, Compose, Gitea CI publication, and deployment scaffolding.
- Iteration 3: HTML/XLSX/PDF report parity, Chart.js trends, remaining production security hardening, and operational backup/restore qualification.
- Mobile layouts are best-effort. Desktop is the supported interface target.
## Architecture and versions
@@ -116,6 +116,20 @@ See [TESTING.md](TESTING.md) for setup, test commands, the required TDD cycle,
evidence records, best practices, and common fixes. Every behavior test has a
companion record under [`docs/tests`](docs/tests/README.md).
## Continuous integration and production containers
Gitea Actions now verifies every pull request and push. A separate container
workflow builds Linux AMD64 and publishes only from `main`; native Linux ARM64
is added only when the repository explicitly declares that its ARM runner is
online. Every published revision has an immutable `sha-<full-commit>` tag, with
`main` as a convenience alias.
The production image is a non-root Java 25 image. The root [compose.yaml](compose.yaml)
supports either a persistent PostgreSQL 18.4 sidecar or an external PostgreSQL
database. It is not used for development. Follow [DEPLOYMENT.md](DEPLOYMENT.md)
and start from [`.env.compose.example`](.env.compose.example); keep the real
production environment file outside the repository.
## Branch ownership
| Branch | Primary area |