How To Write A Continuous Delivery



Similar documents
Keys to Continuous Delivery Success. Mark Warren Product Director Perforce Software

Comparison: Perforce and Microsoft Team Foundation Server (TFS)

MATLAB as a Collaboration Platform Marta Wilczkowiak Senior Applications Engineer MathWorks

Azure Day Application Development

Know the Difference. Unified Functional Testing (UFT) and Lean Functional Testing (LeanFT) from HP

Load and Performance Load Testing. RadView Software October

Automation and Virtualization, the pillars of Continuous Testing

@CodenvyHQ

Enabling Continuous Delivery for Java Projects with Oracle Cloud Services (Oracle PaaS) Siva Rama Krishna Oracle India

Continuous Delivery for Alfresco Solutions. Satisfied customers and happy developers with!! Continuous Delivery!

Do DevOps on VMware vcloud Air Your Way, Without the Rework! Ashok Aletty, vcloud Air Solution Architect

HP ALM11 & MS VS/TFS2010

White Paper. The Importance of Automating the End to End Pipeline for Continuous Delivery

Releasing High Quality Applications More Quickly with vrealize Code Stream

A Sumo Logic White Paper. Harnessing Continuous Intelligence to Enable the Modern DevOps Team

Continuous Delivery for Force.com

Pipeline Orchestration for Test Automation using Extended Buildbot Architecture

HP Agile Manager What we do

HP Application Lifecycle Management

How To Achieve Continuous Delivery

Demand & Requirements Management Software Development QA & Test Management IT Operations & DevOps Change Management Agile, SAFe, Waterfall Support

Jenkins World Tour 2015 Santa Clara, CA, September 2-3

RELEASE HIGHLIGHTS INTRODUCING COLLABNET TEAMFORGE 8.2

Continuous Integration Processes and SCM To Support Test Automation

NXTware Remote. Advanced Development and Maintenance Environment for OpenVMS and other Strategic Platforms

Continuous Integration and Delivery at NSIDC

Software Development. Overview.

Centralized Secure Vault with Serena Dimensions CM

DevOps for the Mainframe

Fundamentals of Continuous Integration

Developing Plugins for Cloud Scale

Continuous???? Copyright 2015 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Demand & Requirements Management Software Development QA & Test Management IT Operations & DevOps Change Management Agile, SAFe, Waterfall Support

Assignment # 1 (Cloud Computing Security)

Microsoft s Team Foundation Server (TFS) Canute Magalhaes Richland County (IT) SYSTEMS ANALYST / PROJECT LEAD 1

Seven Steps for Choosing a Software Configuration Management System

Testing Tools using Visual Studio. Randy Pagels Sr. Developer Technology Specialist Microsoft Corporation

Copyright 2013 Splunk Inc. Introducing Splunk 6

SCM Dashboard Monitoring Code Velocity at the Product / Project / Branch level

Nexus Professional Whitepaper. Repository Management: Stages of Adoption

White Paper. Software Development Best Practices: Enterprise Code Portal

A Pythonic Approach to Continuous Delivery

Continuous Integration and Delivery. manage development build deploy / release

WHITE PAPER. Getting started with Continuous Integration in software development. - Amruta Kumbhar, Madhavi Shailaja & Ravi Shankar Anupindi

Relative cost of fixing bugs

ACCELERATE DEVOPS USING OPENSHIFT PAAS

Practicing Continuous Delivery using Hudson. Winston Prakash Oracle Corporation

Build Automation for Mobile. or How to Deliver Quality Apps Continuously. Angelo Rüggeberg

Building a Continuous Integration Pipeline with Docker

Augmented Search for Software Testing

IBM Rational DOORS Next Generation

A central continuous integration platform

Bridge Development and Operations for faster delivery of applications

Office 365 SharePoint Online

P4VS User Guide

Perforce Helix vs. ClearCase

Collaborative DevOps Learn the magic of Continuous Delivery. Saurabh Agarwal Product Engineering, DevOps Solutions

Serena Dimensions CM. Develop your enterprise applications collaboratively securely and efficiently SOLUTION BRIEF

CloudCenter Full Lifecycle Management. An application-defined approach to deploying and managing applications in any datacenter or cloud environment

DevOps to Enterprise Agile

Global Software Change Management for PVCS Version Manager

InfoView User s Guide. BusinessObjects Enterprise XI Release 2

SAP Crystal Reports & SAP HANA: Integration & Roadmap Kenneth Li SAP SESSION CODE: 0401

ANSYS EKM Overview. What is EKM?

Agile Software Factory: Bringing the reliability of a manufacturing line to software development

Servers. Servers. NAT Public Subnet: /20. Internet Gateway. VPC Gateway VPC: /16

SOFTWARE DEVELOPMENT BASICS SED

CLOUD DEVELOPMENT BEST PRACTICES & SUPPORT APPLICATIONS

Continuous Integration: Put it at the heart of your development

Continuous Delivery Benefits, Best Practices and Practical Advice

Copyright 2012, Oracle and/or its affiliates. All rights reserved.

Whitepaper. Continuous Integration Tools Applying Best Practices to the Toolchain

Enhancing The ALM Experience

CloudBees Continuous Integration and Test with Appvance Enterprise August 28, 2013 Frank Cohen, (408)

Microsoft Modern ALM. Gilad Levy Baruch Frei

Continuous Delivery on AWS. Version 1.0 DO NOT DISTRIBUTE

Web UI & Functional Test Automation for Continuous Agile Deliveries

Power BI Dashboarding. Alberto Ferrari SQLBI.

Continuous Integration using Docker & Jenkins

Quick start. A project with SpagoBI 3.x

Orchestrated. Release Management. Gain insight and control, eliminate ineffective handoffs, and automate application deployments

Gigya Pricing Proposal

High Speed Transfers Using the Aspera Node API! Aspera Live Webinars November 6, 2012!

Databricks. A Primer

Augmented Search for Web Applications. New frontier in big log data analysis and application intelligence

How to Optimize Automated Testing with Everyone's Favorite Butler

Top Five Ways Any Business Can Benefit from Box

Spirent CLEAR Mobility. End-to-End Mobile Network Infrastructure Test and Lab Automation Solutions

DevOps Best Practices for Mobile Apps. Sanjeev Sharma IBM Software Group

Why continuous delivery needs devops, and why devops needs infrastructure-as-code. Sriram 25-Oct-2012

Application Release Automation (ARA) Vs. Continuous Delivery

CoDe:U Git Flow - a Continuous Delivery Approach

How Bigtop Leveraged Docker for Build Automation and One-Click Hadoop Provisioning

Continuous Integration

Making big data simple with Databricks

The Purview Solution Integration With Splunk

DBA xpress Product Overview

Rally Integration with BMC Remedy through Kovair Omnibus Kovair Software, Inc.

ebay : How is it a hit

What is New: HP LoadRunner 12.02, HP Performance Center 12.20, StormRunner 1.30

Transcription:

1 Optimizing the Jenkins Pipeline a DSL for Greasing the CD machine

Who am I? Robert Cowham Senior Consultant Perforce Software, Inc 2

Agenda Continuous Delivery and Pipelines Perforce Helix Introduction Perforce Plugin Revisited Path to a workflow DSL 3

Why can t we release faster? Dev QA Pre Production Production Lack of communication between teams Each team uses a different data repository Environments can be substantially different Software deployed in different ways for each environment

Continuous Delivery Deliver working product to users as quickly as possible Every change (check-in) leads to a potential release Give business the option to release what, when, to whom A change in process, and culture Continuous Delivery PIPELINE Reqs Dev Test Integrate Deploy 5

Best practices for success Team Collaboration Flexible Workflow Complete Visibility COORDINATE TEAMS (design, dev, release, devops, etc.) PIPELINE COORDINATE ASSETS (code, scripts, artwork, binaries, etc.) Version Everything Universal Security Detailed History

