Migrate deploy image refs to Forgejo (RAIL-HO-WP-0006)
All checks were successful
CI Smoke / host-smoke (push) Successful in 2s
CI Smoke / container-smoke (push) Successful in 22s

This commit is contained in:
tegwick 2026-07-09 11:59:08 +02:00
parent 8c1f71e66c
commit ad49d9f9e9
5 changed files with 15 additions and 15 deletions

View file

@ -57,7 +57,7 @@ Cluster migration path:
kubectl -n core-hub-staging delete job core-hub-staging-migrate --ignore-not-found kubectl -n core-hub-staging delete job core-hub-staging-migrate --ignore-not-found
kubectl apply -f k8s/railiance-staging/20-runtime.yaml kubectl apply -f k8s/railiance-staging/20-runtime.yaml
kubectl -n core-hub-staging set image job/core-hub-staging-migrate \ kubectl -n core-hub-staging set image job/core-hub-staging-migrate \
migrate=gitea.coulomb.social/coulomb/core-hub:<tag> migrate=forgejo.coulomb.social/coulomb/core-hub:<tag>
kubectl -n core-hub-staging wait --for=condition=complete \ kubectl -n core-hub-staging wait --for=condition=complete \
job/core-hub-staging-migrate --timeout=180s job/core-hub-staging-migrate --timeout=180s
``` ```
@ -70,11 +70,11 @@ smoke/test bootstraps only.
Near-term service-repo image build: Near-term service-repo image build:
```bash ```bash
IMAGE_REPOSITORY=gitea.coulomb.social/coulomb/core-hub \ IMAGE_REPOSITORY=forgejo.coulomb.social/coulomb/core-hub \
IMAGE_TAG=$(git rev-parse --short HEAD) \ IMAGE_TAG=$(git rev-parse --short HEAD) \
make container-build make container-build
docker push gitea.coulomb.social/coulomb/core-hub:$(git rev-parse --short HEAD) docker push forgejo.coulomb.social/coulomb/core-hub:$(git rev-parse --short HEAD)
``` ```
Railiance-style deploy skeleton: Railiance-style deploy skeleton:
@ -84,7 +84,7 @@ kubectl apply -f k8s/railiance-staging/00-namespace.yaml
kubectl -n core-hub-staging get secret core-hub-staging-env kubectl -n core-hub-staging get secret core-hub-staging-env
kubectl apply -f k8s/railiance-staging/20-runtime.yaml kubectl apply -f k8s/railiance-staging/20-runtime.yaml
kubectl -n core-hub-staging set image deploy/core-hub-api \ kubectl -n core-hub-staging set image deploy/core-hub-api \
api=gitea.coulomb.social/coulomb/core-hub:<tag> api=forgejo.coulomb.social/coulomb/core-hub:<tag>
kubectl -n core-hub-staging rollout status deploy/core-hub-api --timeout=180s kubectl -n core-hub-staging rollout status deploy/core-hub-api --timeout=180s
``` ```

View file

@ -34,7 +34,7 @@ spec:
restartPolicy: Never restartPolicy: Never
containers: containers:
- name: migrate - name: migrate
image: gitea.coulomb.social/coulomb/core-hub:production-placeholder image: forgejo.coulomb.social/coulomb/core-hub:production-placeholder
imagePullPolicy: IfNotPresent imagePullPolicy: IfNotPresent
command: ["alembic", "upgrade", "head"] command: ["alembic", "upgrade", "head"]
envFrom: envFrom:
@ -69,7 +69,7 @@ spec:
spec: spec:
containers: containers:
- name: api - name: api
image: gitea.coulomb.social/coulomb/core-hub:production-placeholder image: forgejo.coulomb.social/coulomb/core-hub:production-placeholder
imagePullPolicy: IfNotPresent imagePullPolicy: IfNotPresent
ports: ports:
- name: http - name: http

View file

