2 Commits

Author SHA1 Message Date
rlabadmin 788eaa390f CI owns the whole stack — deploy via docker stack deploy
Build & Deploy / build (push) Successful in 5s
Build & Deploy / deploy (push) Successful in 5s
- stack.yml: parameterize image tag with ${IMAGE_TAG:-latest} so callers
  can pin the SHA; falls back to :latest for manual invocations
- flow.yml: replace service update with `docker stack deploy -c -`
  piped over SSH. Handles both first-time deploy and rolling updates.
  No more manual `docker stack deploy` on the manager before CI works.

Portainer can still view the stack but should not auto-update the same
one from git — two writers will conflict.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 15:31:14 +02:00
rlabadmin 48a3d3f3f5 Initial scaffold: static site served by nginx on :8080
Build & Deploy / build (push) Failing after 3s
Build & Deploy / deploy (push) Has been skipped
- public/index.html served via nginx.conf (port 8080)
- Dockerfile: nginx:1.27-alpine + HEALTHCHECK
- .gitea/workflows/flow.yml: build + push to Gitea registry, rolling deploy
- stack.yml: Swarm service wired to Traefik (host testwebsite.dev.serso.org)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 14:21:51 +02:00