Skip to end of metadata
Go to start of metadata

Objective

Collect documents, questions, and comments related to migrating OPNFV from Gerrit and Jenkins to GitLab & GitLab-CI.

Resources

Discussion

Weekly Technical Discuss - Aug. 10th, 2020

  • There is an overall objective within LFN to consolidate resources (processes / costs / support) and improve developer resources. New LFN projects are encouraged to move to GitLab-CI.
  • Gerrit is used in our upstream community (OpenStack) and along with Jenkins adds a lot of features/functionality for developers - more flexibility but requires additional maintenance.
  • The integration team in ONAP is currently using GitLab-CI to gate releases: This required use of so-cat to watch changes in Gerrit and communicate back results. ONAP is possibly looking into GitLab-CI in the longer term
  • Jenkins JJB are very powerful and Jenkins fits the test daily jobs (not linked to any code repo)
  • OPNFV could have rather implement the JJB middleware (JJB per branch) in Releng.
  • Gerrit is felt to be more flexible than GitLab for patch review management (see opendev.org)
  • Functest job scheduling requires more work with GitLab-CI (Lots of rework to migrate JJB for Functest)


Weekly Technical Discuss - Aug. 17th, 2020

  • Question regarding limiting concurrency of job (ex: 4 out of 10). GitLab responded there are multiple ways this could be solved. Some suggestions were:
    • Using labels and runners
    • Environment tags
    • Limiting resources
  • Concern expressed around GitLab jobs having to clone code - Suggestion from GitLab team was to use `GIT_STRATEGY: none`
  • There was some concern around the timing of the transition - Lots of changes going on in OPNFV as a project (CNTT & FMO)
  • Airship, Kuberef interested in doing some proof-of-concept work in GitLab-CI
  • Functest prefers Gerrit due to the patchset dependency workflow
  • Because jobs are linked to the repository, branch specific CI would need to be backported to support previous releases.
  • No labels