27 lines
1.3 KiB
Markdown
27 lines
1.3 KiB
Markdown
# devroadmap-demo — self-hosted CI/CD loop demo
|
|
|
|
Seed for the Forgejo repo `devroadmap-demo`. It demonstrates a **fully
|
|
self-hosted** build→deploy loop with no GitHub in the path:
|
|
|
|
```
|
|
push to Forgejo → Forgejo Actions (act_runner + DinD) build arm64 image
|
|
→ push to Harbor (harbor.devroadmap.ru) → bump deploy/ image tag → push back
|
|
→ ArgoCD (watching this repo) syncs → live in k3s (ns devroadmap-demo, VIP .233)
|
|
```
|
|
|
|
This is a **trimmed** derivative of the `developer-roadmap` project: a static
|
|
landing served by nginx, kept light so the in-cluster arm64 build is fast and
|
|
reliable. The point is the pipeline, not the build weight — swap in the full
|
|
Astro SSR build (Node 22 + pnpm, RU npm mirror) later by replacing the Dockerfile.
|
|
|
|
## Layout
|
|
- `Dockerfile` — nginx:alpine; stamps the commit SHA + build date into the page.
|
|
- `site/` — the static site.
|
|
- `.forgejo/workflows/ci.yml` — the loop (build → Harbor → tag bump → push).
|
|
- `deploy/` — the k8s manifests ArgoCD renders (`kustomization` + `deployment` + `service`).
|
|
|
|
## Bootstrap
|
|
This repo is created and pushed during the Forgejo bring-up — see
|
|
`homelab-gitops/docs/forgejo.md` for the full runbook (repo secrets
|
|
`HARBOR_ROBOT_USER`/`HARBOR_ROBOT_PASSWORD`/`FORGEJO_TOKEN`, the runner, and the
|
|
ArgoCD Application that watches this repo).
|