Cloud Native Jenkins update from the Jenkins contributor summit at DevOps World | Jenkins World (Sep 17, 2018). Cloud Native SIG, Pluggable Storage, Ephemeral Jenkins, and future plans.
• SIG = Special Interest Group • Founded in July 2018 • https://jenkins.io/sigs/cloud-native/ • Goal: Improve Jenkins to run on Cloud environments as a "Cloud Native" application 2
scalability / performance bottleneck • Many plugins and workarounds • Limited support by Jenkins architecture ◦ Custom steps are required ◦ s3() or artifactory() • No hacks, we change the architecture 7
logs • Configuration • Credentials • Builds • Jobs • Test results Defined at the JW 2016 Contributor Summit • Code coverage • Static analysis • System logs • Task logs • Fingerprints • ... Legend done & available work in progress not started 11
storage” • API patches in Jenkins 2.118+ Implementations • Artifact Manager for S3 • http://plugins.jenkins.io/artifact-manager-s3 • Available in Evergreen 12
file (and other types) storage destinations pluggable • JEP-213 - Configuration Storage API in the core Implementations: • SQL - by Alex Nordlund (deepy) • K8s Resources (same Kubeify by James Strachan) config.xml 14
embraces fundamentally different architecture & extensibility mechanisms • Ingredients • Kubernetes as platform • New extensibility mechanism • Data on cloud managed data services • Configuration as Code • Evergreen • Secure by design Cloud Native Jenkins // source: https://drive.google.com/file/d/160LjRKw42XXuXT2n4j8BLCzsSL5z2m2_/view Already in the SIG 23
pushing for • Great onboarding experiences, led by Jenkins 2 & Evergreen • Modern lovable UX led by Blue Ocean • Being a general purpose, usable for any software development • In the context of Cloud Native SIG, led by Carlos Sanchez • Follow the footsteps of Jenkins X and converge with it Cloud Native Jenkins // source: https://drive.google.com/file/d/160LjRKw42XXuXT2n4j8BLCzsSL5z2m2_/view 24
of the ingredients already going • Basic picture • Webhook receiver • Build engine ala Jenkinsfile runner, sprinkled with configuration-as-code • Delivered continuously, ala Evergreen • Not in scope for MVP • No GUI • No long term data storage Cloud Native Jenkins MVP // source: https://drive.google.com/file/d/160LjRKw42XXuXT2n4j8BLCzsSL5z2m2_/view 25
Jenkinsfile Runner by Nicolas and Kohsuke • Cloud Native networking in Jenkins a. Remoting over Kafka project by Pham Vu Tuan b. (?) Kubernetes-native solutions Other ongoing activities 27
storage work a. External Log Storage - GA b. Test Results c. JEP-213 - Configuration Storage for Jenkins 3. More alignment with Jenkins X & Evergreen 29
SIG to shape the future of Jenkins! 2. Try existing implementations and provide feedback 3. Create new External Storage Implementations https://jenkins.io/sigs/cloud-native/