Skip to content

Latest commit

 

History

History
47 lines (36 loc) · 2.05 KB

File metadata and controls

47 lines (36 loc) · 2.05 KB

PROJECT STATE - KubeCon Europe 2026 MLOps Tutorial Remediation

Last Updated: 2026-04-06 Branch: staging (all phases complete, ready for merge to main) GitHub: peopleforrester/2026_Kubecon_Europe_CNCF_MLOps_Pipeline_Tutorial

Completed Remediation

All 7 phases from the senior review have been completed on the staging branch.

Phase 1: Fix placeholder URLs [DONE]

  • Replaced 9 yourusername/cncf-mlops-pipeline refs with actual GitHub path
  • Replaced placeholder Zoom/Calendar URLs with TBD markers

Phase 2: Security hardening - GitHub Actions [DONE]

  • SHA-pinned all actions across 6 workflow files
  • Replaced compromised aquasecurity/trivy-action@master with safe v0.35.0 SHA
  • Replaced deprecated actions/create-release@v1 with softprops/action-gh-release
  • Added permissions: blocks to all workflows
  • Upgraded codecov v3->v5, codeql v2->v3, setup-kubectl v3->v4, build-push v5->v6

Phase 3: Fix broken internal references [DONE]

  • Created 4 missing scripts (validate-setup, quick-start, push-model-to-harbor, remove-all)
  • Fixed cost-analysis path, component directory references, tutorial listings
  • Fixed QUICKSTART.md and getting-started/quickstart.md broken paths

Phase 4: Volcano version alignment [DONE]

  • Updated all Volcano images from v1.9.0 to v1.11.0
  • Added security contexts (runAsNonRoot, drop ALL, readOnlyRootFilesystem)

Phase 5: Shell script hardening + CI cleanup [DONE]

  • Updated 5 scripts from set -e to set -euo pipefail
  • Added HAMi privileged mode documentation
  • Removed duplicate push triggers from individual CI workflows

Phase 6: Python dependency management + tests [DONE]

  • Created pyproject.toml with numpy, pandas, pyarrow, pytest
  • Renamed Python files from hyphens to underscores for importability
  • Fixed numpy 2.x, pandas 3.x, and datetime deprecation issues
  • Added 32 unit tests (all passing)

Phase 7: Kustomization files [DONE]

  • Created 6 kustomization.yaml files for all kubectl apply -k references
  • Fixed misreferenced observability/opencost path

Test Status

32/32 Python tests passing