Deploy applications to Kubernetes using Helm charts, manage PVCs, and work with K8s jobs. Use this skill when deploying caelundas or managing Kubernetes resources.
This skill covers deploying applications to Kubernetes clusters, managing Persistent Volume Claims (PVCs), and working with Kubernetes jobs in this monorepo.
The monorepo uses Kubernetes for deploying the caelundas ephemeris calendar generator as a scheduled job. The deployment workflow involves:
For comprehensive deployment patterns and infrastructure details, see infrastructure/AGENTS.md.
See Deployment Models for Job vs. Deployment decisions and PVC lifecycle guidance.
The monorepo includes a reusable Helm chart at infrastructure/helm/kubernetes-job for deploying batch jobs. Key features:
Jobs are preferred for batch workloads like caelundas. Deployments are for long-running services.
# Build Docker image for K8s platform
nx run caelundas:docker-build
# Deploy to K8s cluster (generates unique job name)
nx run caelundas:helm-upgrade
# Retrieve output files after job completion
nx run caelundas:kubernetes-copy-files
# Clean up completed jobs
nx run caelundas:helm-uninstall
Applications use two PVCs:
The kubernetes-copy-files target synchronizes output files back to local filesystem after job completion.
See applications/caelundas/AGENTS.md for detailed caelundas deployment workflows, including:
Key targets:
nx run caelundas:docker-build - Builds for linux/amd64nx run caelundas:helm-upgrade - Deploys with auto-generated namenx run caelundas:kubernetes-copy-files - Retrieves output from PVCnx run caelundas:helm-uninstall - Removes completed jobsConfigure deployments via values.yaml: