SlideShare a Scribd company logo
1 of 49
Download to read offline
KEEPING TRACK OF YOUR CI/CD MESS
@DamienCoraboeuf
WHO AM I?
▸ Damien Coraboeuf (@DamienCoraboeuf)
▸ Born to Java in 1996
▸ Working in Continuous Delivery since 2008
▸ Automating pipelines at scale
▸ Where the mess comes from
▸ Starting to put some order
▸ From an integrated solution…
▸ … to a central point of knowledge
▸ Extracting customised information
▸ Operational aspects
15000 JOBS IN > 4 YEARS
0
2000
4000
6000
8000
10000
12000
14000
16000
7/15/15 10/23/15 1/31/16 5/10/16 8/18/16 11/26/16 3/6/17 6/14/17 9/22/17 12/31/17
Jobs
IT STARTS HERE
Product A
Product B
Project C
Maintenance 11.8
Maintenance 11.9
Maintenance 11.10
Maintenance 7.2
Maintenance 8.0
Maintenance 5.0
Check
Publication
WAS JBoss …
Promotion for QA
QAWAS QAJBoss …
Promotion for NFT
Sonar Fortify Perf
Promotion for delivery
Delivery
Auto Manual
Pipeline
Products & Projects Branches
…
RESPONSIBILITIES
Jenkins team
Pipeline libraries
Develops and
maintains
Development team
Seed files
Defines
Seed plug-in
SCM
Triggers
PIPELINE AS CODE - META INFORMATION
seed.properties
IT’S POURING INFORMATION ALL DAY LONG
A
rtefacts

Depen
d
en
cies
Triggering other
pipelinesRuns
tests

Collects
results
Scans
co
d
e

M
easures
perform
ances
Tags
/
com
m
its

Tickets
Deploying
ALL THE TIME
EXTRACTING SOME BASIC ORDER
▸ Projects
▸ Branches
▸ Builds
▸ Validations
▸ Promotions
Metadata!!
SEEING IS BELIEVING
▸ One tool to rule them all
▸ http://nemerosa.github.io/ontrack/
Promotions
Dependencies
Validations & their statuses
Builds
SEEING IS BELIEVING
▸ Filtering
Promoted … despite anomalies in
security scans
▸ Status of your pipeline in one glance
CONTRIBUTIONS
BUILD INFORMATION
SEEING IS BELIEVING
▸ Overview of all your branches
SEEING IS BELIEVING
▸ Change logs between builds, between versions
▸ Permalink for automated release notes
▸ Supports GitHub, JIRA, Subversion, BitBucket…
SEEING IS BELIEVING
▸ Using cross referenced information for searches:
▸ Where is my ticket?
▸ Where is my commit?
Example: where is fixed by #545 ticket?
Here you go!
SEARCH ON BUILDS
Change log
SINGLE POINT OF KNOWLEDGE
Ontrack
Artifactory
GitLab
InfluxDB
Jenkins
Vault
JIRA
BitBucket
Subversion
GitHub
Git
Ontrack
INTEGRATION WITH THE REST OF THE ECOSYSTEM
Jenkins plug-inGUI
REST API
GraphQL
InfluxDB metrics
Groovy DSL
JENKINS PLUG-IN
Post build actions
and
steps
JENKINS PLUG-IN
Integration with the Ontrack DSL
ONTRACK DSL
▸ Groovy based DSL
Automation of
Change log
JOB DSL INTEGRATION
Seed plugin
Job DSL Job Ontrack
JENKINS PIPELINE INTEGRATION
AUTOMATED FEEDBACK
▸ How to get the best out of your information
AUTOMATED FEEDBACK
▸ The collected information can be used in the ecosystem
▸ Based on Ontrack DSL

or GraphQL
▸ Example: promotions used