Perforce Helix An introduction

Managing IP for market leaders Chips Games & Animation Cloud/SW Electronics Systems Automotive 9,500 users 500+ terabytes 5,000+ users coders & designers 10,000,000 Perforce xact/day 13,000 à 20,000 users Everything! 11,000+ users

Perforce Helix Consumers Flexible Workflows Version control, code reviews, simple file sharing Fast and Scalable From 10 to 10,000+ users Every File Efficiently handles large, often binary, data Everywhere Supports geographically distributed teams Contributors Secure Granular permissions, theft risk monitoring Open and Extensible APIs and integration hooks for customization

Perforce Helix enables Continuous Delivery Swarm Commons Insights End-to-end Collaboration Developer Collaboration Design Collaboration Development Analytics PIPELINE Reqs Dev Test Integrate Deploy Unified Asset Versioning Perforce Version Management DEV DEV HQ MFG 100s of Terabytes Globally Distributed DVCS Any File Type

Jenkins P4 Plugin

Jenkins P4 (Perforce) Plugin P4 Plugin (not Perforce Plugin) 100% Java (no dependency on P4 executable) Developed and supported by Perforce Extended capabilities 12

Capabilities Perforce authentication (credentials) Perforce workspace management Synchronization behavior Polling and filtered builds External review tools (Swarm) Change-list browsing Labeling builds (Tagging) External repository browsers (P4Web, Swarm) Submit assets back to Perforce (Publish) 13

Continuous Delivery Demo 14

Demo environment VM stores Helix P4D for code and artifacts Helix Swarm for review Jenkins for pipeline Docker image deployed to QA and Production environments

Demo scenario web app Edit the slider to include two more photos and deliver to production using the Continuous Delivery pipeline

Our pipeline Auto Auto Manual Application checked out, built and checked back in and labeled Artifacts retrieved from Perforce and build into docker container and checked back in Docker container deployed to QA for testing Docker container deployed to production for testing

Versioning pipeline artifacts Perforce can store data of any type and size. In this demo scenario Application Source SQL Scripts Graphics Files Build Artifacts Deployment images Environment Definitions Infrastructure as code

Developer workflow Working with files is optimized for Continuous Delivery Select stream to work from and start working Sync only the content needed for a task Code committed to trunk

Continuous code reviews Pre and post-commit code (& doc) reviews across lifecycle Inline conversations and diffs Built-in hooks for pre-flight testing and deployment Dashboard for continuous delivery across multiple projects Across Git and Perforce

Successful Implementation of a Continuous Delivery Pipeline Integrate Build Test Deploy Release High velocity build, test and deploy lifecycle Version Control Increased developer onus, unbreakable builds No room for it works on my machine Builds tested on production like environments Deployment to internal or external users

Workflow DSL Support for Workflow Plugin via DSL checkout([$class: 'PerforceScm', credential: '634a31d2-bd60-4c39- bf84-b09f057c5431', populate: [$class: 'AutoCleanImpl', delete: true, modtime: false, pin: '', quiet: true, replace: true], workspace: [$class: 'StreamWorkspaceImpl', charset: 'none', format: 'jenkins-${node_name}-${job_name}', pinhost: false, streamname: '//stream/main']]) p4sync credential: '634a31d2-bd60-4c39-bf84-b09f057c5431', stream: '//stream/main' 22

Snippet Generator 23

Additional support p4tag - Label build sources p4publish - Submit artifacts back to Perforce 24

Conclusion Perforce Helix: Foundation of Continuous Delivery Jenkins: Pipeline that delivers Continuous Delivery P4 Plugin: Glue between Helix and Jenkins Soon: full support of the workflow plugin with DSL 25

Please Share Your Feedback Did you find this session valuable? Please share your thoughts in the Jenkins User Conference Mobile App. Find the session in the app and click on the feedback area. 26