Weitere ähnliche Inhalte
Ähnlich wie Javaone 2014 - Git & Docker with Jenkins (20)
Mehr von Andy Pemberton (12)
Kürzlich hochgeladen (20)
Javaone 2014 - Git & Docker with Jenkins
- 2. Meet Jenkins…
• #1 Continuous Integration and Continuous Deployment
©2014 CloudBees, Inc. All Rights Reserved 2
server
• Java web application
• “java –jar jenkins.war”
• MIT-licensed, 8 years old
• 500+ releases
jenkins-ci.org
Source: 2014 Java Tools and Technologies Landscape – Rebel Labs
- 5. Git Integration Plugins
©2014 CloudBees, Inc. All Rights Reserved 5
• Lots of them!
– Git plugin
– GitBucket Plugin
– Gitlab Merge Request Builder Plugin
– Git Chooser Alternative Plugin
– Git Parameter Plugin
– Gitlab Hook Plugin
– GitHub pull request builder plugin
– GitHub Plugin
– Github OAuth Plugin
– Git Parameter Plugin
– Git Client Plugin
– Git Server Plugin
– GitHub API Plugin
- 6. The Problem: Broken Builds
• Unit tests are quick and cheap
• Integration tests are more expensive
• Integration usually breaks the build
• Developers don’t always run integration tests
before pushing to git
©2014 CloudBees, Inc. All Rights Reserved 6
- 7. • CloudBees Git Validated Merge Plugin
– Jenkins acts as a git remote
– Offloads more complex tests from developers
– Helps prevent breaking the build!
©2014 CloudBees, Inc. All Rights Reserved 7
The Fix!
- 9. CloudBees Jenkins Enterprise
http://www.cloudbees.com/products/jenkins-enterprise
Just launched:
• GitHub Pull Request Builder
©2014 CloudBees, Inc. All Rights Reserved 9
- 10. Jenkins & Docker
Leverage Docker in your Build Process
©2014 CloudBees, Inc. All Rights Reserved 10
- 12. How can I use Docker with Jenkins?
1. Use Docker to manage
your Jenkins resources
2. Use Jenkins to build
Docker images
©2014 CloudBees, Inc. All Rights Reserved 12
- 13. Name Description Category
Docker Plugin This plugin allows slaves to be
dynamically provisioned using Docker.
1: Manage Jenkins
©2014 CloudBees, Inc. All Rights Reserved 13
Docker Build Step
Plugin
This plugin allows to add various docker
commands into you job as a build step
2: Build Docker images
DockerHub Plugin Integrate Jenkins with DockerHub to
manage validation process for Docker
images.
2: Build Docker images
Docker Build Publish
Plugin
Build projects with a Dockerfile, and
publish the resultant tagged image
(repo) to the docker registry.
2: Build Docker images
Plugins
- 15. Jenkins: the Hub of Continuous Delivery
©2014 CloudBees, Inc. All Rights Reserved 15
Binaries
Source Code
Quality Analysis Functional Test
Performance / Load Test
Production
- 16. CloudBees on Docker
https://registry.hub.docker.com/repos/cloudbee
s/
http://developer.cloudbees.com/
©2014 CloudBees, Inc. All Rights Reserved 16
Hinweis der Redaktion
- automatically setup web hook
support github private repositories (ours are setup to use it)
use github commit status API