COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

35
COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant

Transcript of COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

Page 1: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

COMP-14: Automating your deployments using ANT

Gary S ClinkBusiness Consultant

Page 2: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation2COMP-14: Automating your deployments using ANT

P R E F A C E

Introduction

P R E F A C E

Page 3: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation3COMP-14: Automating your deployments using ANT

Agenda

Deployment and the Life-Cycle IT Infrastructure – Planning your Deployments Deployment Components

• Build

• Package

• Deploy

ANT• Overview

• Demonstration

Page 4: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation4COMP-14: Automating your deployments using ANT

Requirements Specification

Functional Specification

Technical Specification

Program Specification

Test

Business Objectives

Deploy

Waterfall

Code

Deployment and the Life-Cycle

Page 5: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation5COMP-14: Automating your deployments using ANT

Deployment and the Life-Cycle

Page 6: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation6COMP-14: Automating your deployments using ANT

Deployment

Deployment and the Life-Cycle

Page 7: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation7COMP-14: Automating your deployments using ANT

Deployment and the Life-cycle

Deployment is NOT a mile-stone but a task. Deployment SHOULD NOT take place at the end of a

project but DURING it.

Don’t let deployment be the Achilles’ Heel in your project!

Page 8: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation8COMP-14: Automating your deployments using ANT

Agenda

Deployment and the Life-Cycle IT Infrastructure – Planning your Deployments Deployment Components

• Build

• Package

• Deploy

ANT• Overview

• Demonstration

Page 9: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation9COMP-14: Automating your deployments using ANT

S

ervi

ce D

esk

Configuration Management Database (CMDB)

IncidentManagement

ProblemManagement

ChangeManagement

ConfigurationManagement

ReleaseManagement

Service Support

IT Infrastructure Library - Planning

Page 10: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation10COMP-14: Automating your deployments using ANT

i. Plan and oversee rollout of SW and HW

ii. Design procedures for distribution and installation of changes to IT systems

iii. Changes are traceable, secure, authorised, and tested

iv. Communicate with customers

v. Agree content of rollout for the Release

IT Infrastructure Library - Planning

Page 11: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation11COMP-14: Automating your deployments using ANT

vi. Release under control of Change and Configuration Management

vii. Copies of software are in DSL* and CMDB**

viii.Hardware changes are secure and traceable

(Continued)

*DSL = Definitive Software Library**CMDB = Configuration Management Database

IT Infrastructure Library - Planning

Page 12: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation12COMP-14: Automating your deployments using ANT

dd Gary's Laptop

nbgclink01 :Dell Latitude

C600

sports2000 :Progress OE 10.0B DB (Enterprise)

::Progress OE 10.0B DB (Enterprise)+ Install: = c:\testapp\database

Port:5067

«Progress Licence»

Dev elopment :Progress OE Studio 10.0B

::Progress OE Studio 10.0B- Install: = d:\progress\100b

«Progress App»

Sports2000 :Sports2000

::Sports2000- Install: = c:\sports2000

«Progress Licence»

WebClient :Progress WebClient 10.0B

::Progress WebClient 10.0B- Install: = c:\webClient

Operating Systems::

Windows XP Professional

Installed

«deploy»

Requies

TCP/IP

Installed

Recommendation: Document your Deployments

IT Infrastructure Library - Planning

Page 13: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation13COMP-14: Automating your deployments using ANT

Agenda

Deployment and the Life-Cycle IT Infrastructure – Planning your Deployments Deployment Components

• Build

• Package

• Deploy

ANT• Overview

• Demonstration

Page 14: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation14COMP-14: Automating your deployments using ANT

Build• Identify items to be compiled to produce runtime

deliverables (e.g. r-code/procedure-libraries). Package

• Identify items to configure into a working system. Deploy

• Validate release package, approve it and deploy to production.

Deployment Components

Page 15: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation15COMP-14: Automating your deployments using ANT

Agenda

Deployment and the Life-Cycle IT Infrastructure – Planning your Deployments Deployment Components

• Build

• Package

• Deploy

ANT• Overview

• Demonstration

Page 16: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation16COMP-14: Automating your deployments using ANT

Deployment Components - Build

Private• System that an individual developer works against

(Development). Integration

• Code changes promoted into an integration workspace and built together (Test).

QA• Integration Build with goal of handing off the

deliverables to the test team for validation (UAT). Release

• Integration build with goal of being release into production. Must meet test criteria and be signed off for release (Live).©2006 All content is property of Ledbetter & Harp LLC. All rights reserved.

