Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf           Jenkins: State of Union                Kohs...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf   Thank You To Our Sponsors
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf1 new release comes out                 Gets downloade...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconfThat fills up 513 DVDs
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf3.5 Brand-new Plugins Released
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf25 New Versions of Plugins Released                Get...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf80 Tickets Filed
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf50 Tickets Solved
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf145 Commits Are Made
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf400 Jenkins Installations Pops Up
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf1200 New Slaves Are Added
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf19,000 New Jobs Are Added
Jenkins User Conference      San Francisco, Sept 30 2012       #jenkinsconf# of plugins                                   ...
Jenkins User Conference    San Francisco, Sept 30 2012         #jenkinsconfTicket Activities                              ...
Jenkins User Conference       San Francisco, Sept 30 2012        #jenkinsconf Tracked Installations (conservative)45000   ...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf
Jenkins User Conference   San Francisco, Sept 30 2012               #jenkinsconf                                          ...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf
Jenkins User Conference      San Francisco, Sept 30 2012   #jenkinsconf Not Every Frontend Change Is Visible• Modernizatio...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf    Multi-configuration Project Improvement•   Concurr...
Jenkins User Conference        San Francisco, Sept 30 2012   #jenkinsconf More Backend Stuff• REST API improvements  –   A...
Jenkins User Conference     San Francisco, Sept 30 2012   #jenkinsconf Fresh Off The Oven• Does your Jenkins take 5 minute...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf    And Long List of Improvements…• Subversion 1.7• Lo...
Jenkins User Conference    San Francisco, Sept 30 2012   #jenkinsconf    Improvements for Plugin Developers•   Cut off JDK...
Jenkins User Conference       San Francisco, Sept 30 2012   #jenkinsconf Survey• http://jenkins-ci.org/survey• Tell us wha...
Jenkins User Conference     San Francisco, Sept 30 2012   #jenkinsconf Java Requirement• Proposal: start requiring Java6  ...
Jenkins User Conference   San Francisco, Sept 30 2012               #jenkinsconf                                          ...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf BuildHive.cloudbees.com• Free for anyone• Love to get...
Jenkins User Conference                   San Francisco, Sept 30 2012   #jenkinsconf Jenkins Enterprise by CloudBees http:...
Jenkins User Conference                       San Francisco, Sept 30 2012   #jenkinsconfhttp://www.flickr.com/photos/acmac...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf JUCs Around the World• Last year, we went to 5 places
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf … and more meet-ups• FOSDEM, SCALE 10x• Copenhagen us...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf … and more meet-ups / hackathon• Austin, Munich, 3 mo...
Jenkins User Conference    San Francisco, Sept 30 2012   #jenkinsconf Upcoming Events• FOSDEM and JUC 2013 in SF for next ...
Jenkins User Conference                    San Francisco, Sept 30 2012   #jenkinsconfJenkins CIA Programhttps://wiki.jenki...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf Security Advisories• When vulnerabilities are discove...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf On Timely Resolution of Vulnerabilities• File issues ...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconfWiki Static Cache                          fallback   ...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf Usage Statistics• Installation count growth in plugin...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf Stats.jenkins-ci.org• Understand how Jenkins & plugin...
Jenkins User Conference                        San Francisco, Sept 30 2012   #jenkinsconf Blackbox e2e Testing https://git...
Jenkins User Conference         San Francisco, Sept 30 2012   #jenkinsconf Better Source Code Access• Mother of all reposi...
Jenkins User Conference             San Francisco, Sept 30 2012   #jenkinsconf    Other Infra Improvements    http://nagio...
Jenkins User Conference                      San Francisco, Sept 30 2012   #jenkinsconf Office Hours https://wiki.jenkins-...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf
Jenkins User Conference   San Francisco, Sept 30 2012      #jenkinsconfFuture Direction: Which Way?                       ...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf Make Complex Things Easier• Running big, complex depl...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf Make Complex Things Easier• Better Workflow/pipeline ...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf Make Simple Things Simpler• More spying, less asking ...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf Help You Find Plugins You Need• Revisit bundled plugi...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf Improving Plugin Development Experience• More extensi...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf Conclusions• A lot has been done, not just in code  –...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf
Jenkins User Conference                   San Francisco, Sept 30 2012   #jenkinsconf Fighting Spams (AKA we are popular) h...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf More Number Crunching Needed• Correlation• Recommenda...
Jenkins User Conference   San Francisco, Sept 30 2012   #jenkinsconf And Longer Term…• If we have 100 machines per develop...
Upcoming SlideShare
Loading in...5
×

Jenkins User Conference 2012 San Francisco

3,382

Published on

My JUC 2012 keynote talk.

Published in: Technology
0 Comments
9 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,382
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
82
Comments
0
Likes
9
Embeds 0
No embeds

