Continuous Integration

Size: px
Start display at page:

Download "Continuous Integration"

Transcription

1 Continuous Integration

2 Collaborative development issues Checkout of a shared version of software ( mainline ) Creation of personal working copies of developers Software development: modification of personal working copies Working copies diverge from mainline Different parallel changes by different developers Integration of a working copy into mainline Infrequent integration: likely conflict with changes from other developers Time-consuming and error-prone process ( integration hell ) Worst-case scenario: discard previous work and redo work on top of current mainline

3 Continuous Integration (CI) Frequently integrate developer work into shared mainline Minimize divergence of working copy from mainline Small integration effort CI server Builds software from source code Runs tests on built software Reports test failures to developers Errors can be corrected immediately Runs periodically or after integration events

4 Workflow

5 Principles Revision control system Minimize divergence of branches Automated build process Integration into mainline every day Small conflicts are easy to resolve and facilitate communication between developers Automation of software quality control Availability of latest build Facilitates further testing

6 Pros and cons Pros Immediate testing of software changes Immediate feedback to developers on impact of their changes Easily revert changes that introduced a bug Avoid chaos when release date approaches Latest build always available for testing, demos, or releases Frequent check-in encourages writing modular code Cons Initial setup time Test suite development

7 Continuous delivery Also called continuous deployment Extends continuous integration up to software releases Frequent automated or semi-automated releases Reduced manual overhead Minimizes risks when introducing new release Every developer commit may result in a new release Encourages quality work

8 Atlassian Bamboo CI Server from Atlassian Web interface Supports multiple revision control systems Git, Mercurial, CVS, Subversion, Perforce Can be used with any programming language Native support for multiple build tools Supports sequential and parallel task execution Can be integrated with JIRA issue tracker

9 Bamboo workflow

10 Bamboo plan Belongs to a Bamboo project Plan build: execution of a plan Single stage by default, but multiple stages possible Specifies a default source code repository Processes one or more stages, run sequentially Specifies how the build is triggered Specifies triggering dependencies from other plans in the project Notification of build results

11 Plan creation (1/3)

12 Plan creation (2/3)

13 Plan creation (3/3) Plan trigger options: Poll repository for changes Repository triggers build when changes are committed Scheduled Single daily build Manual

14 Tasks Source control Source code checkout, VCS branching, VCS tagging Builder Ant, Maven, Grails, Nant, MSBuild, Visual Studio, Command, Script Tests JUnit, TestNG, PHPUnit, MBUnit, NUnit, MSTest Deployment Tomcat, Heroku, SCP, SSH

15 Plan summary

16 Agents Service running Bamboo builds Number of agents determines number of jobs executable in parallel Local agent Runs in the same process as Bamboo server Remote agent Runs outside Bamboo server Agent capabilities Determine what jobs can be run Version control system client, executable, JDK, custom capability

17 Stages Executed sequentially in a plan Example: compilation stage, test stage, deployment stage One default stage in a new plan Can process its jobs in parallel If agents are available Must successfully complete all its jobs before the next stage in the plan can be processed Manual stages: Build execution paused until user manually runs stage

18 Jobs Executed (potentially) in parallel within a stage Job requirements matched against agent capabilities Process one or more tasks sequentially on the same agent Final tasks Job artifacts: files created during job Available as plan build results Defined as part of job definition Artifact sharing: artifact created in a job can be used outside the job Artifact sharing between plans

19 Build results Plan build or job build Build status: successful, failed, incomplete Responsible users Automatically or manually assigned Notified of build failures Test results Code changes Artifacts Logs

20 Quarantined tests Tests in a build whose result is disconnected from build results Still run during builds Test results available in build results Use cases Tests known to fail, but artifacts still good In test-driven development, tests for unimplemented functionalities Tests with unpredictable results Removing a test from a plan without affecting other plans

21 Plan branches Associated to branches in source repository Inherit configuration from containing plan Containing plan associated to branch indicated in default repository Manual branching Define plan branches manually Automatic branching Create plan branch when new branch is detected in repository Remove plan branch if no commits are detected on repository branch

22 Plan branches: automatic merging 2 merging models

23 Plan build dependencies A successful plan build triggers another plan Parent plan -> child plan Works in addition to child plan triggers Checkout of same version in source repository Works with plan branches If branch names in parent and child plan branches match Dependency blocking Block child build if parent builds are queued or in progress Block child build if parent plans have unbuilt changes

24 Deployment projects (1/3) Provide separation between build artifacts and deployed releases Identify deployment environments E.g. QA, staging and production environments Motivations: Deployed builds are difficult to find Difficult to find what changes were made between deployments Difficult to know what was deployed, and when and where it was deployed Lack of insight into the QA process Poor control over who can deploy

25 Deployment projects (2/3)

26 Deployment projects (3/3)

27 Deployment project configuration Build plan Shared artifacts Release naming scheme Deployment environment Tasks Source control, builder, deployment Triggers Agents Can be dedicated to deployment projects Permissions

