docs(examples): add ML training and CI pull-request examples#45
Draft
JPZ13 wants to merge 1 commit into
Draft
Conversation
Signed-off-by: J.P. Zivalich <j.p.zivalich@gmail.com>
Collaborator
✅
|
| Descriptor | Linter | Files | Fixed | Errors | Warnings | Elapsed time |
|---|---|---|---|---|---|---|
| ✅ JSON | jsonlint | 3 | 0 | 0 | 0.21s | |
| ✅ JSON | prettier | 1 | 0 | 0 | 0.42s | |
| ✅ MARKDOWN | markdownlint | 11 | 0 | 0 | 0.82s | |
| markdown-table-formatter | 11 | 1 | 0 | 0.32s | ||
| isort | 10 | 2 | 0 | 0.48s | ||
| ✅ PYTHON | ruff | 12 | 0 | 0 | 0.01s | |
| ✅ REPOSITORY | git_diff | yes | no | no | 0.21s | |
| ✅ REPOSITORY | grype | yes | no | no | 82.33s | |
| ✅ REPOSITORY | secretlint | yes | no | no | 1.22s | |
| ✅ REPOSITORY | syft | yes | no | no | 2.21s | |
| ✅ REPOSITORY | trivy-sbom | yes | no | no | 0.59s | |
| ✅ REPOSITORY | trufflehog | yes | no | no | 4.94s | |
| ✅ SPELL | cspell | 39 | 0 | 0 | 5.08s | |
| ✅ YAML | prettier | 9 | 0 | 0 | 0.76s |
Detailed Issues
⚠️ PYTHON / isort - 2 errors
Linter output file not found
⚠️ MARKDOWN / markdown-table-formatter - 1 error
Linter output file not found
See detailed reports in MegaLinter artifacts
Your project could benefit from a custom flavor, which would allow you to run only the linters you need, and thus improve runtime performances. (Skip this info by defining FLAVOR_SUGGESTIONS: false)
- Documentation: Custom Flavors
- Command:
npx mega-linter-runner@9.0.1 --custom-flavor-setup --custom-flavor-linters PYTHON_ISORT,PYTHON_RUFF,JSON_JSONLINT,JSON_PRETTIER,MARKDOWN_MARKDOWNLINT,MARKDOWN_MARKDOWN_TABLE_FORMATTER,REPOSITORY_GIT_DIFF,REPOSITORY_GRYPE,REPOSITORY_SECRETLINT,REPOSITORY_SYFT,REPOSITORY_TRIVY_SBOM,REPOSITORY_TRUFFLEHOG,SPELL_CSPELL,YAML_PRETTIER
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

What
Add two runnable examples to the repository:
pytorch-fashion-mnist: a four-stage ML training pipeline (prep, parallel train, register) authored with the Argo Workflows Python SDK and as a native Workflow.ci-pr-check: a pull-request check pipeline (checkout, parallel lint and tests, and a combined status on exit).Both run in the free trial cluster.
Why
The docs IA refactor (pipekit/pipeline-mono#12347) adds ML Pipelines and CI/CD use-case pages. Those pages need runnable examples to point readers at.
Testing
Both workflows were submitted to the free trial cluster and completed:
pytorch-fashion-mnist: trains three hyperparameter configs in parallel and registers the most accurate (test accuracy about 0.72). The winning config is exposed as an output parameter, so it stays visible after the pods are cleaned up.ci-pr-check: checkout,rufflint, and the forecast unit test pass; the exit handler reports the combined status.ruff,cspell, andmarkdownlintpass. The ML example includes a local test (test_model.py).Notes
download.pytorch.org(the CPU wheel), so the only Docker Hub image ispython:3.11-slim. This avoids the anonymous rate limit on the trial cluster's shared egress IP.