No notes for slide
  • I was looking at the adoption numbers, and I thought it’d be fun to phrase it in terms of …
  • That’s almost 1 download every second
  • 19000/wk / 40 hours/wk = 500/hr = 8/min
  • 大きいところならどこでも全て入っているといっても過言ではない。
  • As you can see, a lot of stuff comes out every week, so let me show you what we’ve been up to.
  • Installing plugins without restartSearch in update centerUIBreadcrumbApply button“From this plugin”(?)Intra config page linkReorderable publishersAnimationContext menu
  • The ui-changes branchBuildHive
  • Jenkins User Conference 2012 San Francisco

    1. 1. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Jenkins: State of Union Kohsuke Kawaguchi Jenkins Creator @kohsukekawa #jenkinsconf
    2. 2. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Thank You To Our Sponsors
    3. 3. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf
    4. 4. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf1 new release comes out Gets downloaded 48,000 times
    5. 5. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconfThat fills up 513 DVDs
    6. 6. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf3.5 Brand-new Plugins Released
    7. 7. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf25 New Versions of Plugins Released Gets downloaded 500,000 times
    8. 8. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf80 Tickets Filed
    9. 9. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf50 Tickets Solved
    10. 10. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf145 Commits Are Made
    11. 11. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf400 Jenkins Installations Pops Up
    12. 12. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf1200 New Slaves Are Added
    13. 13. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf19,000 New Jobs Are Added
    14. 14. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf# of plugins 606600 # of unique plugins500400300200100 new plugins/week releases/week 0 Jan-07 Jan-08 Jan-09 Jan-10 Jan-11 Jan-12
    15. 15. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconfTicket Activities 1520016000140001200010000 Total tickets 8000 6000 4000 Resolved tickets 2000 0 Jan-07 Jan-08 Jan-09 Jan-10 Jan-11 Jan-12
    16. 16. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Tracked Installations (conservative)45000 470004000035000300002500020000 # of masters15000100005000 0 Jan-07 Jan-08 Jan-09 Jan-10 Jan-11 Jan-12
    17. 17. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf
    18. 18. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf http://www.flickr.com/photos/randar/3879926596/
    19. 19. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf
    20. 20. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Not Every Frontend Change Is Visible• Modernization – Dependency bump-ups: Prototype 1.7, YUI 3 – Native JSON/CSS selectors where available• Page loading performance – Liberal use of gzip compression – Client-side caching for assets in plugins• Reuse common dependencies as plugins: jQuery• Modularization of core JavaScript code• No ajax updates when pages aren’t visible
    21. 21. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Multi-configuration Project Improvement• Concurrent parent builds (between #N, #N+1, …)• More flexible workspace sharing• Sparse and see-through child builds• Axis whose values change dynamically• SCM checkout behavior is now extensible• Execution order / filtering is now extensible
    22. 22. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf More Backend Stuff• REST API improvements – API token – Update center / plugin manager / executors / slaves – Efficient data filtering by the “tree” parameter – Nestor is a good client example• CLI improvements – Transport encryption – User authentication with SSH keys – ssh(1) as your client ssh -p 2222 jenkins.acme.com build foo -s -v
    23. 23. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Fresh Off The Oven• Does your Jenkins take 5 minutes to start? – Lazy-loading to the rescue – Unloading, too – More changes to come• More self-descriptive XML <scm class=“hudson.plugins.git.GitSCM” plugin=“git@1.1.15”> <branches> …
    24. 24. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf And Long List of Improvements…• Subversion 1.7• Localization to 40 languages• Enforce naming convention to jobs• Core spins off more plugins• Arbitrary build step in Maven project type• Hash support in Cron• Slaves automatically comes back when disk is available• Symlink support on Windows Vista/2003+
    25. 25. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Improvements for Plugin Developers• Cut off JDK5 compatibility to support JDK7• Dependency injection via Guice• JUnit4 test harness• Groovy for view templates – Debuggable – Your IDE auto-completes expressions• More extension points (111 total)• Gradle, JRebel support
    26. 26. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Survey• http://jenkins-ci.org/survey• Tell us what you care – If you can, please give us testimonials – We’ll be discussing this later today• Prizes – 2 Dr Dre headphones – Kindle – 2 $100 Visa Gift Cards – 1 Lightsaber, Sphero – T-shirts, giftbags, conference passes, JRebel license,…
    27. 27. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Java Requirement• Proposal: start requiring Java6 – For running masters and slaves – For running Maven project type• Data points – About 1.5% people run their Jenkins on Java5 – Java5 reached end-of-life in Oct 2009 – Widespread consensus among developers• If you have a problem, tell us now!
    28. 28. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf http://www.flickr.com/photos/sushicam/7211787664/
    29. 29. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf
    30. 30. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf BuildHive.cloudbees.com• Free for anyone• Love to get your feedback
    31. 31. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Jenkins Enterprise by CloudBees http://www.cloudbees.com/jenkins-enterprise-by-cloudbees-overview.cb• Enterprise plugins + Support – Active/standby high-availability – Validated merge (aka “Unbreakable builds”) – Templates, RBAC, custom update center, …• CloudBees Free Enterprise Plugins – Folder – Backup
    32. 32. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconfhttp://www.flickr.com/photos/acmace/4410650624/
    33. 33. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf JUCs Around the World• Last year, we went to 5 places
    34. 34. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf … and more meet-ups• FOSDEM, SCALE 10x• Copenhagen user event
    35. 35. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf … and more meet-ups / hackathon• Austin, Munich, 3 more places in Japan
    36. 36. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Upcoming Events• FOSDEM and JUC 2013 in SF for next 12 months• Shift to cheaper & more open events – Half-day, to avoid catering – Cheaper venue - university, large companies – Free/minimal admission• We want to work with local folks – “Start your own Jenkins meetup in 10 easy steps” http://bit.ly/QtZMdK – Asia, where are you?
    37. 37. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconfJenkins CIA Programhttps://wiki.jenkins-ci.org/display/JENKINS/Jenkins+CIA+Program • Speaking about Jenkins in a meet-up? – We’ll send you a T-shirt and stickers • We are building a world map with push pins • Join the CIA to spread words!
    38. 38. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Security Advisories• When vulnerabilities are discovered, we prepare a fix and issue a security advisory• Please subscribe via e-mail or RSS – http://jenkins-ci.org/advisories• Especially if you run Jenkins on the internet
    39. 39. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf On Timely Resolution of Vulnerabilities• File issues to the SECURITY project – http://issues.jenkins-ci.org/browse/SECURITY/• jenkinsci-cert@googlegroups.com – Closed-door discussion group for devs
    40. 40. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconfWiki Static Cache fallback Nginx Confluence HTML in cache? generate upon changes & periodically
    41. 41. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Usage Statistics• Installation count growth in plugin page• Also available in JSON
    42. 42. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Stats.jenkins-ci.org• Understand how Jenkins & plugins are used – Platform – # of slaves – Types of jobs
    43. 43. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Blackbox e2e Testing https://github.com/jenkinsci/selenium-tests• Motivations – Test the final deliverables – Test in the same setup you use• Results thus far – Ruby + Capybara + Cucumber – Test Jenkins via Selenium – Abstraction to start/stop Jenkins – Plugin to assist assertions & selections
    44. 44. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Better Source Code Access• Mother of all repositories – Search usage of code across all the plugins – http://git.jenkins-ci.org/all.git• List of all the repositories – https://wiki.jenkins-ci.org/display/JENKINS/GitHub+Repositories – Along with groupId:artifactId• List of all the extension points – https://wiki.jenkins-ci.org/display/JENKINS/Extension+points – Along with their usage
    45. 45. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Other Infra Improvements http://nagios.jenkins-ci.org/• Server monitoring + Pager Duty• 9 mirrors around the world• Puppet-managed DNS servers• More offloading – repo.jenkins-ci.org, thanks to JFrog – jenkins.ci.cloudbees.com, thanks to CloudBees
    46. 46. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Office Hours https://wiki.jenkins-ci.org/display/JENKINS/Office+Hours• Bi-weekly WebEx conference call – Wednesday, complements project meetings• Originally intended as virtual meet-up – Mini presentation, Q&A, show&tell• Currently more like “Ask Kohsuke” session for plugin/core developers
    47. 47. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf
    48. 48. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconfFuture Direction: Which Way? http://www.flickr.com/photos/quinnanya/3500158343/
    49. 49. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Make Complex Things Easier• Running big, complex deployment should be easier – Master-to-master communication channel – Follow-up work for lazy loading – Per-job database storage, open for plugins• More automatic slave managements
    50. 50. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Make Complex Things Easier• Better Workflow/pipeline support – Already a lot going on in plugins! – Slice up build histories – Shared context between related builds• Modeling external systems – Databases, test environments, … – Remembering who’s using what – Remember what was done to them
    51. 51. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Make Simple Things Simpler• More spying, less asking – E.g., “where are unit test reports?”• Simpler project creation ala BuildHive – Only needs to be 70% accurate – Sharable archetypes, repository sniffing• Encourage sharing of recipes
    52. 52. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Help You Find Plugins You Need• Revisit bundled plugins – Why Git plugin isn’t in there?• Plugin packs (aka iTunes playlist) – Follow the lead of the Jenkins PHP website• Recommendation based on what you have• Reviews, feedbacks
    53. 53. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Improving Plugin Development Experience• More extension points• Better Plugin Development Environment – More Wiki articles/samples? – Training course?• Better development mode – Skeleton generation – Checking common pitfalls in the dev mode• Tell us what you need!
    54. 54. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Conclusions• A lot has been done, not just in code – And a lot more to come!• Please help the project• Please enjoy the day!
    55. 55. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf
    56. 56. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf Fighting Spams (AKA we are popular) https://github.com/jenkinsci/backend-confluence-spam-remover• Wiki spams have been a problem – Manual attack? – A scanner was developed to flag & delete them• JIRA spam has been spotted• E-mail spams have been a problem• If you find them, please report them• If you are willing to help policing them, let us know
    57. 57. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf More Number Crunching Needed• Correlation• Recommendation• We need volunteers – Should be fun!
    58. 58. Jenkins User Conference San Francisco, Sept 30 2012 #jenkinsconf And Longer Term…• If we have 100 machines per developer, what can Jenkins do?• Distributed parallel test execution• Job that spans multiple processes – Load test, system test, …• What visualizations do we need?
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×