Integrate CI pipeline with the DPPS AIV toolkit
Description
Trying to implement the minimal changes to the CalibPipe CI pipeline to incorporate the AIV toolkit and test report generation. Most of the issues are coming from the lack of AIV CI features and requirements documentation.
Notes
These are findings, that were not documented in the AIV supporting docs (or at least not easy to find)
Build
-
Must have DOCKER_IMAGE_CONTEXT
pointing to the directory with the Dockerfile Why no default to project's root? -
Must have Harbor robot account credentials in secrets
Test Report
-
Must have pylint.json
exposed to the job -
Must have coverage report.xml
exposed to the job -
aiv-config.yml
. Description is missing!, Not clear what are the mandatory fields and what values they can take! -
Must have /report/{inspection,performance_verification,preamble}.tex
files. Need to document what should enter there!
Commits
-
Changing the UC group to "CalibPipe".
-
Add AIV configuration
-
Update linting step and add its artifacts to build-test-report
-
Store report.xml
-
Fixes from pre-commit hooks
-
Update pre-commit
-
Adding stage publish
-
Adding build stage
-
Replace "only" with "rules"
-
use template for publishing too
-
Add test report generation, update stages names, use sonar from the upstream
-
Add the test markers for UC and Req. verification
- Add pytest-requirements to the optional dependencies
- Add the UC test markers for the atmospheric tests
- Add AIV toolkit
Related Issue
Part of #180 (closed), closes #182 (closed)
How Has This Been Tested?
Types of changes
-
Bug fix (non-breaking change which fixes an issue) -
New feature (non-breaking change which adds functionality) -
Breaking change (fix or feature that would cause existing functionality to change)
Checklist:
-
My code follows the code style of this project. -
My change requires a change to the documentation. -
I have updated the documentation accordingly. -
I have read the CONTRIBUTING document. -
I have added tests to cover my changes. -
All new and existing tests passed.