28 Branch deployment

29 Notifications Plan-level and job-level events Recipients: Bamboo users, groups, responsible users, committers, watchers Bamboo wallboard All plans, favorite plans, filtered plans Instant messaging RSS feeds System-level notifications

30 Wallboard

31 Usage patterns: Fail Fast

32 Usage patterns: artifact sharing

33 Usage patterns: manually triggered stages

Continuous Integration and Bamboo. Ryan Cutter CSCI 5828 2012 Spring Semester

Continuous Integration and Bamboo. Ryan Cutter CSCI 5828 2012 Spring Semester Continuous Integration and Bamboo Ryan Cutter CSCI 5828 2012 Spring Semester Agenda What is CI and how can it help me? Fundamentals of CI Fundamentals of Bamboo Configuration / Price Quick example Features

More information

Leveraging Rational Team Concert's build capabilities for Continuous Integration

Leveraging Rational Team Concert's build capabilities for Continuous Integration Leveraging Rational Team Concert's build capabilities for Continuous Integration Krishna Kishore Senior Engineer, RTC IBM Krishna.kishore@in.ibm.com August 9-11, Bangalore August 11, Delhi Agenda What

More information

Practicing Continuous Delivery using Hudson. Winston Prakash Oracle Corporation

Practicing Continuous Delivery using Hudson. Winston Prakash Oracle Corporation Practicing Continuous Delivery using Hudson Winston Prakash Oracle Corporation Development Lifecycle Dev Dev QA Ops DevOps QA Ops Typical turn around time is 6 months to 1 year Sprint cycle is typically

More information

Jenkins: The Definitive Guide

Jenkins: The Definitive Guide Jenkins: The Definitive Guide John Ferguson Smart O'REILLY8 Beijing Cambridge Farnham Koln Sebastopol Tokyo Table of Contents Foreword xiii Preface xv 1. Introducing Jenkins 1 Introduction 1 Continuous

More information

Continuous Integration and Delivery at NSIDC

Continuous Integration and Delivery at NSIDC National Snow and Ice Data Center Supporting Cryospheric Research Since 1976 Continuous Integration and Delivery at NSIDC Julia Collins National Snow and Ice Data Center Cooperative Institute for Research

More information

Continuous Delivery. Alejandro Ruiz

Continuous Delivery. Alejandro Ruiz Continuous Delivery Alejandro Ruiz True reality How the customer explained it How the project leader understood it How the analyst designed it How the programmer wrote it What the customer really needed

More information

SOFTWARE DEVELOPMENT BASICS SED

SOFTWARE DEVELOPMENT BASICS SED SOFTWARE DEVELOPMENT BASICS SED Centre de recherche Lille Nord Europe 16 DÉCEMBRE 2011 SUMMARY 1. Inria Forge 2. Build Process of Software 3. Software Testing 4. Continuous Integration 16 DECEMBRE 2011-2

More information

Source Control Systems

Source Control Systems Source Control Systems SVN, Git, GitHub SoftUni Team Technical Trainers Software University http://softuni.bg Table of Contents 1. Software Configuration Management (SCM) 2. Version Control Systems: Philosophy

More information

<Insert Picture Here> Introducing Hudson. Winston Prakash. Click to edit Master subtitle style

<Insert Picture Here> Introducing Hudson. Winston Prakash. Click to edit Master subtitle style Introducing Hudson Click to edit Master subtitle style Winston Prakash What is Hudson? Hudson is an open source continuous integration (CI) server. A CI server can do various tasks

More information

Continuous Integration (CI) and Testing - Configuring Bamboo, Hudson, and TestMaker

Continuous Integration (CI) and Testing - Configuring Bamboo, Hudson, and TestMaker Continuous Integration and Testing Configuring Bamboo, Hudson, and TestMaker Operate PushToTest TestMaker tests from Continuous Integration environments. PushToTest checks TestMaker compatibility with

More information

Jenkins Continuous Build System. Jesse Bowes CSCI-5828 Spring 2012

Jenkins Continuous Build System. Jesse Bowes CSCI-5828 Spring 2012 Jenkins Continuous Build System Jesse Bowes CSCI-5828 Spring 2012 Executive summary Continuous integration systems are a vital part of any Agile team because they help enforce the ideals of Agile development

More information

IKAN ALM Architecture. Closing the Gap Enterprise-wide Application Lifecycle Management

IKAN ALM Architecture. Closing the Gap Enterprise-wide Application Lifecycle Management IKAN ALM Architecture Closing the Gap Enterprise-wide Application Lifecycle Management Table of contents IKAN ALM SERVER Architecture...4 IKAN ALM AGENT Architecture...6 Interaction between the IKAN ALM

More information

Beginners guide to continuous integration. Gilles QUERRET Riverside Software

Beginners guide to continuous integration. Gilles QUERRET Riverside Software Beginners guide to continuous integration Gilles QUERRET Riverside Software About the speaker Working with Progress and Java since 10 years Started Riverside Software 7 years ago Based in Lyon, France