Page 17: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation17COMP-14: Automating your deployments using ANT

Identify items to be built Begin the build (execute build scripts) Pipe output to log-file Review build results and address issues (Optional) Use smoke tests to validate core

functionality Label build and versions of source-code

used in build

Deployment Components - Build

Steps to executing a build

Page 18: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation18COMP-14: Automating your deployments using ANT

Vertical Markets Customer Versions Localisation Platform Specifics …

Deployment Components - Build

Customised Builds

Page 19: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation19COMP-14: Automating your deployments using ANT

Recommendation: Automate your build

Joel Spolsky, Joel On Software

“It’s crucial that everything it takes to make a final build is done by the daily build script. ”

Page 20: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation20COMP-14: Automating your deployments using ANT

Recommendation: Run your builds often

Steve McConnell, Rapid Development

“Ensuring that the code base is always compilable and executable avoids running into integration problems at the end of a project. ”

Page 21: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation21COMP-14: Automating your deployments using ANT

Agenda

Deployment and the Life-Cycle IT Infrastructure – Planning your Deployments Deployment Components

• Build

• Package

• Deploy

ANT• Overview

• Demonstration

Page 22: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation22COMP-14: Automating your deployments using ANT

Add any additional items necessary for package (e.g. scripts, documents, help, configurations, etc)

Package items (e.g. zip, tar) Generate Release Note Migrate to appropriate region for testing

Deployment Components - Package

Version control deliverables

Commercial

Page 23: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation23COMP-14: Automating your deployments using ANT

Agenda

Deployment and the Life-Cycle IT Infrastructure – Planning your Deployments Deployment Components

• Build

• Package

• Deploy

ANT• Overview

• Demonstration

Page 24: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation24COMP-14: Automating your deployments using ANT

Deployment Components - Deploy

Finalise Release Notes Submit Change Request to modify

production baseline Review and Authorise release Communicate release date and contents to

stakeholders and support staff

Page 25: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation25COMP-14: Automating your deployments using ANT

Roll-out plan (who, what, where, when, how) Contingency planning (roll-back) Communication

It’s more than just technology!

Deployment Components - Package

Page 26: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation26COMP-14: Automating your deployments using ANT

Agenda

Deployment and the Life-Cycle IT Infrastructure – Planning your Deployments Deployment Components

• Build

• Package

• Deploy

ANT• Overview

• Demonstration

Page 27: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation27COMP-14: Automating your deployments using ANT

Free & open-source (ant.apache.org) Written in Java – platform independent Scripts written in XML – can use any editor Performs many tasks (e.g. compile, copy, run

test scripts, CVS, …)

ANT - Overview

Apache Ant.

Page 28: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation28COMP-14: Automating your deployments using ANT

Extension to ANT for OpenEdge Created by Gilles Querret

(Phenix Engineering – France) Allows…

• Run • Compile• Schema management• Procedure-Library• …

ANT - Overview

Progress Compile Tool (PCT)

Page 29: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation29COMP-14: Automating your deployments using ANT

Agenda

Deployment and the Life-Cycle IT Infrastructure – Planning your Deployments Deployment Components

• Build

• Package

• Deploy

ANT• Overview

• Demonstration

Page 30: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation30COMP-14: Automating your deployments using ANT

<project name=“myProject” default=“init”> <description>Example project</description>

<!-- set global properties for this build --> <property name=“build” location=“build”/>

<target name=“init”>

<!–- create a directory --> <mkdir dir=“${build}”/> </target>

</project>

Sample: ANT Script

Page 31: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation31COMP-14: Automating your deployments using ANT

In Summary

Plan your Deployments Implement nightly builds Automate as much as

possible Implement ANT Migrate to OpenEdge

Architect

Page 32: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation32COMP-14: Automating your deployments using ANT

Education / Documentation References

ANT http://ant.apache.org PCT http://pct.sourceforge.net ITIL http://www.itil.co.uk ITIL http://www/itil-itsm-world.com ANT/Eclipse Integration

http://publib.boulder.ibm.com/infocenter/wsad512/topic/org.eclipse.platform.doc.user/gettingStarted/qs-81_basics.htm

Page 33: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation33COMP-14: Automating your deployments using ANT

Questions?

Page 34: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation34COMP-14: Automating your deployments using ANT

Thank you foryour time

Page 35: COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.

© 2006 Progress Software Corporation35COMP-14: Automating your deployments using ANT