Slide 1

Slide 1 text

Contributing to Jenkins 1

Slide 2

Slide 2 text

Presenters 2 @oleg_nenashev oleg-nenashev @MarkEWaite MarkEWaite Oleg Nenashev - Jenkins Governance Board member, GSoC org admin, a long-time Jenkins user and advocate Mark Waite - Jenkins documentation officer, helps with project infrastructure and maintains the Git plugin Shivay Lamba - Tensorflow contributor, Jenkins mentor in GSoC 2020 /// Other contributors @HowDevelop ShivayLamba

Slide 3

Slide 3 text

Today’s agenda ● Introduction to Jenkins ● Tech stack used ● Contributing to the community ● Jenkins in Google Summer of Code ● Q&A 3

Slide 4

Slide 4 text

Jenkins Online Meetup Anything about Jenkins ○ https://www.meetup.com/Jenkins-online-meetup ○ https://jenkins.io/events/online-meetup/ “By contributors for users” ○ Show and tell ○ Live demos! ○ Everyone can participate Sponsors:

Slide 5

Slide 5 text

Questions and Answers During the meetup ● Zoom Q&A ● Open discussion after the meetup After the meetup ● https://gitter.im/jenkinsci/newcomer-contributors Sponsors:

Slide 6

Slide 6 text

Introduction 6

Slide 7

Slide 7 text

Who is Mr. Jenkins? • Automation server/framework • Popular CI/CD tool • Open-source • Big community • More than 1700 plugins

Slide 8

Slide 8 text

Jenkins Is An Automation Tool Over 1700 Jenkins Plugins Integration with hundreds of tools Orchestration of the Tool-chains End-to-End CI/CD Pipelines Deploy Release Scan & Test Code & Commit Build & Config

Slide 9

Slide 9 text

Typical Jenkins Pipeline Manual Timers SCM events Notify stakeholders 9 Get sources SCMs Binary repositories Build artifacts Prepare the environment “Build” “Test” “Analyze” Publish reports Deploy artifacts Tool-chains SW Dev. Tools EDA tools ...

Slide 10

Slide 10 text

10

Slide 11

Slide 11 text

Jenkins helps you! Demonstration 11

Slide 12

Slide 12 text

Jenkins under the hood 12

Slide 13

Slide 13 text

Repositories 13 ● Main organizations: ○ https://github.com/jenkinsci ○ https://github.com/jenkins-infra/ ● Key repos: ○ https://github.com/jenkinsci/jenkins ○ https://github.com/jenkinsci/docker ○ https://github.com/jenkins-infra/jenkins.io

Slide 14

Slide 14 text

Tech Stack 14 ● 2300+ repositories, many Technology stacks… ● Top languages: Java, JavaScript, Groovy, Golang, Ruby, scripting languages ● Platforms: Docker, Kubernetes, Linux, Windows, macOS ● Documentation: Markdown, Asciidoc ● Many test tools and frameworks

Slide 15

Slide 15 text

More info Contributing to Jenkins It is all about you! 15

Slide 16

Slide 16 text

Contributing to Jenkins 16

Slide 17

Slide 17 text

17 Jenkins needs you! https://www.jenkins.io/participate

Slide 18

Slide 18 text

Any pull request counts! 18 ● Code ● Documentation ● Blogposts ● Design and Artwork Jenkins needs you!

Slide 19

Slide 19 text

Getting started: Issue queries 1. Go to https://www.jenkins.io/participate 2. Select type of contribution, read the guide 3. Find an issue to work on a. Newbie-friendly issues in Jenkins JIRA b. Good first issues on GitHub 4. Contact us if any assistance is needed a. https://gitter.im/jenkinsci/newcomer-contributors 19 https://jenkins.io/events/hacktoberfest/#issue-queries

Slide 20

Slide 20 text

More info Contributing to Jenkins It is all about you! 20

Slide 21

Slide 21 text