as triggers in Jenkins
AUTOMATED FEEDBACK
▸ Artifact automatic cleanup based on promotions
Collects builds to be deleted
(GraphQL)
Delete artefacts & versions
Cleanup job
META INFORMATION AT ALL LEVELS
▸ Attaching built-in or
custom properties to
all levels - projects,
branches, builds, etc.
▸ Used for reporting or
to drive processes
▸ Can be entered
manually or
automatically
CUSTOMISING THE SOLUTION
Ontrack Core
Extension
Ontrack
Java API
Extension

code
COLLECT YOUR OWN CUSTOM INFORMATION
Ontrack
Foreman
vSphere
HP Fortify
SonarQube
▸ Extension system
▸ New connectors
▸ New services, screens and interfaces
CUSTOMISING THE SOLUTION
▸ Deployment catalog
▸ TV wallboards for development teams
▸ Collecting artifact information
▸ Indexing project meta informations
▸ Dependency matrices
▸ KPI dashboards
▸ …
▸ Imagination is the limit
CUSTOMISING THE SOLUTION
▸ Deployment catalog
Sends deployment information

(version, platform, date, …)
Deployment job
Overview of deployments

per project
CUSTOMISING THE SOLUTION
▸ TV wallboards for development teams
GraphQL / REST
CUSTOMISING THE SOLUTION
▸ Collecting artifact information Artifactory
Details of usage / project
Metrics
CUSTOMISING THE SOLUTION
▸ Indexing project meta informations
▸ Gradle files, pom.xml, “pipeline as code” definitions
▸ Links with other Ontrack information
▸ Dashboards, search engine, etc.
▸ Extraction of statistics and usage
▸ Complex queries pipeline.type = 'MPL' 

and pipeline.major = 3

and !seed['jenkins.pipeline.project.jdk']

and !seed['jenkins.pipeline.sonar.goals']?.contains('toolchains')

and lastBuild.daysSince < 30
CUSTOMISING THE SOLUTION
▸ Links between projects at build level collected at build time
▸ Used to display dependency matrices enriched by promotions
CUSTOMISING THE SOLUTION
▸ KPI dashboards

Computing high level data for project managers
▸ Aggregating indexed information into high level of knowledge
▸ Computing trends
ONTRACK MANAGEMENT
▸ Jobs
▸ Metrics
▸ Deployment
▸ Security model
SYSTEM JOBS
▸ ~ 1000 jobs running in the background
▸ Critical system
▸ Collecting information all day long
▸ System administration interface
METRICS
▸ Ontrack can export lot of information to InfluxDB
▸ Additional metrics can be created through extensions
GETTING STARTED
▸ As simple as:
▸ http://localhost:8080 (admin/admin)
▸ Docker image but also…
▸ Distributions using Debian & RPM packages
▸ Standalone Spring Boot JAR
▸ 2 GB RAM / 2+ CPU / 10 GB Disk
▸ H2 database (local or server)
▸ … but beta version using Postgres
docker container run -d -p 8080:8080 nemerosa/ontrack:2.34.4
SECURITY
▸ Authentication
▸ Built-in users
▸ LDAP integration
▸ Extensible
▸ Authorisations
▸ Built-in ACL (roles & functions)
▸ Extensible
▸ Strong isolation between projects
▸ … but cross-projects roles
THE FUTURE OF ONTRACK
▸ More integrations: GitLab, Concourse, etc.
▸ Event based (CQRS)
▸ Neo4J export or internal representation
ONTRACK
▸ http://nemerosa.github.io/ontrack/
▸ Use it, fill tickets, extend, contribute
THANK YOU!
Thank you: Contact:
▸ http://nemerosa.com
▸ @DamienCoraboeuf

More Related Content

What's hot

WKP 2.4 Delivers GitOps Anywhere
WKP 2.4 Delivers GitOps AnywhereWKP 2.4 Delivers GitOps Anywhere
WKP 2.4 Delivers GitOps AnywhereWeaveworks
 
Devops Porto - CI/CD at Gitlab
Devops Porto - CI/CD at GitlabDevops Porto - CI/CD at Gitlab
Devops Porto - CI/CD at GitlabFilipa Lacerda
 
