Internship Projects/Mentors
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
Click here to apply
Please read all instructions before applying. Include Resume, proof of school enrollment, and participation permission from school/employer
Anil Belur abelur@linux.com