blob: e85e35eed2a8a4f1549fa4a98fb4fc7e53b96e2a [file] [log] [blame]
.. This work is licensed under a
Creative Commons Attribution 4.0 International License.
.. integration-CICD:
.. integration_main-doc:
CI/CD
=====
.. important::
Integration team deals with 2 different CI/CD systems.
- Jenkins CI/CD, CI managed by LF IT and CD by Integration team
- GitLab-CI managed by Integration team
Continuous Integration
----------------------
The CI part provides the following features:
- Repository verification (format of the INFO.yaml)
- Patchset verification thanks to json/yaml/python/go/rst/md linters. These Jenkins
verification jobs are hosted in the ci-management repository. They can vote
+1/-1 on patchset submission. Integration team systematically enables linters
on any new repository
- Docker build: Integration team builds testsuite dockers and xtesting dockers.
These dockers are built then pushed to Nexus through a jjb also hosted in the
ci-management repository.
The different verification chains are defined in https://jenkins.onap.org/:
- CSIT: https://jenkins.onap.org/view/CSIT/
- testsuite: https://jenkins.onap.org/view/testsuite/
- integration: https://jenkins.onap.org/view/integration/
- integration-terragrunt: https://jenkins.onap.org/view/integration-terragrunt/
- testsuite-robot-utils: https://jenkins.onap.org/view/testsuite-robot-utils/
The Jenkins jobs (jjb) are hosted in https://git.onap.org/ci-management/.
Continuous Deployment
---------------------
GitLab CD
.........
This CD is leveraging public gitlab-ci mechanism and used to deploy several ONAP
labs:
- Daily Master: daily run using OOM Master
- Weekly Master: run once a week with longer tests
- Gating: run on OOM, clamp or SO patchset submission. It means a full ONAP
deployment on demand based on new patchset declared in gerrit.
See :ref:`Integration CI guideline <integration-ci>` for details.