Continuous Integration on System z

Similar documents
Practicing Continuous Delivery using Hudson. Winston Prakash Oracle Corporation

Continuous Integration. CSC 440: Software Engineering Slide #1

Leveraging Rational Team Concert's build capabilities for Continuous Integration

Continuous Integration: A case study

Continuous integration End of the big bang integration era

Software Construction

Delivering Quality Software with Continuous Integration

Implementing Continuous Integration Testing Prepared by:

Content. Development Tools 2(63)

Continuous Integration

Modern practices TIE-21100/

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

DevOps for the Mainframe

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

Software Development In the Cloud Cloud management and ALM

DEPLOYMENT ROADMAP March 2015

Hudson configuration manual

DRUPAL CONTINUOUS INTEGRATION. Part I - Introduction

Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module

Continuous Integration and Bamboo. Ryan Cutter CSCI Spring Semester

Version Overview. Business value

Continuous Integration (CI)

Beginner s guide to continuous integration. Gilles QUERRET Riverside Software

IBM z13 Software Pricing Announcements

Hudson Continous Integration Server. Stefan Saasen,

Flexible Decision Automation for Your zenterprise with Business Rules and Events

Build management & Continuous integration. with Maven & Hudson

Advanced Server Virtualization: Vmware and Microsoft Platforms in the Virtual Data Center

Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module

Continuous Integration

CA High Performance Recovery for IMS for z/os

Meister Going Beyond Maven

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

Oracle Fusion Middleware. 1 Oracle Team Productivity Center Server System Requirements. 2 Installing the Oracle Team Productivity Center Server

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

Take full advantage of IBM s IDEs for end- to- end mobile development

Using Git with Rational Team Concert and Rational ClearCase in enterprise environments

DSZ-3732 Secure Mainframe Development in the Cloud has Arrived

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

Continuous Integration & Automated Testing in a multisite.net/cloud Project

ManageEngine Desktop Central Training

Rocket AS v6.3. Benefits of upgrading

CONTINUOUS INTEGRATION. Introduction

Beginners guide to continuous integration. Gilles QUERRET Riverside Software

Why is CICS Still Alive? Dr Geoff Sharman Visiting Professor in Computer Science Birkbeck College

How To Use Anibom Smart Cloud For Business

Managed Web Hosting & Application Maintenance Package

Continuous Integration in Kieker

SUCCESFUL TESTING THE CONTINUOUS DELIVERY PROCESS

SOFTWARE DEVELOPMENT BASICS SED

Java on z/os. Agenda. Java runtime environments on z/os. Java SDK 5 and 6. Java System Resource Integration. Java Backend Integration

Sonatype CLM Enforcement Points - Continuous Integration (CI) Sonatype CLM Enforcement Points - Continuous Integration (CI)

How To Monitor A Server With Zabbix

Developing tests for the KVM autotest framework

Jenkins on Windows with StreamBase

Siebel Installation Guide for UNIX. Siebel Innovation Pack 2013 Version 8.1/8.2, Rev. A April 2014

WEBAPP PATTERN FOR APACHE TOMCAT - USER GUIDE

USING JE THE BE NNIFE FITS Integrated Performance Monitoring Service Availability Fast Problem Troubleshooting Improved Customer Satisfaction

Application Backup and Restore using Fast Replication Services. Ron Ratcliffe March 13, 2012 Session Number 10973

StreamServe Persuasion SP5 Supported platforms and software

Critical Database. Oracle Enterprise Manager Oracle Open World 2010 Presented dby Venkat Tekkalur. Prem Venkatasamy. Principal Technical Architect

MARIST/IBM Joint Studies

Software Configuration Management and Continuous Integration

DB2 Connect for NT and the Microsoft Windows NT Load Balancing Service

Improving your Drupal Development workflow with Continuous Integration

My DevOps Journey by Billy Foss, Engineering Services Architect, CA Technologies

Migration and Disaster Recovery Underground in the NEC / Iron Mountain National Data Center with the RackWare Management Module

Application Release Automation (ARA) Vs. Continuous Delivery

Fundamentals of Continuous Integration

How To Do Continuous Integration

How to set up SQL Source Control. The short guide for evaluators

Help! I Want to Migrate from IMS to DB2! WITHOUT REWRITING APPLICATION PROGRAMS. DL/2 technical overview and case studies.

TestOps: Continuous Integration when infrastructure is the product. Barry Jaspan Senior Architect, Acquia Inc.

FAQ: HPA-SQL FOR DB2 MAY

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

