Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Page properties


Title

Modernize OpenDaylight's CI pipelines and containers

Status

Status
colourGreenYellow
titleTSC ApprovedInterviewing

Difficulty

Status
colourYellow
titleMedium
 



Description 

OpenDaylight's CI [61.] jobs are presently using Jenkins-job-builder (JJB) [52.] with the entire job configuration maintained as code in the releng/builder [13.], releng/global-jjb [34.] and common-packer [45.] repositories. The CI infrastructure has around 2k+ jobs that are written using yaml/shell/python many of which need to migrate to CI pipelines. The pipeline job prototype should be able to do a complete lifecycle (from code changes picked up from merged/staged job to be deployed and tested on containers images (these images are equivalent of VM image instance - mininet, devstack, etc presently built on the infrastructure). The work requires updating the packer files to build containers and converting the JJB/yaml code to CI pipelines.

Additional Information

[1.] https://githubjenkins.com/opendaylight.org/releng-builder/

[2.] https://github.com/lfit/releng-pipelinesjenkins-job-builder.readthedocs.io/en/latest/

[3.] https://github.com/lfitopendaylight/releng-global-jjbbuilder/

[4.] https://github.com/lfit/releng-commonglobal-packerjjb

[5.] https://jenkins-job-builder.readthedocs.io/en/latest/github.com/lfit/releng-common-packer

[6.]   https://jenkins.opendaylight.org/releng/view/builder/github.com/lfit/releng-pipelines 

Learning Objectives

The intern will gain experience contributing to OSS and OpenDaylight CI tools (not limited to Jenkins, pipelines, CI/CD, packer. etc).

Expected Outcome

  • Create Dockerfiles and containers images for all of the ODL projects
  • Create Jobs that manage and maintain snapshots and releases for the containers
  • Buildable container images using the packer files

...

  • Migrate existing jobs to Jenkins pipeline jobs. (bonus) 

Relation to LF Networking 

...

Undergraduate

Skills

  • Bash
  • Python programingProgramming
  • JJB (bonus)
  • Jenkins CI / Pipelines (bonus)
  • packer (bonus points) 
  • Understanding of git/gerrit workflow and fix trivial issues (bonus)

Future plans

These prototypes will be reviewed and releng/builder jobs and packer files would be updated.

...

Mentor(s) Names and Contact Info

Click here to apply

Please read all instructions before applying.  Include Resume, proof of school enrollment, and participation permission from school/employer

  1. Anil Belur abelur@linux.com
  2. Luis Gomez ecelgp@gmail.com