diff options
author | mrichomme <morgan.richomme@orange.com> | 2020-11-14 22:36:57 +0100 |
---|---|---|
committer | mrichomme <morgan.richomme@orange.com> | 2020-11-16 16:31:18 +0100 |
commit | 9643b0c11bdafd26ea0ac5127325aa8cb09f0c03 (patch) | |
tree | faf59c0307daa092c754508de93ad2d325826003 /docs/integration-CICD.rst | |
parent | 6db5edce534c882fa0b2a28778fa4bc4be31b8f6 (diff) |
Refactor Integration official documentation
Issue-ID: INT-1736
Signed-off-by: mrichomme <morgan.richomme@orange.com>
Change-Id: Ia7b6425358eb9b07e293881dabd5345697af1c39
Diffstat (limited to 'docs/integration-CICD.rst')
-rw-r--r-- | docs/integration-CICD.rst | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/docs/integration-CICD.rst b/docs/integration-CICD.rst new file mode 100644 index 000000000..298b292f4 --- /dev/null +++ b/docs/integration-CICD.rst @@ -0,0 +1,81 @@ +.. 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 and OOM team + +Continuous Integration +---------------------- + +The CI part provides the following features: + +- Repository Verification (format of the INFO.yaml) +- Patchset verification thank 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 +--------------------- + +There are 2 Continuous Deployment architectures. + +Jenkins CD on Windriver/Intel lab +.................................. + +The CD part on windriver/Intel is based on jenkins. + +It is based on a standalone VM hosting a jenkins server. +The credentials of this VM as well as the jenkins server have been provided to +integration committers. + +Several jobs can be triggered from this jenkins interface. +Historically several chains were run daily (staging/release) but due to +performance issues, they have all been stopped. +Only SB-00 has been kept for use case support. +The jenkins interface was however used to launch the installation of SB-00. + +This jenkins script is leveraging resources available in OOM and integration +repositories. + +It was planned to replaced this CD by a gitlab runner based CD to unify the CD +management. But due to performance issue in the DC it was not possible to +finalize the operation in Guilin. + +Gitlab CD +......... + +This CD is leveraging public gitlab-ci mechanism and used to deploy several ONAP +labs: + +- Daily Master: daily run using OOM Master +- Daily Frankfurt: daily run using the last stable version during Guilin Release + processing +- Daily Guilin: daily run setup at RC0 (candidate dockers available for integration) +- 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. |