Chief Technology Officer and Jenkins Creator
Kohsuke wrote the majority of the Jenkins core single-handedly. Kohsuke has more than 10 years of extensive software development experience, ranging from Java to C++, .NET to x64 assembly, as well as systems expertise on several platforms, including Windows, Linux and Solaris. This broad range of experience was a key enabler in the development of various advanced features of Jenkins. Kohsuke is now Chief Technology Officer at CloudBees and an active member of the Jenkins User Conference Governance Committee.
Do you know how to play the Blame Game when Production is broken? There are probably a few good reasons. Nevertheless, it's better to to work out what really went wrong -- fast! In this session, see how a new PHP application can be deployed flawlessly with Jenkins and Zend Server. And see how Dev & Ops are supported by the system if the application is broken and the nightmare happens.
We will take a look at how Jenkins and its plugins can integrate with various open source tools to assist throughout the process of creating a quality Android app. Topics will include automatically setting up the Android SDK and dependencies on Jenkins, building your app, finding potential code problems, running tests across multiple OS versions and device specs, app stress testing and deploying your app to your beta testers with minimal effort.
What plugins, tools and behaviors can help you get the most out of your Jenkins setup without all of the pain? We'll find out as we go over a set of Jenkins power tools, habits and best practices that will help with any Jenkins setup.
Over the years, Amadeus has invested in continuous integration using Jenkins. There are hundreds of software components written in C, C++, Python, Java, Ruby. With the announcement of Literate plugin, we jumped on it because we believe it empowers developers while retaining some level of control. Of course, the world isn't perfect, and there are several technical implications to this choice. We will share the details of our implementation, some hiccups we faced and our plans for the future.
Keeping multiple CI and CD pipelines in sync was a challenge. We have multiple frontends and backends which have their own codebase but each contains custom developments. We needed a way to easily deploy these multiple projects, so we use several plugins to get the best out of Jenkins pipelines. We would like to share our experience.
The ClearCase UCM plugin implements a 100% automated process for integrating feature streams on to the mainline. These desirable features are developed and refined over the years by a joint group of developers and users. Now we have distilled the lessons learned, and in collaboration with Amtel, have developed a generic plugin offering the same support for a UCM inspired branching strategy even in Distributed Verson Control Systems such as Mercurial and Git. We will present this "branchy approach" to pre-tested integration and why we have come to believe that this approach is preferable to some of the other alternatives frequently being used in other plugins. We will demonstrate the simple workflow strategy implemented at Atmel, which is based on just ten principles - and the new pre-tested integration plugin. The workflow offers an even simpler and Continuous Delivery compliant variant of the popular Git flow by @nive and at the same time is fully compliant with the branching strategy build into Atlassian's Stach.
Come to our show where we talk about what CloudBees sees as challenges of deploying, operating, and using large-scale Jenkins installations, and what we are doing to help those users succeed; we'll talk about Jenkins in the continuous delivery era and our efforts in this space, such as Chef/Puppet deployment tracking and workflow. We'll talk about our innovations in DEV@cloud, our hosted Jenkins, and how we bring its goodness to your Jenkins on premises. And last but not least, we'll demo how Jenkins Operations by CloudBees helps organizations scale Jenkins horizontally.
Plone is a Python-based enterprise content management system and among the top 2% of all open source projects worldwide. It is developed by a distributed team of 340 core developers using Jenkins as a center piece of the development and release process. This talk will present how the Plone community uses Jenkins to build, test and deliver Python-based software projects.
Software development environment in the embedded world. Why multi-stage continuous integration (CI)? Mandatory and optional software quality checks in the CI system. Automatic integration, flashing and testing in hardware. Challenges and recommendations.
What actually is a high-quality plugin for Jenkins? What are the aspects you have to consider? We will discuss what developers can do to ensure high quality in the plugins they develop. A plugin must work reliably alongside others, so many things must be considered. For example, plugins must make efficient use of resources, be able to smoothly handle updates and work in many varied environments. We will also talk about the issues people from Operations must consider, in order to maintain a stable and functional CI-environment.
The combination of Jenkins and Docker can be used as a PaaS solution for software development. The talk shows how a variable CI environment can be built with dynamic, Docker-based build nodes. Jenkins/Docker combinations are also suitable for the provisioning and operation of test environments for integration and acceptance tests. The talk consists of theoretical approaches and concrete practical solution ideas.
Continuous delivery helps you release more, more often, for less. This year it's high on the C-Level agenda and so it should be -- it's a game changer for IT. The journey for enterprises to adopt and embed continuous delivery practices into their organization is fraught with peril, but fortunately Jenkins paves the way. To help you ascend your stairway to continuous delivery heaven, here are ten tips for using Jenkins to line up your developers, operations teams, processes and tools. Make sure you don't trip! Come learn the most important considerations as you embark on your first step.
Most systems consist of anywhere from two or three to hundreds of subcomponents. Building a continuous delivery pipeline for one component is easy in Jenkins. I will describe a tried and tested reusable pattern to create integrated pipelines and manage the release of tested versions of composite components (across the whole software stack from infrastructure code, deployment tools, application code, configuration etc).
Jenkins is great. We know it well enough, though, to realize that it's also not a silver bullet. As we look to move from build and CI to DevOps and Continuous Delivery, there are many other tools in our toolkit that we will need to integrate in order to have effective, flexible automation that supports our teams and initiatives. We will classify and discuss various categories of CD and DevOps tools, highlighting which tools are best used for which tasks. We'll present an outline of an effective CD toolkit based on allowing best-of-breed tools to do what they do best without overstretching and breaking them. By swapping our hammer for a proper toolkit, not every problem in application delivery need look like a nail!
An introduction the Job DSL plugin. Learn how to treat job and view configuration as code, how to store the configuration in SCM and how to apply code reuse and refactoring. Learn how to extend the Job DSL for your favorite plugins.
This talk will take a quick look at some of the more advanced behaviors possible with Jenkins and Git, uncovering some of the config options you maybe never knew existed. We'll also introduce a tool we built to dynamically mirror and sync Git repos to our Jenkins cluster, slashing clone and fetch times for multiple jobs, making it much faster to get new jobs up and running, and helping to simplify troubleshooting builds.