Problem
The proposal places CI/CD GitHub Actions inside every MLOps template. That conflicts
with CPA/CNA architecture, where repository automation is an extension.
Embedding workflows in every template would duplicate YAML and make future CI policy
changes expensive.
Solution
Create an all-mlops-github-actions extension compatible with MLOps template types.
Scope:
- Compatible types:
mlops-sklearn
mlops-pytorch
mlops-tensorflow
- Add generated workflows under
template/.github/workflows/:
ci.yml: ruff, type checks, pytest, optional Docker build smoke.
train.yml: manual/scheduled Continuous Training entrypoint.
model-gate.yml: compare metrics against configured baseline/registry.
deploy.yml: deploy only after explicit model promotion or manual trigger.
- Add
template/docs/MLOPS_GITHUB_ACTIONS_GUIDE.md.
- Add
template/docs/README.md.append.
- Add placeholder secrets documentation; never include real credentials.
Constraints:
- Use safe default permissions.
- Training/deploy jobs should be
workflow_dispatch first; scheduled behavior must be
explicit and documented.
- Do not assume GPU runners by default.
- Do not make CI fail because no remote MLflow server exists.
Acceptance criteria:
- The extension can be applied to the sklearn MLOps starter once it exists.
- Generated workflows are documented and can run in a minimal local/CI-compatible mode.
Problem
The proposal places CI/CD GitHub Actions inside every MLOps template. That conflicts
with CPA/CNA architecture, where repository automation is an extension.
Embedding workflows in every template would duplicate YAML and make future CI policy
changes expensive.
Solution
Create an
all-mlops-github-actionsextension compatible with MLOps template types.Scope:
mlops-sklearnmlops-pytorchmlops-tensorflowtemplate/.github/workflows/:ci.yml: ruff, type checks, pytest, optional Docker build smoke.train.yml: manual/scheduled Continuous Training entrypoint.model-gate.yml: compare metrics against configured baseline/registry.deploy.yml: deploy only after explicit model promotion or manual trigger.template/docs/MLOPS_GITHUB_ACTIONS_GUIDE.md.template/docs/README.md.append.Constraints:
workflow_dispatchfirst; scheduled behavior must beexplicit and documented.
Acceptance criteria: