InRelease Deployment Editor Preview

Posted by Claude Remillard - December 11, 2012

header-picture

This post is about the InRelease Deployment Editor that we will include in our next release of InRelease, our release management solution, to be released in January (wow, I used release 6 times in one sentence!).

The reasoning for the Deployment Editor will be discussed in follow-up posts.

The Deployment Editor allows the configuration of complex deployments for the various stage of a release path, the pre-defined series of stages an application needs to go through on its merry way to production.

 

image

 

The basic principle of the Designer is quite simple. You select which stage you want to work on using the control at the top. You then select items in the toolbox, on the left side, and you drag them on the canvas to compose your deployment procedure for that specific stage. You can copy procedure, or sections of procedures, from one stage to another. Once the deployment procedure is defined, it will be used to perform the deployments for that application on that stage.

The toolbox contains 4 types of items to build your procedures.

Basic Control Flow

Basic Control flow are containers that can specify either a parallel or sequential execution of what is included in them. You drag them on the canvas and and then you drag the servers and actions you want to be performed in the order you desire. You can include control flow boxes inside other control flow boxes, making the approach very flexible. Note that these are the same as when you are creating Build Definition in Team Build. The only difference is that we added a specialized rollback control flow that you add to your deployment procedure to include the actions you want to be performed in case of a failed deployment.

Servers

Servers defined in the release path are made available in the Editor. You can drag an available server on a control flow container to indicate on which server you want to perform deployments and actions. The control flow allows you to set up deployments to be done on multiple servers simultaneously, in sequence or a mix of both.

Components

The components that need to be deployed as part of your applications are added by right-clicking the component title in the toolbox. Created components are then shown in the toolbox where you can drag them onto a server to indicate that the components will be deployed on it. You configure additional details of the components directly in the Editor.

The servers available for the stage, as defined in your preconfigured release paths are also available in the toolbox. Deployment actions are also available. Deployment actions come in two flavours, actions included you want to perform on which server and on which order.

Actions

Deployment Actions are also available in the toolbox, organized in categories. There are 2 types of actions, those included in InRelease and those added by the user in the action inventory. Security allows team to decide which Action can be used in which context. To configure and Action, you simply drag it from the toolbox to the Editor and configure its specific parameters. Most actions need to be dragged on a target server, however some actions – like notifications – can be executed by the InRelease Server directly. We plan on augmenting our list of actions as we go, based on customer requests.

The list of actions planned to be available out of the box in the very short term are:

Category

Action

MS-SQL

Execute SQL Script

Create SQL Database

Drop SQL Database

Deploy DACPAC

SSRS

Deploy Reporting Services

MSI

Deploy MSI

XBAP

Deploy XBAP

Windows OS

XCopy Package Folder

Copy File or Folder

Create Folder

Delete File or Folder

Rename File or Folder

Move File or Folder

Modify File or Folder Attributes

Modify File or Folder Owner

Create Environment Variables

Delete Environment Variables

Modify Environment Variables

Restart Deployer Host

Kill Process by Name

Kill Process by Id

Run Command Line

Run Command Line as User

Create Windows Registry Key

Delete Windows Registry Key

Modify Windows Registry Key

Create Windows Registry Value

Delete Windows Registry Value

Modify Windows Registry Value

Modify an INI file

Extract ZIP content

Windows Service

Create Windows Service

Remove Windows Service

Configure Windows Service

Start Windows Service

Stop Windows Service

Restart Windows Service

IIS

Create Web Application

Remove Web Application

Configure Web Application

Create Web Site

Remove Web Site

Configure Web Site

Create Application Pool

Remove Application Pool

Configure Application Pool

Create Virtual Directory

Remove Virtual Directory

Azure

Provision an Azure VM

Stop an Azure VM

Start an Azure VM

Tests

Start MTM Automated Tests

I believe that the combination of the new Workflow Foundation-based Editor with pre-made actions and extendibility will allow our customers to reach their release goals more easily with InRelease!

Topics: Blog, InRelease


Recent Posts

InCycle Named Azure Data Explorer (ADX) Partner

read more

OpsHub & InCycle Help Top Medical Device Company Accelerate Innovation

read more

InCycle Continues to Lead, Recognized by Microsoft for Industry Innovation. Earns Impact Award.

read more