Jenkins X intro (from google app dev conference)
Jenkins X intro (from google app dev conference)Jenkins X intro (from google app dev conference)
Jenkins X intro (from google app dev conference)Michael Neale
 
Cicd pixelfederation
Cicd pixelfederationCicd pixelfederation
Cicd pixelfederationJuraj Hantak
 
PuppetConf 2017: Zero to Kubernetes -Scott Coulton, Puppet
PuppetConf 2017: Zero to Kubernetes -Scott Coulton, PuppetPuppetConf 2017: Zero to Kubernetes -Scott Coulton, Puppet
PuppetConf 2017: Zero to Kubernetes -Scott Coulton, PuppetPuppet
 
Learning to Scale OpenStack: Juno Update from the Rackspace Public Cloud
Learning to Scale OpenStack: Juno Update from the Rackspace Public CloudLearning to Scale OpenStack: Juno Update from the Rackspace Public Cloud
Learning to Scale OpenStack: Juno Update from the Rackspace Public CloudRainya Mosher
 
Building a Data Pipeline using Apache Airflow (on AWS / GCP)
Building a Data Pipeline using Apache Airflow (on AWS / GCP)Building a Data Pipeline using Apache Airflow (on AWS / GCP)
Building a Data Pipeline using Apache Airflow (on AWS / GCP)Yohei Onishi
 
WKP Team Workspaces Webinar
WKP Team Workspaces WebinarWKP Team Workspaces Webinar
WKP Team Workspaces WebinarWeaveworks
 
A GitOps model for High Availability and Disaster Recovery on EKS
A GitOps model for High Availability and Disaster Recovery on EKSA GitOps model for High Availability and Disaster Recovery on EKS
A GitOps model for High Availability and Disaster Recovery on EKSWeaveworks
 
Continuous Lifecycle London 2018 Event Keynote
Continuous Lifecycle London 2018 Event KeynoteContinuous Lifecycle London 2018 Event Keynote
Continuous Lifecycle London 2018 Event KeynoteWeaveworks
 
Flagger: Istio Progressive Delivery Operator
Flagger: Istio Progressive Delivery OperatorFlagger: Istio Progressive Delivery Operator
Flagger: Istio Progressive Delivery OperatorWeaveworks
 
DevSecOps: Bringing security to the DevOps pipeline
DevSecOps: Bringing security to the DevOps pipelineDevSecOps: Bringing security to the DevOps pipeline
DevSecOps: Bringing security to the DevOps pipelineAarno Aukia
 
The Power of GitOps with Flux & GitOps Toolkit
The Power of GitOps with Flux & GitOps ToolkitThe Power of GitOps with Flux & GitOps Toolkit
The Power of GitOps with Flux & GitOps ToolkitWeaveworks
 
Kubecon 2019 Recap
Kubecon 2019 RecapKubecon 2019 Recap
Kubecon 2019 RecapAarno Aukia
 
Kubernetes in kubernetes 搭建高可用環境
Kubernetes in kubernetes 搭建高可用環境Kubernetes in kubernetes 搭建高可用環境
Kubernetes in kubernetes 搭建高可用環境inwin stack
 
Sprint 121
Sprint 121Sprint 121
Sprint 121ManageIQ
 
PuppetConf 2017: Cloud, Containers, Puppet and You- Carl Caum, Puppet
PuppetConf 2017: Cloud, Containers, Puppet and You- Carl Caum, PuppetPuppetConf 2017: Cloud, Containers, Puppet and You- Carl Caum, Puppet
PuppetConf 2017: Cloud, Containers, Puppet and You- Carl Caum, PuppetPuppet
 
3 - Delen Private Bank: FOSS adventures in a Cloud Native world
3 - Delen Private Bank: FOSS adventures in a Cloud Native world3 - Delen Private Bank: FOSS adventures in a Cloud Native world
3 - Delen Private Bank: FOSS adventures in a Cloud Native worldKangaroot
 

What's hot (20)

