Appearance
GitHub Actions + GHCR
Goal
GitHub Actions and GHCR can provide source/build/release automation for tenant applications.
A workflow can:
- check out source;
- run tests;
- build the container image;
- push an immutable image to GHCR;
- resolve the immutable SHA256 digest;
- record the source/release identity;
- invoke an authorized GWEB deployment or artifact-ingestion path appropriate to the tenant;
- wait for and inspect the verified deployment result.
GHCR is not the same as GWEB runtime pull access
An immutable GHCR reference identifies a release artifact:
text
ghcr.io/<owner>/<repository>@sha256:<digest>That does not automatically mean the GWEB K3s runtime can pull an arbitrary private GHCR image directly.
For the standard interactive local developer workflow, build locally and use:
bash
gwebc --profile <profile> \
deploy push <application> \
--environment dev \
--local-image <application>:dev \
--replicas <replicas> \
--port <container-port>GWEB then imports the image into its managed internal registry and deploys the resulting immutable internal reference.
For automated CI/CD, use only the GWEB-approved integration for that repository/tenant. Do not assume that deploy apply --image ghcr.io/... is valid unless the GWEB runtime has explicitly been configured to pull that registry reference.
CI authorization
Repository, branch/ref, application, environment, image prefix, OIDC audience, immutable-digest requirements, and artifact-ingestion policy may be enforced by GWEB.
The tenant workflow should not require possession of a GWEB privileged control token, Kubernetes credentials, or cluster-node SSH access.