Scaffold Cloudron packaging workspace

This commit is contained in:
2025-10-02 13:39:36 -05:00
parent 482d4ff1b8
commit fe0ade1dd9
366 changed files with 4035 additions and 2493 deletions

View File

@@ -14,22 +14,26 @@ This project uses the Gitea Actions runner and the built-in container registry h
## Workflow overview
The manual `workflow_dispatch` job builds the `docker/ci-runner` image, then executes `scripts/ci_local.sh` with the requested task list (default `all`). This mirrors the local harness, so whatever succeeds locally will succeed in CI.
The manual `workflow_dispatch` job builds the CI image and then executes the same commands you run locally via:
> Re-enable push/PR triggers once a runner is available and `make ci-local` is consistently green.
```bash
./run/dev.sh python scripts/lint_repo.py --slug apache-apisix --strict
./run/dev.sh python scripts/generate_status.py --preserve-timestamp
```
> Re-enable push/PR triggers once a runner is available and the commands above consistently succeed.
## Container registry usage
- Tag Cloudron packages against the registry namespace, e.g. `git.knownelement.com/knel/cloudron/apache-apisix:<version>`.
- The packager helper script reads `IMAGE_NAME`; override it when pushing to the registry:
- Build and push images directly via Docker:
```bash
IMAGE_NAME=git.knownelement.com/knel/cloudron-packager BUILD=1 scripts/run_packager.sh
docker build -t git.knownelement.com/knel/cloudron-packager docker/packager
docker push git.knownelement.com/knel/cloudron-packager
```
- Cloudrons CLI can push directly to the registry once you log in within the packager container.
- Cloudrons CLI can push directly to the registry once you log in within the packager shell (`./run/packager.sh`).
## Future enhancements
- Add `make lint` and `make status` as required checks in Gitea branch protection.
- Add lint/status checks as required gates in Gitea branch protection.
- Extend the workflow with matrix builds for priority apps (e.g. run smoke scripts once implemented).