WKP 2.4 Delivers GitOps Anywhere
WKP 2.4 Delivers GitOps AnywhereWKP 2.4 Delivers GitOps Anywhere
WKP 2.4 Delivers GitOps Anywhere
 
Devops Porto - CI/CD at Gitlab
Devops Porto - CI/CD at GitlabDevops Porto - CI/CD at Gitlab
Devops Porto - CI/CD at Gitlab
 
Jenkins X intro (from google app dev conference)
Jenkins X intro (from google app dev conference)Jenkins X intro (from google app dev conference)
Jenkins X intro (from google app dev conference)
 
Gitops Hands On
Gitops Hands OnGitops Hands On
Gitops Hands On
 
Cicd pixelfederation
Cicd pixelfederationCicd pixelfederation
Cicd pixelfederation
 
PuppetConf 2017: Zero to Kubernetes -Scott Coulton, Puppet
PuppetConf 2017: Zero to Kubernetes -Scott Coulton, PuppetPuppetConf 2017: Zero to Kubernetes -Scott Coulton, Puppet
PuppetConf 2017: Zero to Kubernetes -Scott Coulton, Puppet
 
Learning to Scale OpenStack: Juno Update from the Rackspace Public Cloud
Learning to Scale OpenStack: Juno Update from the Rackspace Public CloudLearning to Scale OpenStack: Juno Update from the Rackspace Public Cloud
Learning to Scale OpenStack: Juno Update from the Rackspace Public Cloud
 
Building a Data Pipeline using Apache Airflow (on AWS / GCP)
Building a Data Pipeline using Apache Airflow (on AWS / GCP)Building a Data Pipeline using Apache Airflow (on AWS / GCP)
Building a Data Pipeline using Apache Airflow (on AWS / GCP)
 
WKP Team Workspaces Webinar
WKP Team Workspaces WebinarWKP Team Workspaces Webinar
WKP Team Workspaces Webinar
 
Airflow at WePay
Airflow at WePayAirflow at WePay
Airflow at WePay
 
A GitOps model for High Availability and Disaster Recovery on EKS
A GitOps model for High Availability and Disaster Recovery on EKSA GitOps model for High Availability and Disaster Recovery on EKS
A GitOps model for High Availability and Disaster Recovery on EKS
 
Continuous Lifecycle London 2018 Event Keynote
Continuous Lifecycle London 2018 Event KeynoteContinuous Lifecycle London 2018 Event Keynote
Continuous Lifecycle London 2018 Event Keynote
 
Flagger: Istio Progressive Delivery Operator
Flagger: Istio Progressive Delivery OperatorFlagger: Istio Progressive Delivery Operator
Flagger: Istio Progressive Delivery Operator
 
DevSecOps: Bringing security to the DevOps pipeline
DevSecOps: Bringing security to the DevOps pipelineDevSecOps: Bringing security to the DevOps pipeline
DevSecOps: Bringing security to the DevOps pipeline
 
The Power of GitOps with Flux & GitOps Toolkit
The Power of GitOps with Flux & GitOps ToolkitThe Power of GitOps with Flux & GitOps Toolkit
The Power of GitOps with Flux & GitOps Toolkit
 
Kubecon 2019 Recap
Kubecon 2019 RecapKubecon 2019 Recap
Kubecon 2019 Recap
 
Kubernetes in kubernetes 搭建高可用環境
Kubernetes in kubernetes 搭建高可用環境Kubernetes in kubernetes 搭建高可用環境
Kubernetes in kubernetes 搭建高可用環境
 
Sprint 121
Sprint 121Sprint 121
Sprint 121
 
PuppetConf 2017: Cloud, Containers, Puppet and You- Carl Caum, Puppet
PuppetConf 2017: Cloud, Containers, Puppet and You- Carl Caum, PuppetPuppetConf 2017: Cloud, Containers, Puppet and You- Carl Caum, Puppet
PuppetConf 2017: Cloud, Containers, Puppet and You- Carl Caum, Puppet
 
