SlideShare a Scribd company logo
JENKINS XJENKINS X
automated CI/CD solution for cloud native applications
on Kubernetes
JBUG Korea
@tedwon
https://jenkins-x.io/
1
AT KOREA DEVELPER SEMINARAT KOREA DEVELPER SEMINAR
Saturday, 17th November, 2018
개발자를위한공감세미나: 17번째이야기
2
JENKINS VS JENKIS XJENKINS VS JENKIS X
3
JENKINSJENKINS
https://jenkins.io/
4
JENKINS XJENKINS X
https://jenkins-x.io/
5
JENKINS X - WHAT WE DOJENKINS X - WHAT WE DO
Code change ⇒Pull Request ⇒Review
⇒Merge ⇒Staging ⇒Production
6
WHAT ARE THE NEW CHANGES?WHAT ARE THE NEW CHANGES?
Move from on premise to cloud
Move from BareMetal/VMs to containers
Kubernetes has become the defacto standard
Move from monoliths to microservices
Become high performing teams via CI/CD
7
WHAT ARE THE NEW CHALLENGES?WHAT ARE THE NEW CHALLENGES?
How do I migrate my applications to the cloud?
How do dev teams work with Kubernetes?
What do I need to start developing, building and
deploying?
How can I see my applications log?
8
STARTED BY JAMES STRACHANSTARTED BY JAMES STRACHAN
9
10
STARTED BY JAMES STRACHANSTARTED BY JAMES STRACHAN
Released at March of this year, 2018
Founder of Groovy, Apache ActiveMQ/Camel
https://twitter.com/jstrachan/status/9757967221474
https://goo.gl/ceLcmq
https://github.com/jenkins-x/jx/graphs/contributors
https://www.linkedin.com/in/jstrachan/
https://medium.com/@jstrachan
11
STARTED BY JAMES STRACHANSTARTED BY JAMES STRACHAN
Developed similar project in Red Hat until last year,
2017
gofabric8
https://goo.gl/4re3G7
https://github.com/fabric8io/gofabric8
http://fabric8.io/
12
FEATURES OF JENKINS XFEATURES OF JENKINS X
Automated CI and CD
Environment Promotion via GitOps
Pull Request Preview Environments
Feedback on Issues and Pull Requests
13
SUPPORTED CLOUD PROVIDERSSUPPORTED CLOUD PROVIDERS
Google Container Engine
Red Hat OpenShift
Amazon Elastic Container Service
Azure Container Service
IBM Cloud Kubernetes Service
Oracle Cloud Container Engine
minikube, minishift
https://jenkins-x.io/commands/jx_create_cluster/
14
HOW DOES JENKINS X HELP?HOW DOES JENKINS X HELP?
Jenkins
CI/CD pipeline solution
Nexus
Artifact repository
Package manager for Kubernetes
https://helm.sh
15
HOW DOES JENKINS X HELP?HOW DOES JENKINS X HELP?
Chartmuseum
Helm Chart repository
Monocular
Web UI for helm charts
Build packs to bootstrap applications
Skaffold
Tool for building docker images on kubernetes
https://draft.sh
16
HELM CHARTHELM CHART
Helm Chart is a packaging format.
A chart is a collection of les that describe a related
set of Kubernetes resources.
~/demo/charts/demo(master) » tree .
.
├── Chart.yaml
├── Makefile
├── README.md
├── charts
├── templates
│   ├── NOTES.txt
│   ├── _helpers.tpl
│   ├── deployment.yaml
│   └── service.yaml
└── values.yaml
17
18
19
20
21
22
23
HOW DOES JENKINS X HELP?HOW DOES JENKINS X HELP?
jx open
jenkins http://jenkins.jx.x.x.x.x.nip.io
jenkins-x-chartmuseum http://chartmuseum.jx.x.x.x.x.nip.io
jenkins-x-docker-registry http://docker-registry.jx.x.x.x.x.nip.
jenkins-x-monocular-ui http://monocular.jx.x.x.x.x.nip.io
nexus http://nexus.jx.x.x.x.x.nip.io
24
IMPORT MAVEN PROJECTIMPORT MAVEN PROJECT
25
26
27
28
29
30
ENVIRONMENT PROMOTION VIA GITOPSENVIRONMENT PROMOTION VIA GITOPS
Development Environment
Staging Environment
Production Environment
jx env
? Pick environment: [Use arrows to move, type to filter]
> dev
production
staging
31
32
DEMO & ENVIRONMENT GIT REPOSITORYDEMO & ENVIRONMENT GIT REPOSITORY
33
JX GET APPLICATIONSJX GET APPLICATIONS
34 . 1
34 . 2
JX GET PREVIEWSJX GET PREVIEWS
35 . 1
35 . 2
36
37 . 1
37 . 2
HOW DO WE SETUP KUBERNETES +HOW DO WE SETUP KUBERNETES +
JENKINS X?JENKINS X?
Install the jx command line tool
http://jenkins-x.io/getting-started/install/
macOs:
brew tap jenkins-x/jx
brew install jx
linux:
curl -L https://github.com/jenkins-x/jx/releases/download/v1.3.46
sudo mv jx /usr/local/bin
38
HOW DO WE SETUP KUBERNETES +HOW DO WE SETUP KUBERNETES +
JENKINS X?JENKINS X?
If using the public cloud use:
jx create cluster aws
jx create cluster gke
jx create cluster aks
39
HOW DO WE SETUP KUBERNETES +HOW DO WE SETUP KUBERNETES +
JENKINS X?JENKINS X?
If you have a cluster already - ensure RBAC enabled
then:
jx install --provider=openshift
40
CREATE CLUSTER GKECREATE CLUSTER GKE
Google Container Engine $300 free credit
https://console.cloud.google.com/freetrial
41
42
VSCODE JENKINS X EXTENSIONVSCODE JENKINS X EXTENSION
43
44
DEMODEMO
Creating GKE Kubernetes cluster with Jenkins X
Creating Spring Boot app
Creating code change
Promoting to Production
45
DEMO - DEPLOY SPRING BOOT APPDEMO - DEPLOY SPRING BOOT APP
jx create cluster gke
46
DEMO - DEPLOY SPRING BOOT APPDEMO - DEPLOY SPRING BOOT APP
Create Cluster GKE Record:
https://asciinema.org/a/210859
47
DEMO - DEPLOY SPRING BOOT APPDEMO - DEPLOY SPRING BOOT APP
jx create spring -d web -d actuator
48
DEMO - DEPLOY SPRING BOOT APPDEMO - DEPLOY SPRING BOOT APP
Record:
Automatically set up CI/CD pipelines for new +
imported projects
Setups up git repository
Adds webhooks on git to trigger Jenkins pipelines on
PR / master
Triggers the rst pipeline
https://asciinema.org/a/210872
49
DEMO - JENKINS X ON PULL REQUESTDEMO - JENKINS X ON PULL REQUEST
jx create issue -t 'add a homepage'
git checkout -b wip
vi src/main/resources/static/index.html
git add src
git commit -a -m 'add a homepage fixes #1'
git push origin wip
jx create pullrequest -t "add a homepage fixes #1"
jx get preview
50
DEMO - JENKINS X ON PULL REQUESTDEMO - JENKINS X ON PULL REQUEST
Creates preview docker image + helm chart
Creates a Preview Environment and comments on
the PR with the link
https://github.com/tedwon/demo1030/pull/2
51
DEMO - JENKINS X PROMOTION VIA GITOPSDEMO - JENKINS X PROMOTION VIA GITOPS
jx promote --version 0.0.2 --env production
52
JENKINS X SLACKJENKINS X SLACK
#jenkins-x-user
kubernetes.slack.com
53
54
JENKINS X ROADMAPJENKINS X ROADMAP
https://jenkins-x.io/contribute/roadmap/
55
TRY IT OUT!TRY IT OUT!
JBUG Jenkins X Hands-on
https://jenkins-x.io/getting-started/
https://goo.gl/oBbHxA
https://github.com/tedwon/jenkins-x-slides-tedwon
56
SPECIAL THANKS TOSPECIAL THANKS TO
Jungho Cha < >jcha@redhat.com
57
THANK YOUTHANK YOU
facebook.com/groups/jbossusergroup/
58
SOURCES & REFERENCESSOURCES & REFERENCES
https://docs.google.com/presentation/d/1hwt2lFh3cCeF
https://developer.okta.com/blog/2018/07/11/ci-cd-sprin
https://jenkins.io/blog/2018/03/19/introducing-jenkins
https://www.youtube.com/watch?v=uHe7R_iZSLU
https://jenkins.io/blog/2018/07/19/jenkins-x-accelerate
59
SOURCES & REFERENCESSOURCES & REFERENCES
https://dzone.com/articles/jenkins-x-the-good-bad-
and-ugly
https://blog.octo.com/en/jenkinsx-new-kubernetes-
dream-part-1/
https://www.dropbox.com/s/2l3yudybl8dx4j7/2.pdf?
dl=0
http://www.itworld.co.kr/news/107527
https://www.redhat.com/en/blog/integrating-
ansible-jenkins-cicd-process 60
SOURCES & REFERENCESSOURCES & REFERENCES
JBUG Jenkins X Hands-on
http://woowabros.github.io/experience/2018/06/26/bro
cicd.html
https://dzone.com/articles/what-is-gitops-really
https://jenkins-x.io/developing/git/#using-a-different-gi
provider-for-environments
https://goo.gl/oBbHxA
https://github.com/tedwon/jenkins-x-slides-tedwon
61

