Better support for overriding docker reg + tag (for local testing); init container for ensure-system-disk

This commit is contained in:
Garrett Mills 2025-04-22 09:21:17 -04:00
parent 8a526de004
commit 1fa2fd3d95
4 changed files with 19 additions and 2 deletions

View File

@ -23,6 +23,20 @@ spec:
- name: p5x-system-data
persistentVolumeClaim:
claimName: system-data
initContainers:
- name: ensure-system-disk
image: docker.io/glmdev/p5x-api:latest
envFrom:
- secretRef:
name: api-env
env:
- name: P5X_NODE_HOSTNAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
- name: RUST_LOG
value: 'p5x=debug,sqlx=warn,info'
command: ['/p5x/p5x', 'ensure-system-disk']
containers:
- name: api-server
image: docker.io/glmdev/p5x-api:latest
@ -43,6 +57,8 @@ spec:
valueFrom:
fieldRef:
fieldPath: spec.nodeName
- name: RUST_LOG
value: 'p5x=debug,sqlx=warn,info'
ports:
- containerPort: 3450
name: p5x

View File

@ -6,4 +6,4 @@ if ! [ -f Cargo.toml ]; then
fi
cargo build --release --target x86_64-unknown-linux-gnu
docker build -t "${DOCKER_REGISTRY:-docker.io}/glmdev/p5x-api:latest" .
docker build -t "${DOCKER_REGISTRY:-docker.io}/glmdev/p5x-api:${DOCKER_TAG:-latest}" .

View File

@ -1,3 +1,3 @@
#!/bin/sh -e
docker push "${DOCKER_REGISTRY:-docker.io}/glmdev/p5x-api:latest"
docker push "${DOCKER_REGISTRY:-docker.io}/glmdev/p5x-api:${DOCKER_TAG:-latest}"

View File

@ -27,6 +27,7 @@ pub async fn ensure_system_disk(svc: &Services<'_>) -> Result<(), P5xError> {
// Load the dynamic-kv
let client = Client::try_default().await.map_err(P5xError::KubeError)?;
let namespace = fs::read_to_string("/var/run/secrets/kubernetes.io/serviceaccount/namespace")
.or_else(|_| env::var("P5X_OVERRIDE_NS"))
.unwrap_or_else(|_| "p5x-system".to_string());
let maps: Api<ConfigMap> = Api::namespaced(client.clone(), &namespace);