jenkins @ scale · jenkins pipeline suite of plugins which supports implementing and integrating...

Post on 22-May-2020

20 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Jenkins @ ScaleEclipseCon France 2017

Michaël Pailloncy - Baptiste Mathus

● Software Developer & Automation addict● DevOps Automation/Tools Engineer ● OSS contributor

https://jenkins.io

Michaël Pailloncy

● Passionate about Agile, Devops & Continuous Delivery, and all things Automation

● Jenkins & MojoHaus Committer● Lengthy-reply generator

● Software Developer @

Baptiste Mathus

Jenkins History In Short

● 2005 : Kohsuke Kawaguchi creates Hudson

● 2011 : Oracle forks the project,

the community renames to Jenkins.

● 2016 : Jenkins 2

Typical Jenkins Setup

DEMO

0 executor on Master

For SECURITY

and

STABILITY

Source: https://blog.newrelic.com/2016/02/04/data-culture-survey-results-faster-deployment/

53%

81%

Continuous Integrationhas become standard,

Continuous Deliveryis where differentiation now lies

How can we scale cleanly and securely?

REPRODUCIBILITY >>> SPEED

Dynamic agent provisioning

One shot agents

BABY STEPS

I want to map my actual process to code!

OK, so what if?

I want

Parallel builds, for realFail fast

Human inputs

Good usability and visualization

Robustness

“Simple things should be simpleComplex things should be possible

“– Alan Kay

Jenkins Pipeline & Blue Oceanhttps://www.flickr.com/photos/compacflt/9510971787/

Some statistics...

Number of Jenkins pipelines

Blue Ocean plugin installations count

Jenkins Pipeline

Suite of plugins which supports implementing and integrating continuous delivery pipelines into Jenkins

● Scripted Pipeline: The OriginalⓇ

○ More programmatic○ Mature○ but more complex

● Declarative Pipeline○ Opinionated○ Younger, 1.0 is 6 months old

Jenkins Pipeline

Configuration As Code

Jenkinsfile lets you version your Pipeline with the code

Blue Ocean

Rethinks the User Experience of Jenkins

Makes visualization a breath

Especially integrated with Pipeline

DEMO

About Pipeline robustness

Orchestration engine runs on the Master !

Uses Continuation Passing Style

Enable sandbox

For SECURITY

and

STABILITY(yes, again)

Wrapping up

● You need to go faster!

● Agents are transient : throw them away

● Use labels, never ever node names in jobs

● Use Jenkins less, keep things simple

● Start simple, remember John Gall :-)

?

top related