More Related Content

PPTX
From java monolith to kubernetes microservices - an open source journey with ...
PDF
Jenkins X intro (from google app dev conference)
PPTX
Introduction to Jenkins X
PDF
Jenkins X Hands-on - automated CI/CD solution for cloud native applications o...
PDF
Cloud Native CI/CD with Jenkins X and Knative Pipelines
PDF
Unlimited Staging Environments
PDF
Terraform GitOps on Codefresh
PDF
Cloud Native CI/CD with GitOps
From java monolith to kubernetes microservices - an open source journey with ...
Jenkins X intro (from google app dev conference)
Introduction to Jenkins X
Jenkins X Hands-on - automated CI/CD solution for cloud native applications o...
Cloud Native CI/CD with Jenkins X and Knative Pipelines
Unlimited Staging Environments
Terraform GitOps on Codefresh
Cloud Native CI/CD with GitOps

What's hot (20)

PDF
5 Habits of High-Velocity Teams Using Kubernetes
PDF
GitOps - Operation By Pull Request
PDF
Setting up CI/CD pipeline with Kubernetes and Kublr step-by-step
PDF
Docker based-Pipelines with Codefresh
PDF
Google ko: fast Kubernetes microservice development in Go - Sangam Biradar, E...
PDF
Introduction of cloud native CI/CD on kubernetes
PDF
CI/CD Pipeline mit Gitlab CI und Kubernetes
PDF
Continuous Deployment with Kubernetes, Docker and GitLab CI
PDF
Continuous Delivery Pipeline with Docker and Jenkins
PDF
GitLab - Java User Group
PDF
Gitlab ci, cncf.sk
PPTX
Continuous Delivery with Jenkins & Kubernetes @ Sky
PDF
OPENSHIFT CONTAINER PLATFORM CI/CD Build & Deploy
PPTX
2016 - Continuously Delivering Microservices in Kubernetes using Jenkins
PDF
Why you can't ignore GitLab
PDF
Docker New York City: From GitOps to a scalable CI/CD Pattern for Kubernetes
PDF
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
PPSX
GitOps and Kubernetes: a radical idea
PPTX
2015 05-06-karsten gaebert-akademie-etrainings
PPTX
KubeCon 2019 - Scaling your cluster (both ways)
5 Habits of High-Velocity Teams Using Kubernetes
GitOps - Operation By Pull Request
Setting up CI/CD pipeline with Kubernetes and Kublr step-by-step
Docker based-Pipelines with Codefresh
Google ko: fast Kubernetes microservice development in Go - Sangam Biradar, E...
Introduction of cloud native CI/CD on kubernetes
CI/CD Pipeline mit Gitlab CI und Kubernetes
Continuous Deployment with Kubernetes, Docker and GitLab CI
Continuous Delivery Pipeline with Docker and Jenkins
GitLab - Java User Group
Gitlab ci, cncf.sk
Continuous Delivery with Jenkins & Kubernetes @ Sky
OPENSHIFT CONTAINER PLATFORM CI/CD Build & Deploy
2016 - Continuously Delivering Microservices in Kubernetes using Jenkins
Why you can't ignore GitLab
Docker New York City: From GitOps to a scalable CI/CD Pattern for Kubernetes
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
GitOps and Kubernetes: a radical idea
2015 05-06-karsten gaebert-akademie-etrainings
KubeCon 2019 - Scaling your cluster (both ways)
Ad