3 - Delen Private Bank: FOSS adventures in a Cloud Native world
3 - Delen Private Bank: FOSS adventures in a Cloud Native world3 - Delen Private Bank: FOSS adventures in a Cloud Native world
3 - Delen Private Bank: FOSS adventures in a Cloud Native world
 

Similar to Ontrack - Keeping track of your CI/CD mess

Collibra wrojug-ontrack-20100424
Collibra wrojug-ontrack-20100424Collibra wrojug-ontrack-20100424
Collibra wrojug-ontrack-20100424Damien Coraboeuf
 
Full stack development best practice and toolset
Full stack development best practice and toolsetFull stack development best practice and toolset
Full stack development best practice and toolsetReid Lai
 
22nd Athens Big Data Meetup - 1st Talk - MLOps Workshop: The Full ML Lifecycl...
22nd Athens Big Data Meetup - 1st Talk - MLOps Workshop: The Full ML Lifecycl...22nd Athens Big Data Meetup - 1st Talk - MLOps Workshop: The Full ML Lifecycl...
22nd Athens Big Data Meetup - 1st Talk - MLOps Workshop: The Full ML Lifecycl...Athens Big Data
 
Microservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing MicroservicesMicroservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing MicroservicesQAware GmbH
 
8 - OpenShift - A look at a container platform: what's in the box
8 - OpenShift - A look at a container platform: what's in the box8 - OpenShift - A look at a container platform: what's in the box
8 - OpenShift - A look at a container platform: what's in the boxKangaroot
 
Thinking DevOps in the era of the Cloud - Demi Ben-Ari
Thinking DevOps in the era of the Cloud - Demi Ben-AriThinking DevOps in the era of the Cloud - Demi Ben-Ari
Thinking DevOps in the era of the Cloud - Demi Ben-AriDemi Ben-Ari
 
SH 1 - SES 4 - Microservices - Andrew Morgan TLV.pptx
SH 1 - SES 4 - Microservices - Andrew Morgan TLV.pptxSH 1 - SES 4 - Microservices - Andrew Morgan TLV.pptx
SH 1 - SES 4 - Microservices - Andrew Morgan TLV.pptxMongoDB
 
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...Lightbend
 
Docker and Cloud - Enables for DevOps - by ACA-IT
Docker and Cloud - Enables for DevOps - by ACA-ITDocker and Cloud - Enables for DevOps - by ACA-IT
Docker and Cloud - Enables for DevOps - by ACA-ITStijn Wijndaele
 
'DOCKER' & CLOUD: ENABLERS For DEVOPS
'DOCKER' & CLOUD:  ENABLERS For DEVOPS'DOCKER' & CLOUD:  ENABLERS For DEVOPS
'DOCKER' & CLOUD: ENABLERS For DEVOPSACA IT-Solutions
 
DevOps LA Meetup Intro to Habitat
DevOps LA Meetup Intro to HabitatDevOps LA Meetup Intro to Habitat
DevOps LA Meetup Intro to HabitatJessica DeVita
 
CI/CD on Google Cloud Platform
CI/CD on Google Cloud PlatformCI/CD on Google Cloud Platform
CI/CD on Google Cloud PlatformDevOps Indonesia
 
AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAmazon Web Services
 
OSMC 2023 | What’s new with Grafana Labs’s Open Source Observability stack by...
OSMC 2023 | What’s new with Grafana Labs’s Open Source Observability stack by...OSMC 2023 | What’s new with Grafana Labs’s Open Source Observability stack by...
OSMC 2023 | What’s new with Grafana Labs’s Open Source Observability stack by...NETWAYS
 
Analyze This! CloudBees Jenkins Cluster Operations and Analytics
Analyze This! CloudBees Jenkins Cluster Operations and AnalyticsAnalyze This! CloudBees Jenkins Cluster Operations and Analytics
Analyze This! CloudBees Jenkins Cluster Operations and AnalyticsCloudBees
 
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021William Caban
 
