Created by the Community for the Community BizTalk & Build.

22
Created by the Community for the Community BizTalk & Build LIGHT AND EASY

Transcript of Created by the Community for the Community BizTalk & Build.

Page 1: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

BizTalk & Build

LIGHT AND EASY

Page 2: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

Implementing an automated Build Process with BizTalk 2009Michael StephensonConnected Systems Consulting LtdMVP - Biztalk

BizTalk Light and Easy Webcast Series

Page 3: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

Session Agenda

Setting the scene

What’s changed for BizTalk 2009

Setting up a basic build

Solving some common problems

Setting up Continuous Integration

Summary

Page 4: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

Setting the scene

What is build automation?Benefits

Improve qualityImprove team workingReduces riskSaves time and money

“We want to take all of the good things we have done on .net projects and apply then to BizTalk development”

Page 5: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

Good Practices

Good Practices

Continuous

Integration

BizUnit Testing

Always deploying a build from a

clean machineNightl

y Builds

Unit Testin

g

Versioned

history of builds

Everyone knows what’s

happening

Page 6: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

Common Bad Practices

Bad Practices

“It works on my

machine”

Building manually

or not including

everything

Not building on a

clean/dedicated

machineInconsistent

results

No testin

g

Poor or no

versioning

approach

Constantly breaking the build and not fixing it quickly

Page 7: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

A Typical Process

The developer makes changes

The developer tests and

Builds the code locally

Check in

CI Server Build & Test

Delivery made available

Page 8: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

The Build Output?

Deployable MSIDocumentationCode which has been testedCode AnalysisConfiguration files for environments

Page 9: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

What’s New in BizTalk 2009?

BizTalk Projects are C# Projects (MsBuild)No more Deployment/DevelopmentInstall project build components on own

Page 10: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

Getting back to the demo’s

Quick overview of demoSolution structureWhat has changed since the first video

Build tasks added

BizTalk Build Generator

Page 11: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

Creating the Build Scripts with BizTalk Build Generator

DEMO…

Page 12: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

Solving some common problems

Extending the core buildThings the demo needs (e.g: IIS)Integrating the BizTalk DocumenterIntegrating the BizTalk Orchestration Profiler

Managing configuration settings and bindingsOthers:

Implementing VersioninsPublishing web servicesIntegrating BAM & BRE into the build

Page 13: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

Extending the core build

DEMO…

Page 14: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

Adding BizTalk Documenter & Orchestration Profiler

DEMO…

Page 15: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

Managing Binding & Configuration Files

DEMO…

Page 16: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

Recap – Where are we now?

Structured BuildCan run on any developers machineProduces required outputEasy for new team membersNo CI yet!!

Page 17: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

Setting up CI

Why is this important?Clean machineProvides versioningBuild history

What do we useTFS/CCNet

Page 18: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

Setting up the CCNet solution

DEMO…

Page 19: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

Resources

Resource Description

SDC Build Tasks These are some of the MsBuild tasks I use to extend my build scripts.

BizTalk Build Generator This is the codeplex site for the build generator tool

Configuration Management Tool

This is the codeplex site for the Configuration Manager tool

Cruise Control.net This is the site for Cruise Control

MsBuild Extension Pack Some community MsBuild tasks

Page 20: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

Other Resources

Resource Description

Deployment Framework for BizTalk

This is a Codeplex offering a similar approach to what we have discussed in this video to some parts of the development and deployment process.

BizTalk Development Practices Videos

These video’s from the Swedish BizTalk User Group have some very good information about what good practices you should do during BizTalk devlopment.

Part 1Part 2

Page 21: Created by the Community for the Community BizTalk & Build.

Created by the Communityfor the Community

Summary

The importance of automated buildDemonstration of a number of techniquesDownloadable sampleFollow on videos?

Page 22: Created by the Community for the Community BizTalk & Build.

© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.

The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after

the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

BizTalk Light and Easy Webcast Series

Created by the Community for the CommunityMeet the team….