ci: add Woodpecker CI pipeline
This commit is contained in:
parent
acbc22e6f9
commit
212b72c161
1 changed files with 62 additions and 0 deletions
62
.woodpecker.yml
Normal file
62
.woodpecker.yml
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
# Woodpecker CI — CityGame monorepo
|
||||
# https://woodpecker-ci.org/docs
|
||||
#
|
||||
# Image CI : ci/Dockerfile (Java 21 Maven + Node 20 + pnpm 10)
|
||||
# Rebuild & push when ci/Dockerfile changes:
|
||||
# docker build -f ci/Dockerfile -t git.forge.pele.cam/forgeadmin/citygame-ci:latest .
|
||||
# docker push git.forge.pele.cam/forgeadmin/citygame-ci:latest
|
||||
|
||||
variables:
|
||||
- &ci_image "git.forge.pele.cam/forgeadmin/citygame-ci:latest"
|
||||
|
||||
when:
|
||||
- event: [push, pull_request]
|
||||
branch: [main, develop]
|
||||
- event: pull_request
|
||||
|
||||
steps:
|
||||
# ── Build & Test ──────────────────────────────────────────────
|
||||
- name: build-and-test
|
||||
image: *ci_image
|
||||
pull: true
|
||||
environment:
|
||||
CI: "true"
|
||||
HOME: /woodpecker/src
|
||||
commands:
|
||||
- export HOME=/woodpecker/src
|
||||
- mkdir -p .m2 reports/apps/frontend
|
||||
- pnpm install --frozen-lockfile
|
||||
- pnpm exec nx run-many -t build --parallel=2
|
||||
- pnpm exec nx run-many -t test --parallel=2
|
||||
when:
|
||||
- event: [push, pull_request]
|
||||
|
||||
# ── Notify Coolify (deploy webhook) — main only ───────────────
|
||||
- name: deploy-main
|
||||
image: curlimages/curl:latest
|
||||
environment:
|
||||
COOLIFY_WEBHOOK:
|
||||
from_secret: COOLIFY_WEBHOOK_MAIN
|
||||
commands:
|
||||
- >
|
||||
curl -fsSX GET "$COOLIFY_WEBHOOK"
|
||||
&& echo "Coolify deploy triggered (main)"
|
||||
|| echo "WARNING: Coolify webhook failed"
|
||||
when:
|
||||
- event: push
|
||||
branch: main
|
||||
|
||||
# ── Notify Coolify (deploy webhook) — develop only ────────────
|
||||
- name: deploy-develop
|
||||
image: curlimages/curl:latest
|
||||
environment:
|
||||
COOLIFY_WEBHOOK:
|
||||
from_secret: COOLIFY_WEBHOOK_DEVELOP
|
||||
commands:
|
||||
- >
|
||||
curl -fsSX GET "$COOLIFY_WEBHOOK"
|
||||
&& echo "Coolify deploy triggered (develop)"
|
||||
|| echo "WARNING: Coolify webhook failed"
|
||||
when:
|
||||
- event: push
|
||||
branch: develop
|
||||
Loading…
Reference in a new issue