Jenkins - 2021 Outreach Programs • Google Summer of Code • Google Season of Docs • Likely: LFX Mentorship (fka CommunityBridge) • Online Hackathons • Hacktoberfest 2021 21 https://www.jenkins.io/sigs/advocacy-and-outreach/outreach-programs/

Slide 22

Slide 22 text

Jenkins in Google Summer of Code 22

Slide 23

Slide 23 text

Jenkins in GSoC 2020 ● 2021 - 5th year in GSoC ● 10 project ideas ● Main page: https://jenkins.io/projects/gsoc/ ● This year - under the umbrella of the Continuous Delivery Foundation 23

Slide 24

Slide 24 text

Our goals ● Best possible GSoC experience for students and mentors ● Quality, not Quantity ● Project types: ○ Key Jenkins initiatives with high community value ○ Domain-specific ideas: Cloud Native technologies ○ Cross-organization projects: Tekton integrations, Cloud Events 24

Slide 25

Slide 25 text

What do we offer? ● Strong community bonding and knowledge transfers ● Experienced mentors ● Online demos and meetups ● Travel grants for successful projects 25

Slide 26

Slide 26 text

Thanks to GSoC 2020 students! Kezhi Xiong Rishabh Budhouliya Loghi Perinpanayagam Buddhika Chathuranga Sumit Sarin Zixuan Liu Sladyn Nunes

Slide 27

Slide 27 text

GSoC 2019 Highlights https://jenkins.io/blog/2020/01/29/gsoc-report/ 27

Slide 28

Slide 28 text

2021 project ideas https://www.jenkins.io/projects/gsoc/2021/project-ideas/ 28

Slide 29

Slide 29 text

Git Credentials Binding for sh, bat, and powershell ● #3 most voted feature request (JENKINS-28335) ● Authenticated git commands in steps ● Allow advanced operations ○ Push a commit or a tag ○ Clone with advanced options ○ Create a remote branch ○ Delete a remote tag or branch ● Resolves multiple enhancement requests ● See the project idea for details 29

Slide 30

Slide 30 text

● Pipeline documentation improvements ○ Extend the documentation generator ○ Extract documentation from released plugins ● Layout improvements ○ Improve usability ● Content improvements ○ Add standard content to better guide users ● See the project idea for details Pipeline Step Doc Generator Improvements 30

Slide 31

Slide 31 text

FAQ: How to apply? 1. Explore the project ideas 2. Reach out to the community 3. Discuss your project proposal draft a. https://www.jenkins.io/projects/gsoc/students 4. Apply to the CD.Foundation organization

Slide 32

Slide 32 text

Our Channels ● Mailing list ○ https://groups.google.com/forum/#!forum/jenkinsci-gsoc-all-public ● Gitter ○ https://gitter.im/jenkinsci/gsoc-sig ● Regular Office Hours on Wednesdays ○ https://jenkins.io/projects/gsoc/#office-hours ○ Recordings: https://www.youtube.com/playlist?list=PLN7ajX_VdyaO1f6bvkcSzW4PdWKkLktRG ● Project-specific channels

Slide 33

Slide 33 text

Summary 33

Slide 34

Slide 34 text

Useful links ● https://jenkins.io/participate ● https://www.jenkins.io/projects/gsoc/ ● https://gitter.im/jenkinsci/newcomer-contributors 34

Slide 35

Slide 35 text

Contacts: E-mail: o.v.nenashev@gmail.com GitHub: oleg-nenashev Twitter: @oleg_nenashev QUESTIONS?

Slide 36

Slide 36 text

Continuous Delivery Foundation (CDF) 36 https://cd.foundation/ CD Foundation is an open-source community improving the world's ability to deliver software with security and speed

Slide 37

Slide 37 text

Jenkins in CDF ● Jenkins is a part of the CDF ● Joined in 2019 as a founding project ● Graduated in 2020 ● We participate in GSoC under the CDF umbrella 37

Slide 38

Slide 38 text

Contributing to CDF ● Technical Oversight Committee ● Outreach Committee ● SIGs ○ MLOps, Security,Events ○ Interoperability, Best Practices ● Ambassador program ● Landscape 38