This guide documents the automated workflow for deploying Pollen Viability detection and training jobs to the CERIT-SC Kubernetes cluster.
The system runs as ephemeral Kubernetes Jobs. It follows this data flow:
kubeconfig.yaml in the project root.
How to obtain:
- Log in to Rancher Dashboard.
- Open your assigned cluster.
- Click “Download Kubeconfig” (Top Right) or “Kubeconfig File” icon.
- Save as
kubeconfig.yamlin this project folder.- Security: Run
chmod 600 kubeconfig.yamlto secure the file.
To detect viable pollen in new images:
Ostatni/Pollen_viability/detect_images../deploy_pollen.sh
ttl.sh (ephemeral registry).pollen-detector-job) in namespace stenc-ns.Ostatni/Pollen_viability/detected_images.To retrain the YOLOv8 model:
datasets/pollen_v1)../deploy_training.sh
best.pt) and charts to S3.| File | Purpose |
|---|---|
deploy_pollen.sh |
Orchestrates the detection workflow. Builds Docker -> Deploys Job. |
deploy_training.sh |
Orchestrates the training workflow. |
pollen-job.yaml |
Kubernetes Manifest for detection. Defines resources (GPU/RAM) and env vars. |
pollen-train-job.yaml |
Kubernetes Manifest for training. |
Dockerfile |
Defines the environment (Python, YOLOv8, non-root user). |
run_detection.py |
Core script for detection logic + S3 sync. |
train_model.py |
Core script for training logic + S3 sync. |
stenc-ns (Your isolated environment).appuser (UID 1000) for security compliance.kubeconfig.yaml is correct and you are deploying to stenc-ns.ttl.sh image might have expired (they last 24h). Re-run the deploy script to rebuild and push.run_detection.py. Verify source images exist.