Chapter 13 Configuration Management

Jenkins: The Definitive Guide

IBM Tivoli Provisioning Manager V 7.1

INTRODUCTION TO CLOUD MANAGEMENT

Sonatype CLM for Maven. Sonatype CLM for Maven

ACESS A Comprehensive Enterprise Social Services System

Magento Search Extension TECHNICAL DOCUMENTATION

WA2102 Web Application Programming with Java EE 6 - WebSphere RAD 8.5. Classroom Setup Guide. Web Age Solutions Inc. Web Age Solutions Inc.

Continuous Integration

IBM Infrastructure Suite for z/vm and Linux

GETTING STARTED GUIDE

Change Manager 5.0 Installation Guide

Transcription:

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

Agenda Why change anything? What is Continuous Integration? The Continuous Integration Process Continuous Integration Tools System z Setup Status Quo and Next Steps 1

The goal is a shorter Time-to-Market: Continuous Delivery Why change anything? Release multiple times per day! Continuous Integration Automated Testing Continuous Deployment 2

Blue-Green-Deployment expects a full install on a clean runtime system Why change anything? Continuous Delivery Patterns expect full installs instead of patches 3

Changing the Code is Taking a Risk Continuous Integration: Theory Integrate Code Base Working Copy Long cycle: Incompatibility to other changes Huge amount of merge effort to integrate with other changes Long delays due to pessimistic locking Short cycle: Test Develop Incompatibilities show up immediately Merging of changes happens very infrequently Build 4

The Technical Solution for the problem is Continuous Integration Continuous Integration: Definition Continuous Integration is a software development practice where members of a team integrate their work frequently, usually each person integrates at least daily - leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible. http://martinfowler.com/articles/continuousintegration.html 5

Continuous Integration comprises a set of practices Continuous Integration: Principles Maintain a Single Source Repository Automate the Build Make Your Build Self-Testing Everyone Commits To the Mainline Every Day Every Commit Should Build the Mainline on an Integration Machine Main Focus of PoC Keep the Build Fast Test in a Clone of the Production Environment Make it Easy for Anyone to Get the Latest Executable Everyone can see what s happening Automate Deployment http://www.martinfowler.com/articles/continuousintegration.html 6

Regular and Incremental Changes need a Safety Net Continuous Integration: Build Dashboard Build of the entire code base of a software component after each commit to the mainline Measuring the quality of the build Unit tests Complexity (e.g. McCabe) Compliance to style guides Static Code Analysis Duplicate Code etc. 7

Each commit to the source control repository triggers a build on the Continuous Integration server Continuous Integration: Process http://www.javaworld.com/javaworld/jw-12-2008/images/cioverview.jpg 8

Tools are available for Java Development Continuous Integration: Tools CI Server Build Tool Source Repository and adaptable for z/os Code Inspection Artefact Repository 9

A Continuous Integration Build for System z software is quite complex Continuous Integration: System z Build Compile and link the entire software component Setup test environment create DB2 databases configure IMS or CICS transactions load DB2 test data initialize datasets provide mock-ups Run unit test suite Run code quality checks Report all results to a dashboard system Ł Each development team needs a separate development and test environment. 10

It is to expensive to use a Standard System z for Continuous Integration Cost Drivers System z LPAR costs for development Hardware Software System management Automation Backup which are only partially needed and add up to massive costs, when replicated for development teams Managed LPAR usage is often to restrictive Capping to reduce licence costs Overflow of production jobs Authorisation limitations Ł The solution to the problem is the Rational Development and Test Environment for System z 11

Most Java world tools can be adapted to RD&T PoC Setup at Generali: Apache Tomcat, JGit Apache Tomcat as Web Container jgit 3.1.0 Command Line Interface for Git/Gerrit Repository Access 12

Source Repository Access needs Java Implementation (or a persistent ANSI C developer to port the tools) Git Java implementation running in RD&T 9.0 USS git clone works J ISO8859-1 encoding 13

Most Java world tools can be adapted to RD&T PoC Setup at Generali: Hudson 3.1.0 Hudson 3.1.0 as CI Server 14

Most Java world tools without JNI can run on System z; File and System encoding IBM-1047 can sometimes need some work Hudson running in RD&T 9.0 USS YES, it is z/os 15

The next steps Running ANT on RD&T 9.0 Create a Hudson Job triggered by a code change in Git/Gerrit Create a build procedure for a COBOL program Run unit tests on the COBOL program 16

Anyone set out on the same track? 17