1.3 KiB
1.3 KiB
Local Test Harness
All verification runs locally inside Docker containers so your workstation matches the eventual Gitea Actions runner exactly.
CI-equivalent container
docker/ci-runner/Dockerfile
builds the imageknel/cloudron-ci
, derived from the same base the Gitea runner will use.scripts/ci_local.sh
orchestrates tasks inside that container. RunBUILD=1 ./scripts/ci_local.sh lint
the first time to build the image.- Tasks:
lint
→make lint
+make status
+git diff docs/APP_STATUS.md
packager-smoke
→ buildsdocker/packager
and runscloudron --help
all
(default) → runs both.
The script mounts /var/run/docker.sock
so Docker CLI calls inside the container reuse the host daemon.
Git hooks
Use scripts/hooks/install_hooks.sh
to install local hooks:
./scripts/hooks/install_hooks.sh
pre-commit
runs./scripts/ci_local.sh lint
.post-commit
refreshesdocs/APP_STATUS.md
(non-fatal).pre-push
runs the packager smoke test.
Set SKIP_CI_HOOKS=1
when you need to bypass the hooks temporarily.
Alignment with Gitea Actions
The .gitea/workflows/ci.yml
workflow wraps the same scripts/ci_local.sh
entrypoint and is currently manual-only (workflow_dispatch
). Enable push/PR triggers once a runner is provisioned.