Similar to Jenkins X - automated CI/CD solution for cloud native applications on Kubernetes (20)

PDF
From Java Monolith to k8s with CI/CD
PDF
Jenkins x gitops
PDF
Jenkins X on Linode LKE
PDF
Introduction to Jenkins X - a beginner's guide
PDF
Continuous Delivery to Kubernetes with Jenkins and Helm
PDF
DevOps Spain 2019. David Cañadillas -Cloudbees
PDF
Put the dev back in devops - Cloud-native at local speed! - RH Summit 19
PDF
Cloud native - CI/CD
PDF
Jenkins X – CI/CD in wolkigen Umgebungen
PDF
The DevOps 2.6 Toolkit: Jenkins X: Cloud-Native Kubernetes-First Continuous D...
PPTX
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
PDF
CD in kubernetes using helm and ksonnet. Stas Kolenkin
PPTX
Devops
PPTX
CICD with Jenkins
PDF
Building CI/CD Pipelines for Kubernetes
PPTX
Building CI/CD Pipelines with Jenkins and Kubernetes
PPTX
Continuous Integration and Deployment with Jenkins for PCF
PPTX
Leveraging Helm to manage Deployments on Kubernetes
PPTX
Continuous Integration and Deployment with Jenkins for PCF
PPTX
DevOps-CI_CD_JAVA_JAVA______Jenkins.pptx
From Java Monolith to k8s with CI/CD
Jenkins x gitops
Jenkins X on Linode LKE
Introduction to Jenkins X - a beginner's guide
Continuous Delivery to Kubernetes with Jenkins and Helm
DevOps Spain 2019. David Cañadillas -Cloudbees
Put the dev back in devops - Cloud-native at local speed! - RH Summit 19
Cloud native - CI/CD
Jenkins X – CI/CD in wolkigen Umgebungen
The DevOps 2.6 Toolkit: Jenkins X: Cloud-Native Kubernetes-First Continuous D...
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
CD in kubernetes using helm and ksonnet. Stas Kolenkin
Devops
CICD with Jenkins
Building CI/CD Pipelines for Kubernetes
Building CI/CD Pipelines with Jenkins and Kubernetes
Continuous Integration and Deployment with Jenkins for PCF
Leveraging Helm to manage Deployments on Kubernetes
Continuous Integration and Deployment with Jenkins for PCF
DevOps-CI_CD_JAVA_JAVA______Jenkins.pptx
Ad

