Visual Studio Release Management

Download Report

Transcript Visual Studio Release Management

Introduction
http://aka.ms/VSUK-RM
• Provide value more quickly
• High quality low defect software
• Reduce deployment risk
• Continually improve the release
process
• Provide metrics and transparency
• Producing consistent results with
packaging and deployment
• Resourcing is time intensive and
hard to estimate
• To many moving parts introduces
risk, complexity and errors
Operate
Define
Monitor
Sprint
Deliver
Complex
Error-prone
Chaotic
CUSTOMERS
Automate The Release Cycle
Automates Deployments
TFS
DEV
INT
QA
PROD
Automate The Release Cycle
Deploys the same way to all stages
TFS
DEV
INT
QA
PROD
Automate The Release Cycle
Full Traceability
TFS
DEV
INT
QA
PROD
Visual Studio Release Management
Architecture
Agents
Server
Clients
Release
Management
Release Management Client for
Visual Studio 2013
Release Management Server
for
Team Foundation Server 2013
Microsoft
Deployment
Agent
DEV
TFS Build
Drop Location
RM Server
QA
RM Web
RM Desktop
Welcome to the Release Management
Client
TFS
Connection
• Integrate the Release Management
Server with one or more TFS
instances
Build
integration
• Integrate TFS Build and Release
Management
Groups
Users
Defining your environments and release
and audit path
Define Stage
Types
Add Servers
Add
Environments
Link
Environments
to Servers
Release Path
Stages
• Define Stages
• Stage order
• Per Stage
Automation • Acceptance and validation steps
Approvals
• Acceptance, Deployment, Validation and
Approval
• User or group
Defining your deployment components
Components
Component
A
Component
B
Component
C
A Release
A Component
Source
Deployment
(Where)
(How)
Component
Deployment Tools
Choose from existing tools Add your own tools to the
in the Inventory
Inventory
XCopy, IIS, Azure, MTM…
Covered later
Defining your deployment
Release Template
Workflow
Servers
Template
Components
Flows &
Actions
Workflow
Actions
Copy Across Stages
Running the deployment
Deployment
Change
application
TFS Build
Release
Release
Workflow
Approvals and
validations
Optional:
Release can
start with no
build
Break
Parameterising for different
environments
Release
Management
can set values
into file(s)
before/after
release
Supply drop
location with
tokenized form
__xyz__
Build Process will
swap *.*.token
with *.*
web.config
web.config.token
Integrating your own deployment tools
and actions
Release
Management
allows custom
tools/actions to
be added
Add Tool to
Add Action use a
inventory
supplied Tool but
(exe/scripts etc..) allowing params
to be delegated
to release
template
Managing deployment exceptions
Release
Management
can provide
rollbacks
Compensating
Transactions
Rollback /
Rollback Always
• If D1 fails, the following rollbacks will
execute, in order: RA1, R1, RA2.
• If D2 fails, RA1, R1, R2, RA2 will execute.
• If D3 fails, RA1, R1, R2, RA2 will execute,
the same as for D2.
• If D1, D2, and D3 all succeed, no
rollback blocks will execute.
Integrating automated testing
Release
Management
Integrates MTM
to run
automated tests
Define Test
Component
using the MTM
Tool
Supply MTM Test
Suite and
Environment
parameters
Heterogeneous deployments
Release
Management
can deploy any
code onto a
windows
environment
No deployment
agent for nonwindows
machines
Deployment
agent as a proxy
can execute
remote actions
to non-windows
machines
Proxy Deployment
Agent
Build
Artefacts
Drop Location
RM Server
Non-Windows
Servers
Licensing model
Release Management Client for
Visual Studio 2013
Release Management Server
for
Team Foundation Server 2013
Microsoft
Deployment
Agent
Create, Update and Delete Release Pipeline Workflow
Approve stages and
sign-off on release
Deploy to Server
No TFS CAL
Required
Release Management Client included with specific MSDN
subscriptions, licensed per user.
CAL waiver for a user
who just wants to
approve a stage
License required for each target machine receiving a deployment,
similar in concept to System Center management licenses.
Standard Server
management Licensing
Model
(similar to System Center)
Preferred offering on Windows Server Standard
and scenarios with light to no virtualization
Up to 2 processors and 2 Virtual Machines on-premise
Up to 2 Virtual Machines on Shared Servers (Public
Cloud)
Visual Studio Deployment Standard:
• Max 2 processors and 2 VMs per target machine, on
premises or cloud
Preferred offering on Windows Server Datacenter
and heavy virtualization scenarios
Up to 2 processors and unlimited Virtual Machines onpremise
Up to 8 Virtual Machines on Shared Servers (Public Cloud)
Visual Studio Deployment Datacenter:
• Max 2 processors but unlimited VMs per on premises
target machine
• Max 2 processors and 8 VMs per cloud target machine
Available in all major VL Programs - Open, Open Value, Select, EA, EAP and SCE
Wrap-up