Jenkins User Conference 2013 - Palo Alto Held October 23, 2013 http://www.cloudbees.com/jenkins/juc/juc-2013.cb
In this session, we will present a continuous integration approach, using Jenkins, to validate a simulated model against a real robot. The use case comprises a 24-hour run, where the real robot and the simulation are both connected to a Jenkins instance. We will present results, best practices, plugins used and ideas to further improve the utilization of Jenkins in robotics
Designing the test architecture for full automation in modern AJAX application environments requires expertise in web, SOAP and REST protocols implemented in Java, Ruby, Python and PHP. Learn how Frank designs test architectures to integrate Selenium tests, SOAP UI tests and automatically run unit tests from Jenkins in the CloudBees environment. Frank will focus on a new architectural pattern and designs you can use in your own application environments.
Jenkins experts from CloudBees have been busy working on new additions to the Jenkins platform. Kohsuke and Harpreet are excited to share with you these exciting new features:
Literate builds: A new open-source plugin, that dramatically simplifies CI job setups by relying on a human-readable readme file to provide build instruction. This feature builds on top of multi-branch support.
Multi-branch plugin: This plugin automatically creates a job for every branch in your repository from a single configuration. We'll show you how these are layered and what other things to build on top of them. This plugin led to improvements we've done across SCM plugins, namely the Credentials plugin and Git plugin 2.0. These enhancements allow centralized credentials management.
Various performance improvements and stability related to lazy loading in regressions.
Mobile app development in DEV@cloud, the CloudBees-hosted Jenkins as a service.
Ever wished you had a local mirror when RubyGems was down? That you could deploy your company gems with ease? Could have a continuous integration Jenkins pipeline for your gems? Today all these are easily achievable - all you need is an in-house binary gems repository. In this talk we'll show how a binary repository complements your Jenkins CI environment via fast, reliable, scriptable and plugable ‘RubyGems’ of your own. And this is only the beginning! Features like custom metadata and a rich API will transform the way you build your software. And yes, one does not simply do this talk without a demo!
Yahoo! advertising and data platforms are supported by a massively distributed system that processes over 100 billion events each day. The system consists of hundreds of heterogeneous software components. Over the past several years we have implemented continuous delivery to increase velocity and improve quality. In the process we had to address architectural challenges, legacy, development practices and re-invent our own mindset. We will share the details of our implementation, best practices and lessons learned.
CI is intended to be used with automated tests created by test-driven development (TDD). This works if everyone pushes to the master. However, we consider heavy use of branches normal: we love feature-branches, bug-branches, throwaway branches, etc. This complicates the “continuousness” of the integration. This session is about complexity of CI in the presence of feature branches and how to handle it. We define functionality to make CI and feature branches play together well and show how to implement it in Jenkins using open source plugins.
The Jenkins Job DSL plugin allows programmers to express job configurations as code. Learn about the benefits, from the obvious (store your configurations in the SCM of your choice) to the not-so-obvious (focus on intent, instead of succumbing to the distraction of multiple, complex job configuration options). We will share our experience adopting the plugin over the past year to create and maintain more complex job pipelines at Netflix.
SmartPhones have revolutionised the way we think and write software: how can you take an additional step and actually have your SmartPhone drive development? With Jenkins, you can drive and integrate every step of your development with your SmartPhone, end-to-end: CI and delivery - Application install - Test execution - Issue tracking. See how to implement mobile plugins for Jenkins on mobile.
The ability to quickly and reliably deliver new features to customers with high quality has become a standard business requirement. Development, IT and DevOps organizations are looking to rapidly implement effective continuous delivery to meet this need. This session will cover five important prerequisites for enterprise continuous delivery implementations. You’ll leave with a number of practical action items, as well as ideas to help you build your own CD Maturity Model to track and measure success.
Our OpenStack infrastructure team uses Jenkins extensively. Our Jenkins servers, at peak load, run 5,000+ jobs per day. At that load, we are running up to the limit that a single Jenkins master can support. We wanted to balance the load across multiple masters, however the Jenkins core does not support multiple masters. The Gearman plugin provides some load balancing and redundancy in any Jenkins deployment.
Yahoo! Taiwan Shopping is a hybrid website built on a Linux/Windows platform and also a big data BI platform. CI and Jenkins are the core part of this development. This talk provides a case study about how Jenkins puts a Linux/Windows/Hadoop software development platform together and makes continuous delivery happen.
Sony Mobile is running centralized Jenkins setups with thousands of jobs, several hundreds of connected physical slaves and hundreds of users tied to one Jenkins master, yet with an open configuration policy. Several of these types of masters are located worldwide at our development sites. You’ll see how we manage to maintain and operate these huge clusters, the bumps in the road that we hit and future challenges in our CI set-up.
GitHub Pull Request Builder has enabled a new workflow for our company. Today, we have almost automatic CI on a dev branch. We initiate pull request deploys. I'll cover the problems we ran into in setting it up, as well as the things I did to extend it, such as: delete pull request deploys and integrate comments in the pull request build number.
This follow up to the previous “Beyond the Small Team” session will dive further into getting the most out of your environment, including the world of CloudBees templates and how we have applied them in real world situations. This talk will focus on how we achieve:
• Performance (limiting) aspects of the Jenkins master
• Practical examples of extending Jenkins functionality without writing plugins
• Cover how to get the most out of your limited hardware for AAT
Learn how to use the power of system Groovy scripts to keep your Jenkins installation running smoothly. Monitor master and slaves, clean up unused jobs, ensure that job configurations conform to standards and more. All the scripts used in this talk will be made available on GitHub.
This work describes how FEST, vnc2flv, custom Groovy scripts and Jenkins can be combined to create a CI infrastructure for automated execution and recording of UI tests for a Griffon application. Techniques for overcoming issues related to maintaining VNC sessions on headless slaves, executing Griffon FEST tests reliably with a custom Groovy script, recording and slicing UI test videos for enhanced debugging, and tracking multi-job execution with custom results and a trend matrix will be presented.