More from Ted Won (17)

PDF
Undertow RequestBufferingHandler 소개
PDF
JBoss EAP 7 & JDG 7 최신 기술 소개
PDF
JBoss Modules Internal
PDF
오픈 소스 컨트리뷰션 가이드
PDF
Hawkular overview
PDF
Complex Event Processing with Esper
PDF
JDG 7 & Spark Integration
PDF
지금 핫한 Real-time In-memory Stream Processing 이야기
PDF
Nara - Personalized Web Recommendation Service Quick Review
PDF
JBoss Community's Application Monitoring Platform
PDF
Real-time Big Data Analytics Practice with Unstructured Data
PDF
Red Hat Forum 2012 - JBoss RHQ - Java Application Monitoring & Management Pla...
PDF
Building Real-time CEP Application with Open Source Projects
PDF
JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기
PDF
JBoss RHQ와 Byteman을 이용한 오픈소스 자바 애플리케이션 모니터링
PPT
RHQ 공감 Seminar 6th
PDF
Complex Event Processing with Esper
Undertow RequestBufferingHandler 소개
JBoss EAP 7 & JDG 7 최신 기술 소개
JBoss Modules Internal
오픈 소스 컨트리뷰션 가이드
Hawkular overview
Complex Event Processing with Esper
JDG 7 & Spark Integration
지금 핫한 Real-time In-memory Stream Processing 이야기
Nara - Personalized Web Recommendation Service Quick Review
JBoss Community's Application Monitoring Platform
Real-time Big Data Analytics Practice with Unstructured Data
Red Hat Forum 2012 - JBoss RHQ - Java Application Monitoring & Management Pla...
Building Real-time CEP Application with Open Source Projects
JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기
JBoss RHQ와 Byteman을 이용한 오픈소스 자바 애플리케이션 모니터링
RHQ 공감 Seminar 6th
Complex Event Processing with Esper