@ -7,8 +7,8 @@ ingress still claims `hub.coulomb.social`.
```bash ```bash
# 1. Image (operator: registry push) # 1. Image (operator: registry push)
IMAGE_REPOSITORY=gitea.coulomb.social/coulomb/core-hub IMAGE_TAG=<sha> make container-build IMAGE_REPOSITORY=forgejo.coulomb.social/coulomb/core-hub IMAGE_TAG=<sha> make container-build
docker push gitea.coulomb.social/coulomb/core-hub:<sha> docker push forgejo.coulomb.social/coulomb/core-hub:<sha>
# 2. Prod DB + secret (operator: shared-DB DDL) # 2. Prod DB + secret (operator: shared-DB DDL)
# role core_hub / db core_hub on apps-pg; secret core-hub-prod-env with # role core_hub / db core_hub on apps-pg; secret core-hub-prod-env with
@ -18,8 +18,8 @@ docker push gitea.coulomb.social/coulomb/core-hub:<sha>
# 3. Deploy (no traffic yet) # 3. Deploy (no traffic yet)
kubectl apply -f k8s/railiance-production/00-namespace.yaml kubectl apply -f k8s/railiance-production/00-namespace.yaml
kubectl apply -f k8s/railiance-production/20-runtime.yaml kubectl apply -f k8s/railiance-production/20-runtime.yaml
kubectl -n core-hub set image job/core-hub-prod-migrate migrate=gitea.coulomb.social/coulomb/core-hub:<sha> kubectl -n core-hub set image job/core-hub-prod-migrate migrate=forgejo.coulomb.social/coulomb/core-hub:<sha>
kubectl -n core-hub set image deploy/core-hub-api api=gitea.coulomb.social/coulomb/core-hub:<sha> kubectl -n core-hub set image deploy/core-hub-api api=forgejo.coulomb.social/coulomb/core-hub:<sha>
kubectl -n core-hub wait --for=condition=complete job/core-hub-prod-migrate --timeout=180s kubectl -n core-hub wait --for=condition=complete job/core-hub-prod-migrate --timeout=180s
kubectl -n core-hub rollout status deploy/core-hub-api --timeout=180s kubectl -n core-hub rollout status deploy/core-hub-api --timeout=180s

View file

@ -34,7 +34,7 @@ spec:
restartPolicy: Never restartPolicy: Never
containers: containers:
- name: migrate - name: migrate
image: gitea.coulomb.social/coulomb/core-hub:staging-placeholder image: forgejo.coulomb.social/coulomb/core-hub:staging-placeholder
imagePullPolicy: IfNotPresent imagePullPolicy: IfNotPresent
command: ["alembic", "upgrade", "head"] command: ["alembic", "upgrade", "head"]
envFrom: envFrom:
@ -69,7 +69,7 @@ spec:
spec: spec:
containers: containers:
- name: api - name: api
image: gitea.coulomb.social/coulomb/core-hub:staging-placeholder image: forgejo.coulomb.social/coulomb/core-hub:staging-placeholder
imagePullPolicy: IfNotPresent imagePullPolicy: IfNotPresent
ports: ports:
- name: http - name: http

View file

@ -26,7 +26,7 @@ Do not add plaintext secret values to these manifests.
## Image ## Image
The committed manifest uses `gitea.coulomb.social/coulomb/core-hub:staging-placeholder`. The committed manifest uses `forgejo.coulomb.social/coulomb/core-hub:staging-placeholder`.
Operators should patch or render the immutable image tag for the deployment and Operators should patch or render the immutable image tag for the deployment and
migration job before apply. migration job before apply.
@ -37,11 +37,11 @@ kubectl apply -f k8s/railiance-staging/00-namespace.yaml
kubectl -n core-hub-staging get secret core-hub-staging-env kubectl -n core-hub-staging get secret core-hub-staging-env
kubectl apply -f k8s/railiance-staging/20-runtime.yaml kubectl apply -f k8s/railiance-staging/20-runtime.yaml
kubectl -n core-hub-staging set image job/core-hub-staging-migrate \ kubectl -n core-hub-staging set image job/core-hub-staging-migrate \
migrate=gitea.coulomb.social/coulomb/core-hub:<tag> migrate=forgejo.coulomb.social/coulomb/core-hub:<tag>
kubectl -n core-hub-staging wait --for=condition=complete \ kubectl -n core-hub-staging wait --for=condition=complete \
job/core-hub-staging-migrate --timeout=180s job/core-hub-staging-migrate --timeout=180s
kubectl -n core-hub-staging set image deploy/core-hub-api \ kubectl -n core-hub-staging set image deploy/core-hub-api \
api=gitea.coulomb.social/coulomb/core-hub:<tag> api=forgejo.coulomb.social/coulomb/core-hub:<tag>
kubectl -n core-hub-staging rollout status deploy/core-hub-api --timeout=180s kubectl -n core-hub-staging rollout status deploy/core-hub-api --timeout=180s
``` ```