Skip to end of banner
Go to start of banner

Modernize OpenDaylight's CI pipelines and containers

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Internship Projects/Mentors


Title

Modernize OpenDaylight's CI pipelines and containers

Status

PENDING TSC REVIEW

Difficulty

MEDIUM 


Description 

OpenDaylight's CI [6.] jobs are presently using Jenkins-job-builder (JJB) [5.] with the entire job configuration maintained as code in the releng/builder [1.], releng/global-jjb [3.] and common-packer [4.] 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://github.com/opendaylight/releng-builder/

[2.] https://github.com/lfit/releng-pipelines

[3.] https://github.com/lfit/releng-global-jjb

[4.] https://github.com/lfit/releng-common-packer

[5.] https://jenkins-job-builder.readthedocs.io/en/latest/

[6.] https://jenkins.opendaylight.org/releng/view/builder/

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

Buildable container images using the packer files used for Opendaylight and migrating existing jobs to Jenkins pipeline jobs. 

Relation to LF Networking 

ODL

Education Level

Undergraduate

Skills

  • Bash
  • Python programing
  • JJB (bonus)
  • Jenkins CI / Pipelines (bonus)
  • packer (bonus points) 

Future plans

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

Preferred Hours and Length of Internship

20 hours a week for 24 weeks

Mentor(s) Names and Contact Info

Anil Belur abelur@linux.com


  • No labels