More information

Introduction to Programming Tools. Anjana & Shankar September,2010

Introduction to Programming Tools. Anjana & Shankar September,2010 Introduction to Programming Tools Anjana & Shankar September,2010 Contents Essentials tooling concepts in S/W development Build system Version Control System Testing Tools Continuous Integration Issue

More information

We (http://www.newagesolution.net) have extensive experience in enterprise and system architectures, system engineering, project management, and

We (http://www.newagesolution.net) have extensive experience in enterprise and system architectures, system engineering, project management, and We (http://www.newagesolution.net) have extensive experience in enterprise and system architectures, system engineering, project management, and software design and development. We will be presenting a

More information

Software Continuous Integration & Delivery

Software Continuous Integration & Delivery November 2013 Daitan White Paper Software Continuous Integration & Delivery INCREASING YOUR SOFTWARE DEVELOPMENT PROCESS AGILITY Highly Reliable Software Development Services http://www.daitangroup.com

More information

Content. Development Tools 2(63)

Content. Development Tools 2(63) Development Tools Content Project management and build, Maven Version control, Git Code coverage, JaCoCo Profiling, NetBeans Static Analyzer, NetBeans Continuous integration, Hudson Development Tools 2(63)

More information

Software configuration management

Software configuration management Software Engineering Theory Software configuration management Lena Buffoni/ Kristian Sandahl Department of Computer and Information Science 2015-09-30 2 Maintenance Requirements System Design (Architecture,

More information

Build management & Continuous integration. with Maven & Hudson

Build management & Continuous integration. with Maven & Hudson Build management & Continuous integration with Maven & Hudson About me Tim te Beek tim.te.beek@nbic.nl Computer science student Bioinformatics Research Support Overview Build automation with Maven Repository

More information

Continuous Integration: A case study

Continuous Integration: A case study Continuous Integration: A case study Vaibhav Kothari Talentica Software (I) Pvt ltd 1 Abstract Developer s dilemma QA s dilemma Continuous Integration? Case study What is accomplished? Benefits of CI Recommended

More information

Software Construction

Software Construction Software Construction Martin Kropp University of Applied Sciences Northwestern Switzerland Institute for Mobile and Distributed Systems Learning Target You can explain the importance of continuous integration

More information

Continuous Integration. CSC 440: Software Engineering Slide #1

Continuous Integration. CSC 440: Software Engineering Slide #1 Continuous Integration CSC 440: Software Engineering Slide #1 Topics 1. Continuous integration 2. Configuration management 3. Types of version control 1. None 2. Lock-Modify-Unlock 3. Copy-Modify-Merge

More information

vs. Web Site: www.soebes.com Blog: blog.soebes.com Email: info@soebes.com Dipl.Ing.(FH) Karl Heinz Marbaise

vs. Web Site: www.soebes.com Blog: blog.soebes.com Email: info@soebes.com Dipl.Ing.(FH) Karl Heinz Marbaise Project Organization vs. Build- and Configuration Management Web Site: www.soebes.com Blog: blog.soebes.com Email: info@soebes.com Dipl.Ing.(FH) Karl Heinz Marbaise Agenda 1.Initialization 2.Specification

More information

CSE 70: Software Development Pipeline Version Control with Subversion, Continuous Integration with Bamboo, Issue Tracking with Jira

CSE 70: Software Development Pipeline Version Control with Subversion, Continuous Integration with Bamboo, Issue Tracking with Jira CSE 70: Software Development Pipeline Version Control with Subversion, Continuous Integration with Bamboo, Issue Tracking with Jira Ingolf Krueger Department of Computer Science & Engineering University

More information

CPSC 491. Today: Source code control. Source Code (Version) Control. Exercise: g., no git, subversion, cvs, etc.)

CPSC 491. Today: Source code control. Source Code (Version) Control. Exercise: g., no git, subversion, cvs, etc.) Today: Source code control CPSC 491 Source Code (Version) Control Exercise: 1. Pretend like you don t have a version control system (e. g., no git, subversion, cvs, etc.) 2. How would you manage your source

More information

Delivering Quality Software with Continuous Integration

Delivering Quality Software with Continuous Integration Delivering Quality Software with Continuous Integration 01 02 03 04 Unit Check- Test Review In 05 06 07 Build Deploy Test In the following pages we will discuss the approach and systems that together make

More information

How To Develop A Project In A Production Environment

How To Develop A Project In A Production Environment Open Source.NET Development Setting Up A Professional Development Environment Using Open Source Software (OSS) Morten Mertner Senior Consultant, Teknologisk Institut.NET Architect and Software Developer

More information

TeamCity A Professional Solution for Delivering Quality Software, on Time

TeamCity A Professional Solution for Delivering Quality Software, on Time TeamCity A Professional Solution for Delivering Quality Software, on Time Vaclav Pech Senior Software Developer JetBrains, Inc. About Us Vaclav Pech Professional software developer for 9 years IntelliJ

More information

Continuous integration @ Keylane

Continuous integration @ Keylane Continuous integration @ Keylane 1 Keylane Software for pension funds In the business since 2005 Working mostly on EU market 2 1 Teams Around 30 developers and project managers Divided in 10 teams Mostly

More information

Delivery. Continuous. Jez Humble and David Farley. AAddison-Wesley. Upper Saddle River, NJ Boston Indianapolis San Francisco

Delivery. Continuous. Jez Humble and David Farley. AAddison-Wesley. Upper Saddle River, NJ Boston Indianapolis San Francisco Continuous Delivery Jez Humble and David Farley AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid Cape Town Sydney Tokyo Singapore

More information

Continuous Integration For Real: The Perforce Java Platform. Hamish Reid Perforce Software Inc.

Continuous Integration For Real: The Perforce Java Platform. Hamish Reid Perforce Software Inc. Continuous Integration For Real: The Perforce Java Platform Hamish Reid Perforce Software Inc. OVERVIEW What do we mean by Agile? Continuous Integration? Product line highlights: P4Eclipse + Mylin + MergeQuest

More information

Automated performance testing using Maven & JMeter. George Barnett, Atlassian Software Systems @georgebarnett

Automated performance testing using Maven & JMeter. George Barnett, Atlassian Software Systems @georgebarnett Automated performance testing using Maven & JMeter George Barnett, Atlassian Software Systems @georgebarnett Create controllable JMeter tests Configure Maven to create a repeatable cycle Run this build

More information

Version Control! Scenarios, Working with Git!

Version Control! Scenarios, Working with Git! Version Control! Scenarios, Working with Git!! Scenario 1! You finished the assignment at home! VC 2 Scenario 1b! You finished the assignment at home! You get to York to submit and realize you did not

More information

Software Configuration Management and Continuous Integration

Software Configuration Management and Continuous Integration 1 Chapter 1 Software Configuration Management and Continuous Integration Matthias Molitor, 1856389 Reaching and maintaining a high quality level is essential for each today s software project. To accomplish

More information

Zero-Touch Drupal Deployment

Zero-Touch Drupal Deployment Zero-Touch Drupal Deployment Whitepaper Date 25th October 2011 Document Number MIG5-WP-D-004 Revision 01 1 Table of Contents Preamble The concept Version control Consistency breeds abstraction Automation

More information

DRUPAL CONTINUOUS INTEGRATION. Part I - Introduction

DRUPAL CONTINUOUS INTEGRATION. Part I - Introduction DRUPAL CONTINUOUS INTEGRATION Part I - Introduction Continuous Integration is a software development practice where members of a team integrate work frequently, usually each person integrates at least

More information

GECKO Software. Introducing FACTORY SCHEMES. Adaptable software factory Patterns

GECKO Software. Introducing FACTORY SCHEMES. Adaptable software factory Patterns Introducing FACTORY SCHEMES Adaptable software factory Patterns FACTORY SCHEMES 3 Standard Edition Community & Enterprise Key Benefits and Features GECKO Software http://consulting.bygecko.com Email: Info@gecko.fr

More information

Life Cycle Management for Oracle Data Integrator 11 & 12. At lower cost Get a 30% return on investment guaranteed and save 15% on development costs

Life Cycle Management for Oracle Data Integrator 11 & 12. At lower cost Get a 30% return on investment guaranteed and save 15% on development costs Life Cycle Management for Oracle Data Integrator 11 & 12 Increase productivity Stop wasting your time doing things maually by automating every step in your project s Life Cycle At lower cost Get a 30%

More information

The Bazaar Version Control System. Michael Hudson, Canonical Ltd michael.hudson@canonical.com

The Bazaar Version Control System. Michael Hudson, Canonical Ltd michael.hudson@canonical.com The Bazaar Version Control System Michael Hudson, Canonical Ltd michael.hudson@canonical.com What is Bazaar? Bazaar is a Distributed Version Control System (DVCS) You probably know what a VCS is by now:

More information

Continuous Integration (CI)

Continuous Integration (CI) Introduction A long standing problem for software development teams has been to maintain the stability of an application while integrating the changes made by multiple developers. The later that integration

More information

Continuous Integration: Put it at the heart of your development

Continuous Integration: Put it at the heart of your development Continuous Integration: Put it at the heart of your development Susan Duncan Tools Product Manager, Oracle 1 Program Agenda What is CI? What Does It Mean To You? Make it Hudson Evolving Best Practice For

More information

Git Branching for Continuous Delivery

Git Branching for Continuous Delivery Git Branching for Continuous Delivery Sarah Goff-Dupont Automation Enthusiast Hello everyone I ll be talking about how teams at Atlassian use Git branches for continuous delivery. My name is Sarah, and

More information

Software Development In the Cloud Cloud management and ALM

Software Development In the Cloud Cloud management and ALM Software Development In the Cloud Cloud management and ALM First published in Dr. Dobb's Journal, February 2009: http://www.ddj.com/development-tools/212900736 Nick Gulrajani is a Senior Solutions Architect

More information

Software infrastructure for Java development projects

Software infrastructure for Java development projects Tools that can optimize your development process Software infrastructure for Java development projects Presentation plan Software Development Lifecycle Tools What tools exist? Where can tools help? Practical

More information

Modern practices 2.3.2015 02.03.2015 TIE-21100/21106 1

Modern practices 2.3.2015 02.03.2015 TIE-21100/21106 1 Modern practices 2.3.2015 1 Today s lecture Learn what some modern SW engineering topics are about A peek to some research topic of our department 2 3 4 5 6 How the lectures continue? 02.03 Modern practices

More information

Global Software Change Management for PVCS Version Manager

Global Software Change Management for PVCS Version Manager Global Software Change Management for PVCS Version Manager... www.ikanalm.com Summary PVCS Version Manager is considered as one of the leading versioning tools that offers complete versioning control.

More information

Visual Studio - Continuous Integration

Visual Studio - Continuous Integration www..org 67 Visual Studio - Continuous Integration Rama Murari 1, Veerabhadraiah Sandru 2 1,2 HiTech ISU Assurance CoE TATA CONSULTANCY SERVICES LIMITED Deccan Park, Hi-Tech City, Madhapur, Hyderabad,

More information

Continuous Integration with Jenkins. Coaching of Programming Teams (EDA270) J. Hembrink and P-G. Stenberg [dt08jh8 dt08ps5]@student.lth.

Continuous Integration with Jenkins. Coaching of Programming Teams (EDA270) J. Hembrink and P-G. Stenberg [dt08jh8 dt08ps5]@student.lth. 1 Continuous Integration with Jenkins Coaching of Programming Teams (EDA270) J. Hembrink and P-G. Stenberg [dt08jh8 dt08ps5]@student.lth.se Faculty of Engineering, Lund Univeristy (LTH) March 5, 2013 Abstract

More information

Implementing Continuous Integration Testing Prepared by:

Implementing Continuous Integration Testing Prepared by: Implementing Continuous Integration Testing Prepared by: Mr Sandeep M Table of Contents 1. ABSTRACT... 2 2. INTRODUCTION TO CONTINUOUS INTEGRATION (CI)... 3 3. CI FOR AGILE METHODOLOGY... 4 4. WORK FLOW...

More information

Redmine: A project management software tool. January, 2013

Redmine: A project management software tool. January, 2013 Redmine: A project management software tool January, 2013 Outline Introduction to Redmine. Important concepts of Redmine. How to use Redmine. 1 Introduction: What is Redmine? Redmine is a project management

More information

Continuous Integration

Continuous Integration How painful was your last release? Continuous Integration Marcin Kawalerowicz CEO CODEFUSION Sp. z o. o. CODEFUSION Sp. z o.o. ul. Powstańców Śląskich 25/18 45-086 Opole, Poland +48 77 54 53 312 info@codefusion.pl

More information

Continuous Integration

Continuous Integration Continuous Integration Sébastien Besson Open Microscopy Environment Wellcome Trust Centre for Gene Regulation & Expression College of Life Sciences, University of Dundee Dundee, Scotland, UK 1 Plan 1.

More information

Advanced Computing Tools for Applied Research Chapter 4. Version control

Advanced Computing Tools for Applied Research Chapter 4. Version control Advanced Computing Tools for Applied Research Jaime Boal Martín-Larrauri Rafael Palacios Hielscher Academic year 2014/2015 1 Version control fundamentals 2 What you probably do now Manually save copies

More information

Best Overall Use of Technology. Jaspersoft

Best Overall Use of Technology. Jaspersoft Best Overall Use of Technology Jaspersoft Kerstin Klein Manager, Engineering Processes/ Infrastructure, Jaspersoft From requirements to release QA centric development From Requirement to Release QA-Centric

More information

Database Build and Release will get started soon

Database Build and Release will get started soon #sqlinthecity Database Build and Release will get started soon Ernest Hwang Principal Software Engineer, Practice Fusion http://practicefusion.com/careers/ While you re waiting, check out SQL Prompt #sqlinthecity

More information

Essential Visual Studio Team System

Essential Visual Studio Team System Essential Visual Studio Team System Introduction This course helps software development teams successfully deliver complex software solutions with Microsoft Visual Studio Team System (VSTS). Discover how

More information

Beginner s guide to continuous integration. Gilles QUERRET Riverside Software

Beginner s guide to continuous integration. Gilles QUERRET Riverside Software Beginner s guide to continuous integration Gilles QUERRET Riverside Software About the speaker Working with Progress and Java since 10 years Started Riverside Software 5 years ago Based in Lyon, France

More information

Continuous Integration: Improving Software Quality and Reducing Risk. Preetam Palwe Aftek Limited

Continuous Integration: Improving Software Quality and Reducing Risk. Preetam Palwe Aftek Limited Continuous Integration: Improving Software Quality and Reducing Risk Preetam Palwe Aftek Limited One more title Do you love bugs? Or Are you in love with QC members? [Courtesy: Smita N] Agenda Motivation

More information

Java Power Tools. John Ferguson Smart. ULB Darmstadt 1 PI. O'REILLY 4 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo

Java Power Tools. John Ferguson Smart. ULB Darmstadt 1 PI. O'REILLY 4 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo Java Power Tools John Ferguson Smart ULB Darmstadt 1 PI O'REILLY 4 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo Table of Contents Foreword Preface Introduction xvii xix xxxiii Parti. Build

More information

Continuous Integration & Feature Branches

Continuous Integration & Feature Branches UNIVERSITY OF TARTU FACULTY OF MATHEMATICS AND COMPUTER SCIENCE Institute of Computer Science Tõnis Pool Continuous Integration & Feature Branches Bachelor thesis (6 EAP) Supervisors: Toomas Römer, Rein

More information

Surround SCM Best Practices

Surround SCM Best Practices Surround SCM Best Practices This document addresses some of the common activities in Surround SCM and offers best practices for each. These best practices are designed with Surround SCM users in mind,

More information

CONTINUOUS INTEGRATION. Introduction

CONTINUOUS INTEGRATION. Introduction CONTINUOUS INTEGRATION Introduction Continuous Integration is the topic of quite a bit of buzz in Silicon Valley and beyond. And with good reason: continuous integration helps teams ship better software

More information

BuildBot. S.Cozzini/A.Messina/G.Giuliani. And Continuous Integration. RegCM4 experiences. Warning: Some slides/ideas. <willie@issdu.com.

BuildBot. S.Cozzini/A.Messina/G.Giuliani. And Continuous Integration. RegCM4 experiences. Warning: Some slides/ideas. <willie@issdu.com. BuildBot And Continuous Integration RegCM4 experiences S.Cozzini/A.Messina/G.Giuliani Warning: Some slides/ideas stolen by Willie Agenda How do we use BuildBot here? What is BuildBot?

More information

Data management on HPC platforms

Data management on HPC platforms Data management on HPC platforms Transferring data and handling code with Git scitas.epfl.ch September 10, 2015 http://bit.ly/1jkghz4 What kind of data Categorizing data to define a strategy Based on size?

More information

Software Configuration Management Best Practices for Continuous Integration

Software Configuration Management Best Practices for Continuous Integration Software Configuration Management Best Practices for Continuous Integration As Agile software development methodologies become more common and mature, proven best practices in all phases of the software

More information

Continuous integration for databases using Red Gate tools

Continuous integration for databases using Red Gate tools Whitepaper Continuous integration for databases using Red Gate tools A technical overview Continuous Integration source control develop Dev Dev Dev build test Automated Deployment Deployment package Testing

More information

SpiraTeam Feature Compa

SpiraTeam Feature Compa SpiraTeam Feature ompa P X urrently Supported Planned Functionality Not Applicable Not Supported SpiraTeam 4.1 Rally Enterprise VersionOne General Features Fully Web-Based Application (no ActiveX, Flash,

More information

Miguel A. Figueroa Villanueva Xabriel J. Collazo Mojica

Miguel A. Figueroa Villanueva Xabriel J. Collazo Mojica Version Control Systems: Subversion Xabriel J. Collazo Mojica 1 Outline Introduction Document management CMS Wiki Aigaion Code and Document Repositories Version Control Systems Centralized Distributed

More information

Continuous Integration. Wellcome Trust Centre for Gene Regulation & Expression College of Life Sciences, University of Dundee Dundee, Scotland, UK

Continuous Integration. Wellcome Trust Centre for Gene Regulation & Expression College of Life Sciences, University of Dundee Dundee, Scotland, UK Continuous Integration Wellcome Trust Centre for Gene Regulation & Expression College of Life Sciences, University of Dundee Dundee, Scotland, UK 1 Plan 1. Why OME needs Continuous Integration? 1. OME

More information

Theme 1 Software Processes. Software Configuration Management

Theme 1 Software Processes. Software Configuration Management Theme 1 Software Processes Software Configuration Management 1 Roadmap Software Configuration Management Software configuration management goals SCM Activities Configuration Management Plans Configuration

More information

Continuous Integration on System z

Continuous Integration on System z Continuous Integration on System z A Proof of Concept at Generali Deutschland Informatik Services GmbH Enterprise Modernization GSE Frankfurt, 14th October 2013 Markus Holzem, GDIS-AS mailto: markus.holzem@generali.de

More information

Automate Your Deployment with Bamboo, Drush and Features DrupalCamp Scotland, 9 th 10 th May 2014

Automate Your Deployment with Bamboo, Drush and Features DrupalCamp Scotland, 9 th 10 th May 2014 This presentation was originally given at DrupalCamp Scotland, 2014. http://camp.drupalscotland.org/ The University of Edinburgh 1 We are 2 of the developers working on the University s ongoing project

More information

Version control with GIT

Version control with GIT AGV, IIT Kharagpur September 13, 2012 Outline 1 Version control system What is version control Why version control 2 Introducing GIT What is GIT? 3 Using GIT Using GIT for AGV at IIT KGP Help and Tips

More information

Expert PHP 5 Tools. Proven enterprise development tools and best practices for designing, coding, testing, and deploying PHP applications.

Expert PHP 5 Tools. Proven enterprise development tools and best practices for designing, coding, testing, and deploying PHP applications. Expert PHP 5 Tools Proven enterprise development tools and best practices for designing, coding, testing, and deploying PHP applications Dirk Merkel PUBLISHING -J BIRMINGHAM - MUMBAI Preface Chapter 1:

More information

SMZ. SocialMedia. Z olutions

SMZ. SocialMedia. Z olutions SMZ SocialMedia Z olutions JiveIstrano Jive Deployment the easy way 2 What is JiveIstrano? JiveIstrano is a Jive deployment system based on Capistrano/Webistrano It automates Jive deployment in your companies

More information

Software Configuration Management. Context. Learning Objectives

Software Configuration Management. Context. Learning Objectives Software Configuration Management Wolfgang Emmerich Professor of Distributed Computing University College London http://sse.cs.ucl.ac.uk Context Requirements Inception Elaboration Construction Transition

More information

Two-Way Data Binding with WinJS By Marcin Kawalerowicz and Craig Berntson, authors of Continuous Integration in.net

Two-Way Data Binding with WinJS By Marcin Kawalerowicz and Craig Berntson, authors of Continuous Integration in.net 1 Two-Way Data Binding with WinJS By Marcin Kawalerowicz and Craig Berntson, authors of Continuous Integration in.net One of the keys to improving applications and productivity is to automate some of the

More information

Continuous integration End of the big bang integration era

Continuous integration End of the big bang integration era Continuous integration End of the big bang integration era Patrick Laurent Partner Technology & Enterprise Applications Deloitte Mario Deserranno Manager Technology & Enterprise Applications Deloitte The

More information

The Deployment Production Line

The Deployment Production Line The Deployment Production Line Jez Humble, Chris Read, Dan North ThoughtWorks Limited jez.humble@thoughtworks.com, chris.read@thoughtworks.com, dan.north@thoughtworks.com Abstract Testing and deployment

More information

Topic relevant selected content from the highest rated entries, typeset, printed and shipped.

Topic relevant selected content from the highest rated entries, typeset, printed and shipped. Topic relevant selected content from the highest rated entries, typeset, printed and shipped. Combine the advantages of up-to-date and in-depth knowledge with the convenience of printed books. A portion

More information

Continuous Integration and Automatic Testing for the FLUKA release using Jenkins (and Docker)

Continuous Integration and Automatic Testing for the FLUKA release using Jenkins (and Docker) Continuous Integration and Automatic Testing for the FLUKA release using Jenkins (and Docker) Vittorio BOCCONE DECTRIS Ltd. 5405 Baden-Daettwil Switzerland www.dectris.com Definitions Continuous Integration

More information

Effective Team Development Using Microsoft Visual Studio Team System

Effective Team Development Using Microsoft Visual Studio Team System Effective Team Development Using Microsoft Visual Studio Team System Course 6214A: Three days; Instructor-Led Introduction This three-day instructor-led course provides students with the knowledge and

More information

ALM2013VS_ACC: Application Lifecycle Management Using Visual Studio 2013

ALM2013VS_ACC: Application Lifecycle Management Using Visual Studio 2013 ALM2013VS_ACC: Application Lifecycle Management Using Visual Studio 2013 Description This three-day, instructor-led course provides students with the knowledge and skills to effectively use the Application

More information

Automating Business Processes Using SharePoint Designer

Automating Business Processes Using SharePoint Designer Automating Business Processes Using SharePoint Designer Jeff MacKenzie Director of Technology Edgewater Technology www.edgewater.com jmackenzie@edgewater.com Contents What is a workflow? Types of SharePoint

More information

Maven the Beautiful City. Healthy, Viable, and Productive Build Infrastructures

Maven the Beautiful City. Healthy, Viable, and Productive Build Infrastructures Maven the Beautiful City Healthy, Viable, and Productive Build Infrastructures What is Maven? Build tool Similar to Ant but fundamentally different which we will discuss later Dependency management tool

More information

SOA-14: Continuous Integration in SOA Projects Andreas Gies

SOA-14: Continuous Integration in SOA Projects Andreas Gies Distributed Team Building Principal Architect http://www.fusesource.com http://open-source-adventures.blogspot.com About the Author Principal Architect PROGRESS - Open Source Center of Competence Degree

More information

Technical Writing - Advantages of Version Control Systems

Technical Writing - Advantages of Version Control Systems Fachpraktikum Grafik-Programmierung WS2010 Introduction to Version Control Alexandros Panagiotidis, Daniel Kauker Institut für Visualisierung und Interaktive Systeme Universität Stuttgart Advantages of

More information

Ensure Merge Accuracy in Continuous Integration Development Environments

Ensure Merge Accuracy in Continuous Integration Development Environments Ensure Merge Accuracy in Continuous Integration Development Environments 2 Defect Challenges in Continuous Integration Development Modern software development is rapidly moving to incremental development

More information

Agile ALM. Lightweight tools and Agile strategies MANNING MICHAEL HUTTERMANN. Shelter Island

Agile ALM. Lightweight tools and Agile strategies MANNING MICHAEL HUTTERMANN. Shelter Island Agile ALM Lightweight tools and Agile strategies MICHAEL HUTTERMANN II MANNING Shelter Island contents preface xv acknowledgments about this book xix xvii about the cover illustration xxv *art 1 Introduction

More information

JavaScript Applications for the Enterprise: From Empty Folders to Managed Deployments. George Bochenek Randy Jones

JavaScript Applications for the Enterprise: From Empty Folders to Managed Deployments. George Bochenek Randy Jones JavaScript Applications for the Enterprise: From Empty Folders to Managed Deployments George Bochenek Randy Jones Enterprise Development What is it? Source Control Project Organization Unit Testing Continuous

More information

Developer Workshop 2015. Marc Dumontier McMaster/OSCAR-EMR

Developer Workshop 2015. Marc Dumontier McMaster/OSCAR-EMR Developer Workshop 2015 Marc Dumontier McMaster/OSCAR-EMR Agenda Code Submission 101 Infrastructure Tools Developing OSCAR Code Submission: Process OSCAR EMR Sourceforge http://www.sourceforge.net/projects/oscarmcmaster

More information

Continuous Delivery. Ariel Alonso, IPC

Continuous Delivery. Ariel Alonso, IPC Continuous Delivery Ariel Alonso, IPC About Me Ariel Alonso Systems Architect Independent Purchasing Cooperative, Inc. Software Engineer for 15 years Interests Agile & XP Test Driven Development Automation

More information

Teaming Up for Software Development

Teaming Up for Software Development Departamento de Informática Universidade do Minho Engenharia de Aplicações Introduction Agenda In the end of the session the attendee should be able to: Identify several super-sets of tools used in software

More information

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

Microsoft s Team Foundation Server (TFS) Canute Magalhaes Richland County (IT) SYSTEMS ANALYST / PROJECT LEAD 1 Microsoft s Team Foundation Server (TFS) Canute Magalhaes Richland County (IT) SYSTEMS ANALYST / PROJECT LEAD 1 Topics for this Presentation Why Richland County IT - Business Systems Division uses Team

More information

Pipeline Orchestration for Test Automation using Extended Buildbot Architecture

Pipeline Orchestration for Test Automation using Extended Buildbot Architecture Pipeline Orchestration for Test Automation using Extended Buildbot Architecture Sushant G.Gaikwad Department of Computer Science and engineering, Walchand College of Engineering, Sangli, India. M.A.Shah

More information

Continuous. Integration. in.net MARGIN KAWALEROWICZ CRAIG BERNTSON MANNING. Greenwich. (74 w. long.)

Continuous. Integration. in.net MARGIN KAWALEROWICZ CRAIG BERNTSON MANNING. Greenwich. (74 w. long.) Continuous Integration in.net MARGIN KAWALEROWICZ CRAIG BERNTSON M MANNING Greenwich (74 w. long.) contents preface xv acknowledgments xvii about this book xix about the authors xxii about the cover illustration

More information

Continuous Integration using Docker & Jenkins

Continuous Integration using Docker & Jenkins Jenkins LinuxCon Europe 2014 October 13-15, 2014 Mattias Giese Solutions Architect giese@b1-systems.de - Linux/Open Source Consulting, Training, Support & Development Introducing B1 Systems founded in

More information

Steady as She Goes. How the VIVO developers work to deliver a stable platform

Steady as She Goes. How the VIVO developers work to deliver a stable platform Steady as She Goes How the VIVO developers work to deliver a stable platform Overview These practices: are by and for the Cornell development team. are applied to the main VIVO code base. The next challenge:

More information

Application Lifecycle Management Using Visual Studio 2013 (SCRUM)

Application Lifecycle Management Using Visual Studio 2013 (SCRUM) Course Code: QAALMS13 Vendor: Microsoft Course Overview Duration: 3 RRP: 2,009 Application Lifecycle Management Using Visual Studio 2013 (SCRUM) Overview This three-day, instructor-led course provides

More information

Version Control Systems: SVN and GIT. How do VCS support SW development teams?

Version Control Systems: SVN and GIT. How do VCS support SW development teams? Version Control Systems: SVN and GIT How do VCS support SW development teams? CS 435/535 The College of William and Mary Agile manifesto We are uncovering better ways of developing software by doing it

More information