Pivotal CloudFoundry on Google cloud platform
Pivotal CloudFoundry on Google cloud platformPivotal CloudFoundry on Google cloud platform
Pivotal CloudFoundry on Google cloud platformRonak Banka
 
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024Cloud Native NoVA
 

Similar to Ontrack - Keeping track of your CI/CD mess (20)

Collibra wrojug-ontrack-20100424
Collibra wrojug-ontrack-20100424Collibra wrojug-ontrack-20100424
Collibra wrojug-ontrack-20100424
 
Full stack development best practice and toolset
Full stack development best practice and toolsetFull stack development best practice and toolset
Full stack development best practice and toolset
 
Tick
TickTick
Tick
 
22nd Athens Big Data Meetup - 1st Talk - MLOps Workshop: The Full ML Lifecycl...
22nd Athens Big Data Meetup - 1st Talk - MLOps Workshop: The Full ML Lifecycl...22nd Athens Big Data Meetup - 1st Talk - MLOps Workshop: The Full ML Lifecycl...
22nd Athens Big Data Meetup - 1st Talk - MLOps Workshop: The Full ML Lifecycl...
 
Kubernetes + Jenkins X: a Cloud Native Approach
Kubernetes + Jenkins X: a Cloud Native ApproachKubernetes + Jenkins X: a Cloud Native Approach
Kubernetes + Jenkins X: a Cloud Native Approach
 
Microservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing MicroservicesMicroservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing Microservices
 
8 - OpenShift - A look at a container platform: what's in the box
8 - OpenShift - A look at a container platform: what's in the box8 - OpenShift - A look at a container platform: what's in the box
8 - OpenShift - A look at a container platform: what's in the box
 
Thinking DevOps in the era of the Cloud - Demi Ben-Ari
Thinking DevOps in the era of the Cloud - Demi Ben-AriThinking DevOps in the era of the Cloud - Demi Ben-Ari
Thinking DevOps in the era of the Cloud - Demi Ben-Ari
 
SH 1 - SES 4 - Microservices - Andrew Morgan TLV.pptx
SH 1 - SES 4 - Microservices - Andrew Morgan TLV.pptxSH 1 - SES 4 - Microservices - Andrew Morgan TLV.pptx
SH 1 - SES 4 - Microservices - Andrew Morgan TLV.pptx
 
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
 
Docker and Cloud - Enables for DevOps - by ACA-IT
Docker and Cloud - Enables for DevOps - by ACA-ITDocker and Cloud - Enables for DevOps - by ACA-IT
Docker and Cloud - Enables for DevOps - by ACA-IT
 
'DOCKER' & CLOUD: ENABLERS For DEVOPS
'DOCKER' & CLOUD:  ENABLERS For DEVOPS'DOCKER' & CLOUD:  ENABLERS For DEVOPS
'DOCKER' & CLOUD: ENABLERS For DEVOPS
 
DevOps LA Meetup Intro to Habitat
DevOps LA Meetup Intro to HabitatDevOps LA Meetup Intro to Habitat
DevOps LA Meetup Intro to Habitat
 
CI/CD on Google Cloud Platform
CI/CD on Google Cloud PlatformCI/CD on Google Cloud Platform
CI/CD on Google Cloud Platform
 
AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for Government
 
OSMC 2023 | What’s new with Grafana Labs’s Open Source Observability stack by...
OSMC 2023 | What’s new with Grafana Labs’s Open Source Observability stack by...OSMC 2023 | What’s new with Grafana Labs’s Open Source Observability stack by...
OSMC 2023 | What’s new with Grafana Labs’s Open Source Observability stack by...
 
Analyze This! CloudBees Jenkins Cluster Operations and Analytics
Analyze This! CloudBees Jenkins Cluster Operations and AnalyticsAnalyze This! CloudBees Jenkins Cluster Operations and Analytics
Analyze This! CloudBees Jenkins Cluster Operations and Analytics
 
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
 
