Ravello Systems has relied heavily on Jenkins since the early days. During the company's first four years, their Jenkins setup changed and evolved to the point that it was out of control. Ravello decided to take all the experience from those years and create a new and improved Jenkins setup. This session will share the lessons that were learned the hard way - and explain how the CI process was optimized. The process of re-doing the CI mechanism for a large, always developing group will be discussed, as well as mechanisms for revision control in Jenkins, job infrastructure and architecture guidelines for maximal flexibility and various other considerations. The overall continuous integration and testing strategies - which are completely cloud-based and cover all our varied components (from a hypervisor through networking and storage layers, distributed backend systems and all the way to an HTML5-based UI and a cross platform client side application) - will be described.
This presentation will cover an actual use case of mobile automation to proactively drive mobile website and application testing activities. Topics covered include:
- Using one script to test mobile and desktop websites
- Ensuring smoke test execution as part of the continuous integration (CI) process
- Providing timely reporting to make go/no-go decisions
- Use the Perfecto Mobile plugin with Eclipse and Java
- Leverage Perfecto Mobile cloud for mobile execution
- Use Selenium WebDriver
- Use TestNG and ReportNG
- Integrate with Jenkins
- Execution time reduced by 80%
- Coverage increased by 100% over manual testing
- Jenkins triggers automation of scripts across desktop browsers, including Firefox, IE, Safari and Chrome
- Jenkins schedules regression execution.
Big data is now everywhere, from mobile media analytics, banking, industry, avionics and even in medicine to monitor expansion of epidemics. In this session, Luca will show how continuous integration and continuous delivery is applied to a big data scenario that poses new challenges to the existing Jenkins framework. He will present the implementation of an agile build and deployment process used in big data software development projects for media and financial organizations in London. The talk will start with a presentation of the workflow and then will explain how existing Jenkins plugins were leveraged, as well as how integration with Docker, Mesos and the Hadoop ecosystem was achieved.
Why is it that more teams talk about extending build automation to include functional and non-functional testing than actually can do it? Is the challenge in implementing automated tests that don’t require babysitting? Perhaps it is reliably executing parallel execution on real devices? Or is the real point of failure a lab that triggers a 40% false negative rate? Are there other obstacles?
This session will explore these issues and offer attendees lessons learned from multiple successful projects that are driving fast feedback through implementing a robust CI practice using Jenkins.
The speakers will highlight:
- Two preconditions for success:
a. A test ready lab offering the ability to mic end user environments
b. Automation that executes continuously and in parallel across multiple targets
- Requirements for strong test planning:
a. Designing a progressive test plan account for daily, nightly and weekly feedback windows, along with determining appropriate device coverage
b. Inserting non-functional tests for early identification of performance challenges
Presentation examples will feature Eclipse, Selenium Remote WebDriver, TestNG and Perfecto’s cloud-based lab.
The Workflow system for Jenkins lets you integrate complex, long-running processes with Jenkins as a management interface, going beyond basic continuous integration. Since the 1.0 release in November 2014, there have been many new features (and bug fixes!), and people have started using it in earnest. Whether you have already begun setting up your own flows, or are just interested in hearing what is possible, come and learn where we are at today. We will cover the basics of Workflow, the more important changes made in the past few months, and ideas for the future. Current users, come prepared with questions and suggestions!
As Jenkins' focus continues to expand from Continuous Integration to supporting Continuous Delivery, more and more Jenkins users are working on building out their Continuous Delivery Machine. This means identifying and choosing solutions for the many "adjacent problem spaces" to Continuous Integration: artifact management, feature tracking, environment provisioning, deployment automation, test management, pipeline orchestration, production feedback and many more.
For each of these areas, you have three main alternatives: use Jenkins, find a different tool and integrate it with Jenkins, or build something yourself. Here, we'll discuss the options for each category, with a special focus on app deployment, test result management and pipeline orchestration. We'll also present a couple of real-world Continuous Delivery Machine architectures, and analyze some of the motivations for each organization's choices.
The speaker has delivered four enterprise-ready plugins to automotive, banking and telecommunications/OEM industries. In this session, you will learn how to use the Credentials plugin for your authentication needs, global configuration for shared resources, support REST services for job automation and Workflow in your pipeline. We’ll demonstrate why this is all important in the enterprise.
This presentation will highlight an integrated development process built with Jenkins and Cloud Foundry. We will show a continuous delivery lifecycle from source code control (Git) to Jenkins build (Maven and Gradle) to live deployment on Cloud Foundry. We will use Jenkins to do a blue/green deploy of an application by deploying two environments, then switch request routing between the two without downtime. The two versions are then load balanced, allowing for testing of the new version and easy replacement or fall back to the existing version. We will run a hands-on demo and show the usability and flexibility of this integrated build pipeline.
Jenkins is the clear #1 continuous integration (CI) and continuous delivery (CD) tool because it is very effective when it comes to automated testing and deployment of software in complex and diverse environments. Jenkins has achieved this position in spite of the fact that it doesn’t look as “trendy” as some of the other tools available in the CI/CD space.
In this talk, Gus and Tom will detail ongoing efforts to evolve the Jenkins UI. The goal of the initiative is to give Jenkins a more modern look and feel. They’ll talk about the challenges inherent in this effort, as well as some new Jenkins UI building tools and patterns being experimented with at CloudBees.
People interested in the Jenkins UI should attend this talk. Please bring your bag of ideas and get involved with this effort.
This talk will focus on how to set up a continuous delivery pipeline in Jenkins for an application with a microservices architecture. I'll talk briefly about what it means to deliver multiple cooperating but independent services and some of the challenges this presents. I'll demonstrate using the Delivery Pipeline plugin to organize and visualize the pipeline. I'll also discuss how other plugins, such as the Cloudbees Templates plugin, can be useful in this environment.
At Perforce, we don't just preach Continuous Delivery, we practice it. Join Laurette Cisneros, Engineering Tools Manager at Perforce, as she shares lessons learned at the start of our journey to automation, including:
- How we convinced the skeptics and determined the right route
- The hurdles we encountered along the way
- Tips for getting started in your organization
We will talk about the challenges of implementing Continuous Delivery with codebases of different ages and sizes for both SaaS and on-premise products.
This talk will dig deep into continuous integration (CI) and the key processes that make up CI. We will discuss the relationships and process flows between change management, configuration management and release/build management, and how the CI process when coupled with a solid performance engineering discipline across the product lifecycle, can result in a better user experience for your web and mobile applications. We will speak about the entire lifecycle, the "conveyor belt" of the application lifecycle, with concentration on the "Big 3" processes that support the overall CI strategy. We will include a real-world example of how SOASTA uses Jenkins and other open source solutions for its "conveyor belt" and how this process enabled SOASTA to deliver over 100 product releases in 2014 and still maintain customer SLA's for its SaaS product offerings.
vCloud Air is the ultimate destination for development and testing in the cloud. Many organizations are implementing DevOps initiatives to increase development throughout and shorten product delivery timeframes. The combination of vSphere and vCloud Air provides you with the ability to deploy applications on premise, in the cloud or in hybrid environments with no changes, thanks to the underlying vSphere platform. In this session, we will present how the DevOps team can use Jenkins, VMware Code Stream and other existing tools they love to implement hybrid continuous integration and continuous delivery pipeline architectures.
This talk provides a closer look into processes from collaboratively writing code, having it tested automatically and deployed it in a safe and efficient way to multiple server with a push of a button. Learn how to setup solid workflows covering both automated steps for builds, unit and selenium testing as well as manually triggered steps for approval and automated deployments to AWS. Find out how to structure your web project and learn about the underlying deployment patterns.
This session will explore design patterns and best practices for leveraging AWS and CloudBees Jenkins to facilitate DevOps workflows in managing applications and infrastructure.
Design patterns and best practices to include:
- How the Jenkins integration with various AWS services can help facilitate different deployment models.
- Utilizing AWS services such as EC2, Elastic Beanstalk, Opsworks, Cloudformation, and EC2 Container Services along with Jenkins to strengthen the application management narrative.
- Managing application life cycles with a mixture of AWS Code Commit, Code Pipeline, Code Deploy and CloudBees Jenkins.
Containers & micro-services is the next Big Revolution in the IT Ecosystem & is already changing the way we think about & deploy our product ecosystem.
Come join us to understand how Equinix is running their Continuous Delivery Platform to solve some of the challenges of Micro-services & Container Deployments using Jenkins to empower developers with a self-serviceable capabilities.
Moving to DevOps in large complex enterprise-IT environments is an incremental process. One that requires culture, process and technology. The "technology" part includes Jenkins, Nexus, Puppet, Docker and more. In this session, you’ll hear about first-hand experiences building successful enterprise-scale DevOps practices and specifically looking at the role Jenkins played with other key technologies in the continuous tool chain. Learn about additional practices to support the goal of driving down cycle times. Finally, no DevOps practice is complete without accounting for compliance and security requirements. Jenkins plays a key role there, too.
Continuous delivery (CD) is a competitive differentiator and development and operations teams are under pressure to deliver software faster. The DevOps world is going through a storm of changes - Docker being the key one. This session by Kohsuke and Harpreet will introduce a set of plugins that address various aspects of CD with Docker.
Jenkins and Cloud is a marriage made in heaven. The ephemeral nature of the common Jenkins job makes it ideal for the elastic environment that Clouds like AWS or Google compute offer. In this talk we will discuss the design challenges of writing a plugin optimized for cloud environments: Including the ability to distribute jobs across multiple clouds, auto scaling of Slaves and automating the process of deploying applications from a Jenkins job while keeping track of what was deployed.
Correct this if it's wrong, but as a software developer you have two main dreams - to enjoy your coding and to not have to care about anything else but code. Setting up an environment and maintaining a CI/CD cycle for your software can be complicated and painful. The good news is, it doesn't have to be! In this talk, Yoav will demo some of the most popular alternatives for a cloud-based development life cycle: from CI builds with DEV@cloud, through artifact deployment to a binary repository and finally, rolling out your release on a truly modern distribution platform.
The Literate plugin allows a project to define its build process directly in a description file in the project SCM. Project owners have control over their build process and can refactor it as they refactor their code, while reusing all of the Jenkins goodness.
iOS applications have unique constraints that make continuous integration and release automation difficult. We’ll be going through techniques used at Square to scale and measure the effectiveness of our iOS test cluster which is used by dozens of engineers to build a handful of applications. Testing is incredibly important to Square because our mobile applications process payments. We’ve built speedy and scalable OSX infrastructure for builds; written a configuration language for describing iOS builds that separates release code from application code; tamed the iOS simulator; and reduced the overall flakiness of our iOS tests to the 0.1% level.
Automated testing throughout the continuous integration (CI) process allows you to detect errors instantly, work more efficiently and, ultimately, deliver software faster. But implementing and scaling automated testing is often complicated, time-consuming, and downright frustrating!
In this talk, BlazeMeter CEO & Founder Alon Girmonsky will explore ways to take the pain away - with the help of a new open source test automation framework. This framework makes it easy to scale automated testing while using Jenkins and JMeter. Join this session and learn how to:
- Take away the pain of integrating JMeter and Jenkins
- Dynamically create JMeter tests from a configuration file and run from Jenkins on every commit
- Run hundreds of tests in parallel and automatically feed results back into Jenkins
- Simultaneously run any number of JMeter tests from a single command line
- Make JMeter scripts version control friendly and human readable
Docker is revolutionizing the way people think about applications and deployments. It provides a simple way to run and distribute Linux containers for a variety of use cases, from lightweight virtual machines to complex distributed micro-services architectures. Kubernetes is an open source project to manage a cluster of Linux containers as a single system, managing and running Docker containers across multiple Docker hosts, offering co-location of containers, service discovery and replication control. It was started by Google and now it is supported by Microsoft, RedHat, IBM and Docker Inc amongst others. Jenkins Continuous Integration environment can be dynamically scaled by using the Kubernetes and Docker plugins, using containers to run slaves and jobs, and also isolate job execution.
Yahoo! Mail leverages Jenkins to achieve Continuous Delivery. We give a brief tour of Yahoo! Mail's pipeline architecture, which starts before code is even merged. We share our experience of how this pipeline evolved to where it is today.
Michael developed a technically interesting database backend, artifact repository and reporting interface for Jenkins. He was originally told that it would be impossible to create what he was proposing, and so he did it anyway :). The project that he proposed was intended to solve some DevOps scaling issues the FireEye team was experiencing. The initial purpose of the project was to extract Jenkins project/job data and store it in a relational database. The desire was to do this continuously so that the data was available in near real time. This would eventually be accomplished by several tables in a SQL database, a lot of digging into Jenkins, a few scripts and a 3,000 line SQL statement! There was certainly some secret sauce here and he'll get into that, too. The end result was a fully functional database backend that held all sorts of useful information from Michael's build pipeline. Ultimately, the data was turned into a web application with a RESTful API that facilitated automated deployment and pipeline metrics/reporting.
My team has been working with Jenkins and we're making some performance optimizations that should help Jenkins scale better - specially when there are a high number of slaves & builds/min. We're pretty excited about some of the changes and would like to present them at the next Jenkins conference. We'll have metrics of before & after, maybe some demo videos & also talk about some ways people can configure their slaves to make scaling easier.
Jenkins and IBM UrbanCode Deploy can be used together to automate the end-to-end continuous delivery process. See how Jenkins passes builds to IBM UrbanCode Deploy to automate the deployment of applications, middleware configurations and database changes into development, test and production environments, thus delivering higher quality software in a repeatable fashion.
Thinking about making a CD pipeline, or redesigning your current pipeline? These principles have guided Yahoo! Mail in developing a sophisticated CD solution. We will discuss the technical and cultural aspects of continuous delivery for large-scale products.