Recently uploaded (20)

PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Machine learning based COVID-19 study performance prediction
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
Spectroscopy.pptx food analysis technology
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Machine learning based COVID-19 study performance prediction
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
MYSQL Presentation for SQL database connectivity
Encapsulation_ Review paper, used for researhc scholars
Digital-Transformation-Roadmap-for-Companies.pptx
Programs and apps: productivity, graphics, security and other tools
MIND Revenue Release Quarter 2 2025 Press Release
“AI and Expert System Decision Support & Business Intelligence Systems”
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
The AUB Centre for AI in Media Proposal.docx
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Chapter 3 Spatial Domain Image Processing.pdf
Spectroscopy.pptx food analysis technology
Network Security Unit 5.pdf for BCA BBA.
Dropbox Q2 2025 Financial Results & Investor Presentation

Jenkins X - automated CI/CD solution for cloud native applications on Kubernetes

  • 1. JENKINS XJENKINS X automated CI/CD solution for cloud native applications on Kubernetes JBUG Korea @tedwon https://jenkins-x.io/ 1
  • 2. AT KOREA DEVELPER SEMINARAT KOREA DEVELPER SEMINAR Saturday, 17th November, 2018 개발자를위한공감세미나: 17번째이야기 2
  • 3. JENKINS VS JENKIS XJENKINS VS JENKIS X 3
  • 6. JENKINS X - WHAT WE DOJENKINS X - WHAT WE DO Code change ⇒Pull Request ⇒Review ⇒Merge ⇒Staging ⇒Production 6
  • 7. WHAT ARE THE NEW CHANGES?WHAT ARE THE NEW CHANGES? Move from on premise to cloud Move from BareMetal/VMs to containers Kubernetes has become the defacto standard Move from monoliths to microservices Become high performing teams via CI/CD 7
  • 8. WHAT ARE THE NEW CHALLENGES?WHAT ARE THE NEW CHALLENGES? How do I migrate my applications to the cloud? How do dev teams work with Kubernetes? What do I need to start developing, building and deploying? How can I see my applications log? 8
  • 9. STARTED BY JAMES STRACHANSTARTED BY JAMES STRACHAN 9
  • 10. 10
  • 11. STARTED BY JAMES STRACHANSTARTED BY JAMES STRACHAN Released at March of this year, 2018 Founder of Groovy, Apache ActiveMQ/Camel https://twitter.com/jstrachan/status/9757967221474 https://goo.gl/ceLcmq https://github.com/jenkins-x/jx/graphs/contributors https://www.linkedin.com/in/jstrachan/ https://medium.com/@jstrachan 11
  • 12. STARTED BY JAMES STRACHANSTARTED BY JAMES STRACHAN Developed similar project in Red Hat until last year, 2017 gofabric8 https://goo.gl/4re3G7 https://github.com/fabric8io/gofabric8 http://fabric8.io/ 12
  • 13. FEATURES OF JENKINS XFEATURES OF JENKINS X Automated CI and CD Environment Promotion via GitOps Pull Request Preview Environments Feedback on Issues and Pull Requests 13
  • 14. SUPPORTED CLOUD PROVIDERSSUPPORTED CLOUD PROVIDERS Google Container Engine Red Hat OpenShift Amazon Elastic Container Service Azure Container Service IBM Cloud Kubernetes Service Oracle Cloud Container Engine minikube, minishift https://jenkins-x.io/commands/jx_create_cluster/ 14
  • 15. HOW DOES JENKINS X HELP?HOW DOES JENKINS X HELP? Jenkins CI/CD pipeline solution Nexus Artifact repository Package manager for Kubernetes https://helm.sh 15
  • 16. HOW DOES JENKINS X HELP?HOW DOES JENKINS X HELP? Chartmuseum Helm Chart repository Monocular Web UI for helm charts Build packs to bootstrap applications Skaffold Tool for building docker images on kubernetes https://draft.sh 16
  • 17. HELM CHARTHELM CHART Helm Chart is a packaging format. A chart is a collection of les that describe a related set of Kubernetes resources. ~/demo/charts/demo(master) » tree . . ├── Chart.yaml ├── Makefile ├── README.md ├── charts ├── templates │   ├── NOTES.txt │   ├── _helpers.tpl │   ├── deployment.yaml │   └── service.yaml └── values.yaml 17
  • 18. 18
  • 19. 19
  • 20. 20
  • 21. 21
  • 22. 22
  • 23. 23
  • 24. HOW DOES JENKINS X HELP?HOW DOES JENKINS X HELP? jx open jenkins http://jenkins.jx.x.x.x.x.nip.io jenkins-x-chartmuseum http://chartmuseum.jx.x.x.x.x.nip.io jenkins-x-docker-registry http://docker-registry.jx.x.x.x.x.nip. jenkins-x-monocular-ui http://monocular.jx.x.x.x.x.nip.io nexus http://nexus.jx.x.x.x.x.nip.io 24
  • 25. IMPORT MAVEN PROJECTIMPORT MAVEN PROJECT 25
  • 26. 26
  • 27. 27
  • 28. 28
  • 29. 29
  • 30. 30
  • 31. ENVIRONMENT PROMOTION VIA GITOPSENVIRONMENT PROMOTION VIA GITOPS Development Environment Staging Environment Production Environment jx env ? Pick environment: [Use arrows to move, type to filter] > dev production staging 31
  • 32. 32
  • 33. DEMO & ENVIRONMENT GIT REPOSITORYDEMO & ENVIRONMENT GIT REPOSITORY 33
  • 34. JX GET APPLICATIONSJX GET APPLICATIONS 34 . 1
  • 36. JX GET PREVIEWSJX GET PREVIEWS 35 . 1
  • 38. 36
  • 41. HOW DO WE SETUP KUBERNETES +HOW DO WE SETUP KUBERNETES + JENKINS X?JENKINS X? Install the jx command line tool http://jenkins-x.io/getting-started/install/ macOs: brew tap jenkins-x/jx brew install jx linux: curl -L https://github.com/jenkins-x/jx/releases/download/v1.3.46 sudo mv jx /usr/local/bin 38
  • 42. HOW DO WE SETUP KUBERNETES +HOW DO WE SETUP KUBERNETES + JENKINS X?JENKINS X? If using the public cloud use: jx create cluster aws jx create cluster gke jx create cluster aks 39
  • 43. HOW DO WE SETUP KUBERNETES +HOW DO WE SETUP KUBERNETES + JENKINS X?JENKINS X? If you have a cluster already - ensure RBAC enabled then: jx install --provider=openshift 40
  • 44. CREATE CLUSTER GKECREATE CLUSTER GKE Google Container Engine $300 free credit https://console.cloud.google.com/freetrial 41
  • 45. 42
  • 46. VSCODE JENKINS X EXTENSIONVSCODE JENKINS X EXTENSION 43
  • 47. 44
  • 48. DEMODEMO Creating GKE Kubernetes cluster with Jenkins X Creating Spring Boot app Creating code change Promoting to Production 45
  • 49. DEMO - DEPLOY SPRING BOOT APPDEMO - DEPLOY SPRING BOOT APP jx create cluster gke 46
  • 50. DEMO - DEPLOY SPRING BOOT APPDEMO - DEPLOY SPRING BOOT APP Create Cluster GKE Record: https://asciinema.org/a/210859 47
  • 51. DEMO - DEPLOY SPRING BOOT APPDEMO - DEPLOY SPRING BOOT APP jx create spring -d web -d actuator 48
  • 52. DEMO - DEPLOY SPRING BOOT APPDEMO - DEPLOY SPRING BOOT APP Record: Automatically set up CI/CD pipelines for new + imported projects Setups up git repository Adds webhooks on git to trigger Jenkins pipelines on PR / master Triggers the rst pipeline https://asciinema.org/a/210872 49
  • 53. DEMO - JENKINS X ON PULL REQUESTDEMO - JENKINS X ON PULL REQUEST jx create issue -t 'add a homepage' git checkout -b wip vi src/main/resources/static/index.html git add src git commit -a -m 'add a homepage fixes #1' git push origin wip jx create pullrequest -t "add a homepage fixes #1" jx get preview 50
  • 54. DEMO - JENKINS X ON PULL REQUESTDEMO - JENKINS X ON PULL REQUEST Creates preview docker image + helm chart Creates a Preview Environment and comments on the PR with the link https://github.com/tedwon/demo1030/pull/2 51
  • 55. DEMO - JENKINS X PROMOTION VIA GITOPSDEMO - JENKINS X PROMOTION VIA GITOPS jx promote --version 0.0.2 --env production 52
  • 56. JENKINS X SLACKJENKINS X SLACK #jenkins-x-user kubernetes.slack.com 53
  • 57. 54
  • 58. JENKINS X ROADMAPJENKINS X ROADMAP https://jenkins-x.io/contribute/roadmap/ 55
  • 59. TRY IT OUT!TRY IT OUT! JBUG Jenkins X Hands-on https://jenkins-x.io/getting-started/ https://goo.gl/oBbHxA https://github.com/tedwon/jenkins-x-slides-tedwon 56
  • 60. SPECIAL THANKS TOSPECIAL THANKS TO Jungho Cha < >jcha@redhat.com 57
  • 62. SOURCES & REFERENCESSOURCES & REFERENCES https://docs.google.com/presentation/d/1hwt2lFh3cCeF https://developer.okta.com/blog/2018/07/11/ci-cd-sprin https://jenkins.io/blog/2018/03/19/introducing-jenkins https://www.youtube.com/watch?v=uHe7R_iZSLU https://jenkins.io/blog/2018/07/19/jenkins-x-accelerate 59
  • 63. SOURCES & REFERENCESSOURCES & REFERENCES https://dzone.com/articles/jenkins-x-the-good-bad- and-ugly https://blog.octo.com/en/jenkinsx-new-kubernetes- dream-part-1/ https://www.dropbox.com/s/2l3yudybl8dx4j7/2.pdf? dl=0 http://www.itworld.co.kr/news/107527 https://www.redhat.com/en/blog/integrating- ansible-jenkins-cicd-process 60
  • 64. SOURCES & REFERENCESSOURCES & REFERENCES JBUG Jenkins X Hands-on http://woowabros.github.io/experience/2018/06/26/bro cicd.html https://dzone.com/articles/what-is-gitops-really https://jenkins-x.io/developing/git/#using-a-different-gi provider-for-environments https://goo.gl/oBbHxA https://github.com/tedwon/jenkins-x-slides-tedwon 61