Pivotal CloudFoundry on Google cloud platform
Pivotal CloudFoundry on Google cloud platformPivotal CloudFoundry on Google cloud platform
Pivotal CloudFoundry on Google cloud platform
 
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
 

Recently uploaded

Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Bert Jan Schrijver
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is insideshinachiaurasa2
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdfPearlKirahMaeRagusta1
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park masabamasaba
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyviewmasabamasaba
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareJim McKeeth
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 

Recently uploaded (20)

Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 

Ontrack - Keeping track of your CI/CD mess

  • 1.
  • 2. KEEPING TRACK OF YOUR CI/CD MESS @DamienCoraboeuf
  • 3.
  • 4. WHO AM I? ▸ Damien Coraboeuf (@DamienCoraboeuf) ▸ Born to Java in 1996 ▸ Working in Continuous Delivery since 2008 ▸ Automating pipelines at scale
  • 5. ▸ Where the mess comes from ▸ Starting to put some order ▸ From an integrated solution… ▸ … to a central point of knowledge ▸ Extracting customised information ▸ Operational aspects
  • 6. 15000 JOBS IN > 4 YEARS 0 2000 4000 6000 8000 10000 12000 14000 16000 7/15/15 10/23/15 1/31/16 5/10/16 8/18/16 11/26/16 3/6/17 6/14/17 9/22/17 12/31/17 Jobs
  • 7. IT STARTS HERE Product A Product B Project C Maintenance 11.8 Maintenance 11.9 Maintenance 11.10 Maintenance 7.2 Maintenance 8.0 Maintenance 5.0 Check Publication WAS JBoss … Promotion for QA QAWAS QAJBoss … Promotion for NFT Sonar Fortify Perf Promotion for delivery Delivery Auto Manual Pipeline Products & Projects Branches …
  • 8. RESPONSIBILITIES Jenkins team Pipeline libraries Develops and maintains Development team Seed files Defines Seed plug-in SCM Triggers
  • 9. PIPELINE AS CODE - META INFORMATION seed.properties
  • 10. IT’S POURING INFORMATION ALL DAY LONG A rtefacts
 Depen d en cies Triggering other pipelinesRuns tests
 Collects results Scans co d e
 M easures perform ances Tags / com m its
 Tickets Deploying
  • 12.
  • 13. EXTRACTING SOME BASIC ORDER ▸ Projects ▸ Branches ▸ Builds ▸ Validations ▸ Promotions Metadata!!
  • 14. SEEING IS BELIEVING ▸ One tool to rule them all ▸ http://nemerosa.github.io/ontrack/ Promotions Dependencies Validations & their statuses Builds
  • 15. SEEING IS BELIEVING ▸ Filtering Promoted … despite anomalies in security scans ▸ Status of your pipeline in one glance
  • 18. SEEING IS BELIEVING ▸ Overview of all your branches
  • 19. SEEING IS BELIEVING ▸ Change logs between builds, between versions ▸ Permalink for automated release notes ▸ Supports GitHub, JIRA, Subversion, BitBucket…
  • 20. SEEING IS BELIEVING ▸ Using cross referenced information for searches: ▸ Where is my ticket? ▸ Where is my commit? Example: where is fixed by #545 ticket? Here you go!
  • 22. SINGLE POINT OF KNOWLEDGE Ontrack Artifactory GitLab InfluxDB Jenkins Vault JIRA BitBucket Subversion GitHub Git
  • 23. Ontrack INTEGRATION WITH THE REST OF THE ECOSYSTEM Jenkins plug-inGUI REST API GraphQL InfluxDB metrics Groovy DSL
  • 24. JENKINS PLUG-IN Post build actions and steps
  • 26. ONTRACK DSL ▸ Groovy based DSL Automation of Change log
  • 27. JOB DSL INTEGRATION Seed plugin Job DSL Job Ontrack
  • 29. AUTOMATED FEEDBACK ▸ How to get the best out of your information
  • 30. AUTOMATED FEEDBACK ▸ The collected information can be used in the ecosystem ▸ Based on Ontrack DSL
 or GraphQL ▸ Example: promotions used
 as triggers in Jenkins
  • 31. AUTOMATED FEEDBACK ▸ Artifact automatic cleanup based on promotions Collects builds to be deleted (GraphQL) Delete artefacts & versions Cleanup job
  • 32. META INFORMATION AT ALL LEVELS ▸ Attaching built-in or custom properties to all levels - projects, branches, builds, etc. ▸ Used for reporting or to drive processes ▸ Can be entered manually or automatically
  • 33. CUSTOMISING THE SOLUTION Ontrack Core Extension Ontrack Java API Extension
 code
  • 34. COLLECT YOUR OWN CUSTOM INFORMATION Ontrack Foreman vSphere HP Fortify SonarQube ▸ Extension system ▸ New connectors ▸ New services, screens and interfaces
  • 35. CUSTOMISING THE SOLUTION ▸ Deployment catalog ▸ TV wallboards for development teams ▸ Collecting artifact information ▸ Indexing project meta informations ▸ Dependency matrices ▸ KPI dashboards ▸ … ▸ Imagination is the limit
  • 36. CUSTOMISING THE SOLUTION ▸ Deployment catalog Sends deployment information
 (version, platform, date, …) Deployment job Overview of deployments
 per project
  • 37. CUSTOMISING THE SOLUTION ▸ TV wallboards for development teams GraphQL / REST
  • 38. CUSTOMISING THE SOLUTION ▸ Collecting artifact information Artifactory Details of usage / project Metrics
  • 39. CUSTOMISING THE SOLUTION ▸ Indexing project meta informations ▸ Gradle files, pom.xml, “pipeline as code” definitions ▸ Links with other Ontrack information ▸ Dashboards, search engine, etc. ▸ Extraction of statistics and usage ▸ Complex queries pipeline.type = 'MPL' 
 and pipeline.major = 3
 and !seed['jenkins.pipeline.project.jdk']
 and !seed['jenkins.pipeline.sonar.goals']?.contains('toolchains')
 and lastBuild.daysSince < 30
  • 40. CUSTOMISING THE SOLUTION ▸ Links between projects at build level collected at build time ▸ Used to display dependency matrices enriched by promotions
  • 41. CUSTOMISING THE SOLUTION ▸ KPI dashboards
 Computing high level data for project managers ▸ Aggregating indexed information into high level of knowledge ▸ Computing trends
  • 42. ONTRACK MANAGEMENT ▸ Jobs ▸ Metrics ▸ Deployment ▸ Security model
  • 43. SYSTEM JOBS ▸ ~ 1000 jobs running in the background ▸ Critical system ▸ Collecting information all day long ▸ System administration interface
  • 44. METRICS ▸ Ontrack can export lot of information to InfluxDB ▸ Additional metrics can be created through extensions
  • 45. GETTING STARTED ▸ As simple as: ▸ http://localhost:8080 (admin/admin) ▸ Docker image but also… ▸ Distributions using Debian & RPM packages ▸ Standalone Spring Boot JAR ▸ 2 GB RAM / 2+ CPU / 10 GB Disk ▸ H2 database (local or server) ▸ … but beta version using Postgres docker container run -d -p 8080:8080 nemerosa/ontrack:2.34.4
  • 46. SECURITY ▸ Authentication ▸ Built-in users ▸ LDAP integration ▸ Extensible ▸ Authorisations ▸ Built-in ACL (roles & functions) ▸ Extensible ▸ Strong isolation between projects ▸ … but cross-projects roles
  • 47. THE FUTURE OF ONTRACK ▸ More integrations: GitLab, Concourse, etc. ▸ Event based (CQRS) ▸ Neo4J export or internal representation
  • 48. ONTRACK ▸ http://nemerosa.github.io/ontrack/ ▸ Use it, fill tickets, extend, contribute
  • 49. THANK YOU! Thank you: Contact: ▸ http://nemerosa.com ▸ @DamienCoraboeuf