Showing posts with label TeamBuild. Show all posts
Showing posts with label TeamBuild. Show all posts

Thursday, September 19, 2013

The HOL "Building a Release Pipeline with Team Foundation Server 2012" thing

Microsoft Downloads - Building a Release Pipeline with Team Foundation Server 2012 – Hands-on Labs

These labs teach you how to implement a continuous delivery release pipeline by using Team Foundation Server 2012. You begin by building a simple release pipeline that supports continuous integration. Later labs modify and extend the pipeline until it supports continuous delivery and includes features such as automated deployments and testing.

Version: 1

Date Published: 9/19/2013

ReleasePipelineHOL_V1.zip, 80.8 MB

This series of labs are a companion to the book "Building a Release Pipeline with Team Foundation Server 2012." They teach you how to implement a continuous delivery release pipeline by using Team Foundation Server 2012. You begin by building a simple release pipeline that supports continuous integration, but has no other automation. Subsequent labs modify and extend the pipeline until it supports continuous delivery and includes features such as automated deployments and automated testing.

Here's a snap of the zip contents;

image

The ToC from the Introduction doc;

image

image

Finally a snip from the doc

Objectives

This series of labs teaches you how to implement a continuous delivery release pipeline by using Team Foundation Server 2012. You begin by building a simple release pipeline that supports continuous integration, but has no other automation. Subsequent labs modify and extend the pipeline until it supports continuous delivery and includes features such as automated deployments and automated testing.

A good starting point is to read the guidance that the labs are based on, which is Building a Release Pipeline with Team Foundation Server 2012. [GD: seems this link is active right now] This guidance emphasizes three patterns that are critical to developing a continuous delivery pipeline and whose importance is reinforced by the hands-on labs (HOL). The patterns are:

· Orchestration

· Automation

· Monitoring and Metrics

Even as new technologies become available, the underlying patterns that shape your development efforts will remain the same.

...

Contents of the HOLs

One the biggest challenges in learning about distributed architectures such as the one required for these labs is creating the infrastructure. The details of setting up a complex infrastructure can be a serious distraction that makes focusing on the actual purpose of the labs difficult. To remove this difficulty, the labs have two versions. Labs 1 through 5 assume that you are using the Brian Keller VM for your infrastructure.

Lab 6 is considered an advanced lab, and assumes you are not using the Brian Keller VM. This is because it shows you how to install the components of the Trey Research Windows Phone 8 app and how to deploy a Windows Communication Foundation (WCF) service to Windows Azure. Currently, the Brian Keller VM cannot support these features, so you must create the entire infrastructure yourself. Here is a more detailed description of the labs.

· Lab 1: Starting Point. In this lab you install the Trey Research application and create the initial version of the Trey Research release pipeline.

· Lab 2: Orchestration. This is a set of four labs. In the first lab you orchestrate the commit stage of the pipeline. In the second lab you orchestrate the rest of the pipeline stages. In the third lab you configure the pipeline. In the fourth lab you test the orchestration.

· Lab 3: Automation. This is a series of three labs. In the first lab you automate the deployment of the WCF service. In the second lab you automate the deployment of the WPF application. In the third lab you automate the tests. At the conclusion of the Automation HOL, you will have created a continuous delivery pipeline.

· Lab 4: Monitoring and Metrics. This is a set of two labs. In the first lab you learn how to monitor a continuous delivery pipeline. In the second lab you learn how to create custom reports in Microsoft Team Foundation Server (TFS) to track some of the key metrics that are used with continuous delivery projects.

· Lab 5: Adding New Stages to the Pipeline. In this lab you learn how to add new stages to the pipeline. New stages contain new tests that improve how you test the pipeline

· Lab 6: Advanced. This is a set of two labs. The first lab is similar to the Starting Point lab, but has additional sections that show you how to add the components for the Windows Phone 8 app and the WCF Windows Azure service. The second lab shows you how to automatically deploy the components for the Windows Phone 8 app.

Completing the Labs in Sequence

As was mentioned above, there are two ways to complete all the labs. Here are the two possible sequences.

With the Brian Keller VM

Here is the sequence you should follow if you are using the Brian Keller VM.

...

Without the Brian Keller VM

Here is the sequence you should follow if you are not using the Brian Keller VM.

...

Looks interesting (for a guy in my shoes at least... ;)

 

Related Past Post XRef:
Featuring Agile Planning and Portfolio Management with TFS2013 in these Hands On Labs
Visual Studio 2013 ALM and HOL VM now available...
Playing with SQL Server 2014 (and VS2013) the Azure VM way
VS2012 Update 1 ALM VM and HOL / Demo Scripts now available
The VS 2012 ALM Virtual Machine and VS 2012 Update 1 (In short, there's an updated VM coming, don't install it on this VM if you don't have too)
The big BK has updated the Visual Studio 2012 RC ALM Virtual Machine and Hands-on-Labs
VS 11 ALM DemoMates updated for the Beta
Visual Studio/TFS11 ALM Demo's... Mate! See the VS/TFS 11 ALM's hands-on-labs in DemoMate form
Visual Studio 11 ALM VHD's, VirtualBoxed (and even on x86 hosts too)
Want to play with Visual Studio 11 & TFS 11 Dev Preview but don't want to install it (and have access to a Hyper-V server)? Here's a VHD just for

Wednesday, July 24, 2013

Building on Build (not that Build) MSBuild and C#/VB compilers, are now part of Visual Studio (and it's release cycle)

The Visual Studio Blog - MSBuild is now part of Visual Studio!

We made a number of exciting changes to MSBuild for Visual Studio 2013, including rethinking the fundamental relationship between MSBuild, Visual Studio, and the .NET Framework. MSBuild has shipped as a component of the .NET framework since it was first introduced in 2005 with .NET 2.0, despite the fact that it is, first and foremost, a development tool leveraged primarily by Visual Studio developers. Starting with Visual Studio 2013, the 2013 version of MSBuild will ship as a part of Visual Studio instead of the .NET Framework. This transition allows us to more rapidly evolve MSBuild.

Most of the important changes this release stem from MSBuild’s transition into Visual Studio:

  • MSBuild and the VB/C# compilers are now available as a standalone package, Microsoft® Build Tools. This package is installed with Visual Studio 2013.
  • We are simplifying MSBuild’s versioning story. Each version of Visual Studio will have a corresponding version of the Microsoft® Build Tools including MSBuild, the VB/C# compilers, and common tasks and targets that make up the 2013 Toolset. There will no longer be any sub Toolset versions. Visual Studio 2013 will exclusively use 2013 MSBuild and VB/C# compilers (assembly version 12.0) and the 2013 Toolset (ToolsVersion 12.0).
  • The way MSBuild selects Toolset versions for command line builds is now identical to the way Visual Studio builds projects. If your projects build in VS, they will build from the command line. No more manually overriding Toolset versions and hunting down missing dependencies.
  • MSBuild has a dependency on the latest Framework, .NET 4.5.1.

This change does not mean that we are removing previously shipped versions of MSBuild from the .NET Framework. MSBuild 4.5 is still part of the .NET 4.5.1 Framework. The Framework’s MSBuild will still be used by Visual Studio 2012, and is able to build any projects that round trip from Visual Studio 2013 to Visual Studio 2012. However, future innovation, new features, and support for new project types will not be ported to the Framework MSBuild.

The New Microsoft® Build Tools Package

MSBuild is now a component of Visual Studio and will ship with all SKUs of Visual Studio, including Team Build so if you use Visual Studio all of your build needs should be covered. ...

MSBuild and its Toolset now Version with Visual Studio

We plan to evolve our build tools with each version of Visual Studio from now on...

MSBuild’s New Binaries Location

Shipping MSBuild separately from the .NET Framework required us to relocate MSBuild and the VB/C# compilers....

Command Line Builds and Asset Compatibility in MSBuild 2013

In MSBuild 2013 we are removing a long standing discontinuity between command line builds and builds from within Visual Studio....

Referencing MSBuild 2013

Referencing the latest MSBuild is as simple as it was in .NET 4.5. Since MSBuild 2013 is not a Framework component, it now shows up in the Extensions tab for assemblies. MSBuild’s ...

image..."

Interesting move. I wonder how it will impact us 2-4 years from now? Are we going to have Version-Hell? Not that I'm complaining about the increase in cadence nor this move, actually I applaud it. But we have to be careful what we wish for...

Wednesday, December 12, 2012

Attrice's Team Foundation Sidekicks for 2012 [including Team Foundation Service] now available [and still free]

Attrice - Team Foundation Sidekicks for 2012 available

Team Foundation Sidekicks for Visual Studio and Team Foundation Server 2012 is available!

This release functionality is mainly identical to the version of Sidekicks for Visual Studio 2010, with support of TFS both on premise and in-the-cloud (Team Foundation Service).

For 2012 we support both stand-alone client application and Visual Studio integration package; the latter uses VS 2012 extension registration mechanism and is available through VS Extensions Manager. Note that there are separate installations for stand-alone app and VS package.

Team Foundation Sidekicks

General

Team Foundation Sidekicks is a suite of tools for Microsoft Team Foundation Server administrators and advanced users providing Graphic User Interface for administrative and advanced version control tasks in multi-user TFS environments.

Version 2.4 of Team Foundation Sidekicks includes Users View Sidekick, Permission Sidekick, Code Review Sidekick, Shelveset Sidekick, Labels Sidekick, History Sidekick, Workspace Sidekick, Status Sidekick and Users View Sidekick in uniform GUI stand-alone application, and Visual Studio Integraton Package providing VS integration for all sidekicks as well as additional features such as Search Items dialog, dynamic History and Build Type editing support.

Single installation package contains versions of application compatible both with Team Foundation Server 2005 and Team Foundation Server 2008.

Team Foundation Server 2010

Version 3.1 of Team Foundation Sidekicks is available for Visual Studio© 2010 and Team Foundation Server 2010.

The following features are currently not available in version 3.1 (as compared with 2.4): Build Type editing support.

Team Foundation Server 2012

Version 4.5 of Team Foundation Sidekicks is available for Visual Studio© 2012, Team Foundation Server 2012 and Team Foundation Service.

Note that version 4.5 has separate installations for stand-alone application and Visual Studio package.

Legal

The Team Foundation Sidekicks suite is a freeware and may be used for any commercial or noncommercial purpose under the license.

Download...

image

Holly cow, it's been over four years since I've blogged about the the Team Foundation Sidekicks? (Team Foundation Sidekicks 2.2 Released – Includes new Permissions Sidekick! )

It's cool to see that this is alive and well and continuing to grow. Love that it supports the Team Foundation Service... :)

 

Related Past Post XRef:
Team Foundation Sidekicks 2.2 Released – Includes new Permissions Sidekick!
Team Foundation Sidekicks 2.1 Released
Team Foundation SideKicks v2 Released (TFS2005 & TFS2008)
TFS Sidekicks 1.2 (with new Labels Sidekick) Released

Friday, September 14, 2012

Too many Team Projects? Have a bunch you need to manage? Do the same TFS stuff over and over? TFS Team Project Manager might be your ticket to sanity (and its source is available too!)

Visual Studio Gallery - TFS Team Project Manager

"TFS Team Project Manager automates various tasks across Team Projects in Team Foundation Server. If you find yourself managing multiple Team Projects for an organization and have recurring tasks and questions that repeat themselves over and over again, Team Project Manager probably has some answers for you

TFS Team Project Manager can help you...

  • Manage build definitions
    • View and delete build definitions
    • Update common properties within build definitions
  • Manage build process templates
    • Understand which build templates are used by which build definitions
    • Unregister existing build process templates
    • Register new or update existing build process templates
  • Manage security
    • Understand which security groups have which members
    • Delete security groups
    • Add security groups
  • Manage source control
    • Understand which projects have which source control settings (multiple check-out, get latest on check-out, check-in notes)
    • Update source control settings
    • Retrieve the latest changesets (e.g. to see which projects are still active)
  • Manage work item configuration
    • Compare work item configurations (i.e. work item type definitions, categories, process configuration) with various sources, e.g. to determine which Process Template was likely used to create which project
    • Understand which projects use which work item types and how many work items there are of each
    • Import new or update existing work item types
    • Manage work item categories
    • Manage process configuration (i.e. common and agile configuration)

TFS Team Project Manager works against TFS 2005, 2008, 2010 and 2012.

Here's a screenshot for the work item configuration comparison screen, more screenshots are available on the Documentation page on the website."

CodePlex - TFS Team Project Manager

image

As mentioned above, make sure you check out all the screenshots and information on the Documentation page of the project.

9-14-2012 4-58-18 PM

The best thing (besides that wit works against Team Foundation Server 2005, 2008, 2010 or 2012)? The source for it all is available! Nice!

Thursday, September 13, 2012

TFS 2012 Power Tools to the People! (plus MSSCCI Provider & Build Extensions too)

Microsoft Visual Studio Team Foundation Server 2012 Power Tools

"Power Tools are a set of enhancements, tools, and command-line utilities that increase productivity of Team Foundation Server scenarios.

This release supports Microsoft Visual Studio Team Foundation Server 2012.

  • Best Practices Analyze
  • Process Template Editor
  • Storyboard Shapes
  • Team Explorer Enhancements
  • Team Foundation Power Tool Command Line (tfpt.exe)
  • Team Foundation Server Backups
  • Test Attachment Cleaner
  • Windows PowerShell Cmdlets
  • Windows Shell Extensions
  • Work Item Templates

..."

Microsoft Visual Studio Team Foundation Server 2012 Build Extensions

"The Team Foundation Build Extensions provide the ability to execute Ant or Maven 2 builds from Team Foundation Server 2012 and publish the results of the build along with any associated JUnit test results back to Team Foundation Server.  This release is compatible with Team Foundation Server 2012 only. For Team Foundation Server 2005, Team Foundation Server 2008 and Team Foundation Server 2010 see previous release here.

Prerequisites

You must have the following installed on the same server that is hosting the Team Foundation Build Agent:

  • Java JDK (the latest one available from your JDK vendor is recommended)
  • Ant (if Ant support is required).
  • Maven 2 (if Maven 2 support is required)
  • Maven 3 (if Maven 3 support is required)

In addition, you should configure the appropriate environment variables (i.e. JAVA_HOME, ANT_HOME, M2_HOME) as per the relevant install guidance for Ant and Maven.

..."

Microsoft Visual Studio Team Foundation Server 2012 MSSCCI Provider 32-bit / 64-bit

"The Team Foundation Server MSSCCI Provider enables integrated use of Team Foundation Version Control with products that do not support Team Explorer integration.

This version includes:

  • Updated provider to link against Microsoft Visual Studio Team Foundation Server 2012 assemblies
  • Improved connection experience, added support for connections to hosted Team Foundation Server service
  • Unblocked Visual Studio 2005 clients

Installation Instructions

Download and run the installer on a computer with one of the following products:

  • Visual Studio 2005
  • Visual Studio .NET 2003
  • Visual C++ 6 SP6
  • Visual Basic 6 SP6
  • Visual FoxPro 9 SP2
  • Microsoft Access 2007
  • SQL Server Management Studio
  • Enterprise Architect 7.5
  • PowerBuilder 11.5
  • Microsoft eMbedded VC++ 4.0

..."

Tools and utilities that no TFS user or admin should be without...

 

Related Past Post XRef:
TFS Power Tools March 2011 Update (Backup/Restore, Shell Extension and tfpt enhancements and bug squashing added for flavor)
A TFS 2010 Power Tools “Must Get” Update - September 2010 Release (Think the “zomg TFS server backup/restore help and more” release)
It’s TFS Tool Time! TFS 2010 RTM compatibility Power Tools, MSSCCI and new Build Extension releases
Extending the Team Members feature in the VSTS 2008 TFS Power Tools October 2008 Release. For example, adding Skype support…
VSTS 2008 TFS Power Tools - October 2008 (aka 2.3) Released – Manage Source Files via Windows Shell/Explorer extension, new PowerShell extensions and Team Members tool
TFS Power Tools - July 2008 Release (aka v2.2) – Welcome to Alert editing goodness
TFS Power Tools - March 2008 Release (aka v2.1). Build Notification, Find in Source Control, Process Template Editor TFS2008 updates and Destroying Work Items...
VSTS 2008 TFS Power Tools (December 2007) Released (aka TFPT 2.0)
TFS Power Tools, v1.3 (September 2007 Release), with Two New Tools, TFS Best Practices Analyzer and Work Item Templates
Team Foundation Server Power Tool, Process Template Editor Tip - If you open a *.WIT file and it appears as a normal XML file, instead of in a Designer...
Microsoft Visual Studio 2005 Team Foundation Server Power Tool (formerly known as Power Toys) - V1.2, February 2007

Saturday, June 09, 2012

The big BK has updated the Visual Studio 2012 RC ALM Virtual Machine and Hands-on-Labs

Brian Keller - Updated: Visual Studio 2012 RC ALM Virtual Machine and Hands-on-Labs / Demo Scripts

"The Visual Studio 2012 RC ALM Virtual Machine is now available!

This new VM replaces the previously available Visual Studio 11 Beta ALM virtual machine to use the latest Visual Studio 2012 RC releases.

This is hands-down the most comprehensive ALM virtual machine yet. It includes 18 hands-on-labs / demo scripts. 6 of these were upgraded from the Visual Studio 11 ALM virtual machine, 11 of these were upgraded from the older Visual Studio 2010 ALM virtual machine, and one is brand new, highlighting the PreEmptive Analytics integration in Team Foundation Server 2012. Phew!"

Brian Keller - Visual Studio 11 Application Lifecycle Management Virtual Machine and Hands-on-Labs / Demo Scripts

June 6, 2012 Update: This post and the accompanying downloads have been updated based on the Visual Studio 2012 RC which was released last week.

I’m very pleased to announce the availability of the Visual Studio 2012 RC ALM Virtual Machine along with 18 hands-on-labs / demo scripts. This includes 7 ALM scenarios which are new in Visual Studio 2012, and another 11 scenarios which were introduced in Visual Studio 2010, giving you a single virtual environment for learning about or demonstrating a wide range of ALM capabilities.

You can download and install the RC of Visual Studio 2012 (and Team Foundation Server 2012, .NET Framework 4.5, etc.) and even use it in production with our “go live” license. But if you would like a fast way to understand what is new for application lifecycle management in this release, this virtual machine is pre-configured with all of the necessary software and sample data for you.

Before I get into what’s included, there are a few quick limitations to disclose:

  • This is a Hyper-V virtual machine and works with Windows Server 2008 x64 (Windows Server 2008 R2 SP1 is recommended). If you try to load this with Virtual PC it will blue screen since Virtual PC does not support 64-bit operating systems. This virtual machine has also been tested to work with the Windows 8 Release Preview and the Windows Server 2012 Release Candidate, but the instructions provided assume you are using Windows Server 2008 R2 SP1. Some modification may be needed to use other platforms.
  • Windows is configured to set the system clock to May 16, 2012 every time you start this virtual machine. This is to support the project management hands-on-lab. If you want to work with this virtual machine beyond the specific hands-on-labs scenarios, you may need to disable the Set Date and Time task (Task Scheduler -> Task Scheduler Library -> Set Date and Time -> Right-Click -> Disable).
  • Please take a few minutes to read the attached “Working with…” document for some important instructions on properly importing and working with this virtual machine.

With the limitations out of the way, onto the fun stuff…

...

There are 18 hands-on-labs for you to take a scripted approach towards learning this content. These labs double as demo scripts in case you want to show off these features to others:

New features in Visual Studio 2012:

Labs upgraded from Visual Studio 2010:

..."

And of course he's provided download manager friendly list of download url's to make getting this VHD easy...

Now what would be cool would be having this VM available on the new Windows Azure VM service (actually for me to be able to create a diff off of it)

 

Related Past Post XRef:
VS 11 ALM DemoMates updated for the Beta

Visual Studio/TFS11 ALM Demo's... Mate! See the VS/TFS 11 ALM's hands-on-labs in DemoMate form

Visual Studio 11 ALM VHD's, VirtualBoxed (and even on x86 hosts too)
Want to play with Visual Studio 11 & TFS 11 Dev Preview but don't want to install it (and have access to a Hyper-V server)? Here's a VHD just for

Tuesday, December 20, 2011

TFS + NuGet ='s? TFS NuGetter of course!

CodePlex - TFS NuGetter

"The NuGet project was designed to provide developers with a standardized mechanism for sharing and installing code, assemblies, etc. The creation of the packages is pretty straightforward to do in a manual way but wouldn’t it be nice if it was all automated? And, not just the packaging, the versioning and deploying should be automated as well. This way, you as the developer can create a library, build it, deploy it and immediately test it.

This is the goal of NuGetter - it is an extension to the Team Foundation Server 2010 build process that will perform all of the necessary versioning, packaging and deployment functions in a customizable and completely repeatable way.

NuGetter does not require but works better and provides more robust build features when used with TfsVersioning build versioning manager (CodePlex Project)

Capabilities/Features:

  • Includes all phases of the build process: compile, version, pre-package, package, push/deploy and publish - managed within TFS 2010 automated build
  • NuGet Package and deploy features for a simple to an extremely complex library package
  • Single or multiple solution builds
  • Single or multiple configuration builds
  • Manage versioning of the assemblies coordinated or separately from the NuGet package
  • Create a package, create and push a package or create a package and push and publish to a NuGet gallery
  • Build and have immediate access to the package in a test environment through inherent "Push/Deploy" feature
  • Push locations include the NuGet Gallery, a local directory, network share or web site
  • Use in any combination of manual, continuous integration or scheduled builds
  • Ability to execute PowerShell scripts prior to packaging to organize the files (e.g., lib, tools, content) for the NuGet packaging process (pre-packaging)
  • No requirement for NuGet.exe to be installed on the build machine – NuGet.exe can be held in source control and deployed only at the time of the build
  • All of the above is managed through the standard TFS Build Workflow process
  • Remotely store/manage package information such as version numbers, API keys, and NuSpec manifest files
  • All of this is managed via a Team Foundation Server automated build process
  • Includes updated build process template "NuGetterVersioningBuildTemplate15.xaml" to work with the TfsVersioning v1.5 extended versioning capabilities.

...

image..."

This was mentioned on TWC9 a number of months ago, but I'm sad to say I'd forgotten about it until today. I'm a firm believer that NuGet's next major success story is one where it's used inside the firewall and with something like this, that would make it even more compelling...

 

Related Past Post XRef:
TWC9: August 19 2011

Monday, October 03, 2011

PS'ing your MSBuild with the InvokePowerShellCommand Community TFS Build Extension

Community TFS Build Extensions - How to integrate the InvokePowerShellCommand build activity

"The InvokePowerShellCommand activity can be used to run the PowerShell commands or script files within a build without using then generic InvokeProcess activity to run the PowerShell interpreter. In this example we aim to show the basic steps that are required to get the activity integrated into a build.

Before you can make use of any of the TFS 2010 community build activities you have to make sure they are available for the build system and on your development PC. Instructions for this process can be found in the ALM Rangers build guide or in the StyleCop page of this wiki. This page assumes the InvokePowerShellCommand activity is available in the developers build process workflow toolbox.

Using the activity with an inline script

...

Using the activity with an .PS1 file from source control

...

image..."

This looks like a cool way of extending, customizing, etc, your Build process. I mean, it's PowerShell! :)

(via But it works on my PC! - Documentation for the PowerShell activity in the TFS Community Build Extensions published )

Thursday, September 15, 2011

TFS on Azure (aka TFSPreview) Video Post Series, from Intro to Team Build with Brian Keller & Martin Woodward

Team Foundation Service Preview: Introduction

"At BUILD, Satya Nadella just announced the Team Foundation Service Preview. This will be your chance to try out our next generation in application lifecycle management, agile project management and software collaboration services using the power of Team Foundation Server running on the Windows Azure platform.

You may have received an invitation code from the BUILD conference, or from a friend. If you have an invitation code please visit tfspreview.com to sign-up now. If you do not have an invitation code then you can visit tfspreview.com and join the waiting list. Either way, we thought that we'd put this quick video together to tell you more about the service.

To learn more please watch the videos below which dive into more detail on the Team Foundation Service Preview.

  1. Introduction (This video)
  2. Getting Started
  3. Manage Security
  4. Agile Project Management
  5. Using Visual Studio, Microsoft Test Manager, and Eclipse
  6. Team Build

..."

A pretty short and sweat VOD series that shows how we'll soon be able to (those at BUILD already can) have our TFS on Azure and how it will work...

 

(via Alkampfer's Place - Installing a Build controller against an Hosted TFS on Azure)

Friday, August 19, 2011

NuGet'ing inside the firewall, with TFS Continuous Integration bonus power too (or "How to go from TFS CI to your Private NuGet server with TeamBuild")

DK Development - From TFS to Private NuGet

"Let me start by saying this: I love NuGet, its straight up awesome!

This post is about how I created a TFS CI Build to create NuGet packages and push them to a private NuGet server hosted on site.

I have been playing around with the TFS Build server, mainly for a Continuous Integration (CI) build on some of our projects and I wanted a way for me to be able to update a core library and have it propagated to all of the projects that use that library without them all needing to be in the same solution.

The answer was a private NuGet server with a CI build that automatically packaged my library.

I started by setting up a private NuGet server, reading Phil Haack’s post about hosting a simple package feed. Once that was done I could start pumping out packages!

Now that I have my NuGet server I need to setup the build. I created an Ardent.CommonBuild.proj for my build config and tasks. I found its easier to manage as a separate file to the actual project file, this file has to be a .sln or .*proj file for the TFS Build server to be able to run it.

...

image..."

As I've said before I believe NuGet could be that in-house "Repository" we've long been looking for (do you remember all those promised code/library/component repositories in the 90's and 00's? The services that would solve all our sharing problems, end world hunger and bring peace to mankind? That never actually worked out in the real world? Yeah... me too...). I won't rehash my comments this, but let me just say that every week I'm seeing more proof that NuGet might have us finally on the right track, proof as in the above post.

In three words, NuGet just rocks

Monday, June 20, 2011

Visual Studio ALM Rangers release both VS Lab Management and Build Customization Guidance (Doc’s, code, hands-on labs, videos and posters too)

Willy's Cave - We have shipped … Visual Studio Build Customization Guidance

“This morning, we published the RTM release of Rangers Build Customization Guide on Codeplex. Kudos to the team for one of our top strategic projects in FY11.

Please help us spread the news by actively blogging about this project. Use this email as a starting point or refer to the Rangers blog or the project table of content blog post.

Project Description

This Visual Studio ALM Ranger project has the primary goal of delivering scenario based and hands-on lab guidance for the customization and deployment of Team Foundation Build 2010 activities such as versioning, code signing, and branching.

What is in the downloads?

  • Guidance contains scenario based practical guidance, frequently asked questions and quick reference posters
    -
    Selected PDF contains guidance and quick reference posters in PDF format only.
    - Complete contains guidance, quick reference posters and localization files in all available formats.
  • Hands-on Labs (HOL) includes:
    -
    HOL documents that provide walkthroughs of the technology, based on the guidance
    -
    HOL Package contains a HOL environment setup package allowing you to setup the HOL environment in your own environment
    -
    BRDLite Build Process Reference Template walk-through.
  • Samples contains sample build process templates used by the team as part of the guidance.
  • Videos which showcase the guidance in quick 5-10min videos.

The Epics included in the guidance are:

  • Practical guidance and tooling to simplify the customization of Team Foundation Build
  • Practical guidance to use Team Foundation Build process templates to automate build and non-build scenarios in Microsoft environments
  • Practical guidance to enable simple and flexible deployment of applications and their data stores
  • Practical guidance for Activities to empower developers and build engineers
  • Quality hands-on labs that complement the guidance and effectively guide the user through the features
  • Visualization of the guidance using quick reference posters

…”

Willy's Cave - We have shipped … Visual Studio Lab Management Guidance

“It is finally there! This morning, we published the RTM release of Rangers Lab Management Guide on Codeplex. Kudos to the team for our largest FY11 project and one of our top strategic investments for this year.

Please help us spread the new by actively blogging about it. Use this email as a starting point or refer to the Rangers blog or the project table of content blog post.

Project Description

This Visual Studio ALM Ranger project has the primary goal of delivering scenario based and hands-on guidance for the planning, setup, configuration and usage of Visual Studio Lab Management, backed by custom VM Template automation for reference environments.

Bookmark the Visual Studio Lab Management Guidance TOC blog and monitor the Visual Studio ALM Rangers blog, using tag tfslm, for the latest information on this project.

The Visual Studio 2010 and Team Foundation Server 2010 VM Factory project is a companion solution, which is focused on the Virtual Machine (VM) Factory, used by and referred to by this guidance.

The following Epics summarize the scope of the guidance which is designed for professional deployment of Lab Management in production environments.

  • Visualisation of the guidance using quick reference posters
  • Advanced golden image management using the VM Factory for Lab Management
  • Provide guidance on setting up Test environments with respect to pre-defined personas
  • Provide Guidance to enable large and small teams to setup and configure both automated and manual tests
  • Provide practical guidance for managing and maintaining a Lab Management environment
  • Provide practical guidance to enable teams to quickly setup and configure their lab management environment

…”

You’ve all probably already seen this news, but since my blog is as much a personal full text searchable remote memory store as it’s a blog, I want to capture the details (i.e. so in six months I’ll be able to find it again… :)

(via The Morning Brew - The Morning Brew #876)

Monday, April 18, 2011

MSBuild Extension Pack April 2011 Release - “If you MSBuild it, they will…”

Mike Fourie - MSBuild Extension Pack April 2011 Release

“The April 2011 release of the MSBuild Extension Pack is now available for download.

The April 2011 release contains

  • version 3.5.9.0 for those using .Net 3.5
  • version 4.0.3.0 for those using .Net 4.0

This release consolidates 40+ change sets and contains the following high level changes

  • Around 20 new Tasks / TaskActions
  • Around 19 improvements covering Documentation, new attributes and behaviour
  • Around 5 bug fixes
  • 32-bit and 64-bit installers
  • Zero backwards compatibility breaks Smile

…”

MSBuild Extension Pack - April 2011

“The MSBuild Extension Pack April 2011 release provides a collection of over 400 MSBuild tasks. A high level summary of what the tasks currently cover includes the following:

  • System Items: Active Directory, Certificates, COM+, Console, Date and Time, Drives, Environment Variables, Event Logs, Files and Folders, FTP, GAC, Network, Performance Counters, Registry, Services, Sound
  • Code: Assemblies, AsyncExec, CAB Files, Code Signing, DynamicExecute, File Detokenisation, GUID’s, Mathematics, Strings, Threads, Xml, Zip Files
  • Applications: BizTalk 2006 / 2010, Email, IIS6, IIS7, MSBuild, SourceSafe, SQL Server 2005, SQL Server 2008, StyleCop, Twitter, Team Foundation Server, Visual Basic 6, Windows Virtual PC, WMI

…”

If you think you need to build your own MSBuild Extension, then think twice and check out this project… There’s a good chance that if you need it, Mike’s already built it (or at least something close…)

 

Related Past Post XRef:
MSBuild & Virtual PC’s – Like peas in a pod?

MSBuild Extension Pack (Think “FreeToDev MSBuild Tasks Suite” but now they’re cooking with gas! ;)
FreeToDev MSBuild Tasks Suite – First Non-Beta Release (and request for help…)
New (beta) MSBuild Tasks Suite - FreeToDev MSBuild Tasks Suite

Wednesday, April 06, 2011

Customizing Team Build 2010 post series in 16 (to-date) parts

Ewald Hofman - Customize Team Build 2010 – Part 16: Specify the relative reference path

"In the series the following parts have been published

  1. Part 1: Introduction
  2. Part 2: Add arguments and variables
  3. Part 3: Use more complex arguments
  4. Part 4: Create your own activity
  5. Part 5: Increase AssemblyVersion
  6. Part 6: Use custom type for an argument
  7. Part 7: How is the custom assembly found
  8. Part 8: Send information to the build log
  9. Part 9: Impersonate activities (run under other credentials)
  10. Part 10: Include Version Number in the Build Number
  11. Part 11: Speed up opening my build process template
  12. Part 12: How to debug my custom activities
  13. Part 13: Get control over the Build Output
  14. Part 14: Execute a PowerShell script
  15. Part 15: Fail a build based on the exit code of a console application
  16. Part 16: Specify the relative reference path

As I have already blogged about, it is not intuitive how to specify the paths where the build server has to look for references that are stored in Source Control. It is a common practice to store 3rd party libraries in Source Control, so they are available to everyone, everyone uses the same version of the libraries and updating a library can be done centrally.

In Team Build 2010 these paths are specified as a parameter for MSBuild. What we will do in this post is building the values for this parameter based on the values in an argument. You are now pretty aware how to customize the build template, so let’s do the modifications in another way. Instead of opening the xaml file in the workflow designer, we open it in the XML editor. You can open it in the XML Editor by either selecting the Open with menu (see the context menu), or by choosing the View code option.

To add this functionality we need to:

  1. Specify a new argument
  2. Add the argument to the metadata
  3. Build the absolute paths for the references and add these paths to the MSBuild arguments

..."

This is a pretty awesome series which will come in handy for me in the future...

Saturday, January 15, 2011

A tip for using InstallShield and TeamBuild 2010 while living in a x86/x64 world

Visual Studio ALM Blog Building InstallShield based Installers using Team Build 2010

“Last few weeks, I have been working on Application Packaging stuff using all the widely used tools like InstallShield, WISE, WiX and Visual Studio Installer. So, I thought it would be good to post about how to Build the Installers developed using these tools with Team Build 2010. This post will focus on how to build the InstallShield generated packages using Team Build 2010. For the release of VS2010, Microsoft has partnered with Flexera who are the makers of InstallShield to create InstallShield Limited Edition, especially for the customers of Visual Studio.

First Microsoft planned to release WiX (Windows Installer Xml) with VS2010, but later Microsoft dropped WiX from VS2010 due to reasons which are best known to them and partnered with InstallShield for Limited Edition. It disappointed lot of people because InstallShield Limited Edition provides only few features of InstallShield and it may not feasable to build complex installer packages using this and it also requires License, where as WiX is an open source with no license costs and it has proved efficient in building most complex packages.

Only the last three features are available in InstallShield Limited Edition from the total features offered by InstallShield as shown in below list.

pagesnap…”

Given that more of us may be using InstallShield in the future (link), and be in a TeamBuild environment, I wanted to capture this for future reference.

 

Related Past Post XRef:
Visual Studio Setup & Deployment Projects declared dead & retired. VS2010 will be the last…
Free InstallShield Limited Edition 2010 coming to help our VS2010 Windows Installer and TFS/automated building woes

Friday, December 10, 2010

Team Foundation Server 2010 Team Build Activity Reference (Think “Oh ,that’s what all those in-the-box Build Activities do” reference)

Andy Lewis - Team Foundation Build Activity Reference is now available

“The Team Foundation Build Default Template enables you to define a build process that can perform the basic tasks you expect from your build system. Use MSBuild to build the bits, run MSTest to test the bits, label the code, publish symbols to SymStore, drop the binaries in a folder, etc. DefaultTemplate.xaml has got you covered; you can get your build process defined and running in a matter of minutes.

But suppose you need your build process to run some custom process against the binaries after building the code. Or to publish some documentation to a web server. My anecdotal experience from monitoring various virtual user groups has left me with the impression is that specialized build processes are the norm rather than the rule.

If you are one of these customers, here is my holiday present to you, hot off the presses:

Team Foundation Build Activities

This article describes in detail the Team Foundation Build Activities, which are the fundamental components of the build process. I wrote this topic with hopes of making it as easy as possible for you to create your own custom build process.

pagesnap…”

Visual Studio Application Lifecycle Management - Creating and Working with Build DefinitionsCustomizing Team Foundation Build - Team Foundation Build Activities

“The Team Foundation Build activities are the fundamental components of the build process in your Team Foundation Build system. You can use these activities to create a custom build process to meet team requirements such as following custom logic or performing specialized tasks.

In most cases, the best way to create a custom build process template is to base it on the Default Template (DefaultTemplate.xaml). This way, you can take advantage of generally useful functionality that has already been created while customizing specific parts to meet your requirements. Another advantage of this approach is that you can see specific and practical examples of how you can use the activities that this topic describes. For information about how to create your build process template, see Create and Work with a Custom Build Process Template.

Important noteImportant

You should create a custom build process only if you must meet specialized requirements. You can use DefaultTemplate.xaml to quickly define a build process that meets many typical requirements. For more information, see Define a Build Using the Default Template.

In this topic

pagesnap2…”

In my day life we use Team Build (2008) a good bit. While our builds are now where near “far out” we’ve (well Peter) have had to tweak them to fit our needs. So when we one day finally upgrade to TFS 2010/Team Build 2010 (sigh… don’t get me started), with its new build system, may have to again play the build process tweak game.

That’s why this caught my eye. I want to make sure we’re not re-inventing the wheel and understand the existing activities so we can  use them to their fullest…

Saturday, April 24, 2010

It’s TFS Tool Time! TFS 2010 RTM compatibility Power Tools, MSSCCI and new Build Extension releases

Buck Hodges - TFS 2010 Power Tools are now available!

“Here is the first full release of Power Tools for TFS 2010!  Previously we had released versions for beta 2 and RC.  With this release the focus was to have parity with the 2008 power tools and fix bugs.  We’ll be adding new power tools in the next release (no date yet).

TFS Build Extension Power Tool  is an exciting new addition to our power tools line up.  The Build Extensions provide the ability to execute Ant or Maven 2 builds from Team Foundation Server and publish the results of the build along with any associated JUnit test results back to Team Foundation Server.  This release is compatible with Team Foundation Server 2005, Team Foundation Server 2008 and Team Foundation Server 2010.” [GD: Post Leached in Full]

Visual Studio Gallery - Team Foundation Server Power Tools April 2010

“…

  • Last Updated: Friday, April 23, 2010
  • Version: 3.0.30423.0
  • Supported Versions Visual Studio 2010

    This release supports Visual Studio Team Foundation Server 2010. The following highlights the tools available in this release

    Alerts Explorer

    Microsoft Team Foundation Server 2010 Best Practices Analyzer

    Custom Check-in Policy Pack

    Process Editor

    Team Explorer Enhancements

    Team Foundation Power Tool (TFPT.EXE) Tool

    Team Members

    Windows PowerShell Cmdlets for Visual Studio Team System Team Foundation Server

    Windows Shell Extensions

    Work Item Templates

    image

    …”

  • Visual Studio Gallery - Team Foundation Server MSSCCI Provider April 2010

    “…

  • Last Updated: Friday, April 23, 2010
  • Version: 3.3

    The Team Foundation Server MSSCCI Provider enables integrated use of Team Foundation Version Control with products that do not support Team Explorer integration.

    This version (3.3) includes:

    • Updated provider to link against VS 2010 RTM TFS assemblies
    • Improved functionality and performance when used inside PowerBuilder
    • Improved handling of branched solutions in SQL Server Management Studio
    • Decreased number of server prompts
    • Improved error reporting

    …”

  • Visual Studio Gallery - Team Foundation Server Build Extensions Power Tool April 2010

    “…

  • Last Updated: Friday, April 23, 2010
  • Version: 3.0.30423.0
  • Supported Versions Visual Studio 2010
  • The Team Foundation Build Extensions provide the ability to execute Ant or Maven 2 builds from Team Foundation Server and publish the results of the build along with any associated JUnit test results back to Team Foundation Server.  This release is compatible with Team Foundation Server 2005, Team Foundation Server 2008 and Team Foundation Server 2010.

    Prerequisites

    You must have the following installed on the same server that is hosting the Team Foundation Build Agent:

    • Java JDK (the latest one available from your JDK vendor is recommended)
    • Ant (if Ant support is required).
    • Maven 2 (if Maven support is required)

    image

    …”

    I like the promise of new Tools in the future… ;)

     

    Related Past Post XRef:
    Extending the Team Members feature in the VSTS 2008 TFS Power Tools October 2008 Release. For example, adding Skype support…
    VSTS 2008 TFS Power Tools - October 2008 (aka 2.3) Released – Manage Source Files via Windows Shell/Explorer extension, new PowerShell extensions and Team Members tool
    TFS Power Tools - July 2008 Release (aka v2.2) – Welcome to Alert editing goodness
    TFS Power Tools - March 2008 Release (aka v2.1). Build Notification, Find in Source Control, Process Template Editor TFS2008 updates and Destroying Work Items...
    VSTS 2008 TFS Power Tools (December 2007) Released (aka TFPT 2.0)
    TFS Power Tools, v1.3 (September 2007 Release), with Two New Tools, TFS Best Practices Analyzer and Work Item Templates
    Team Foundation Server Power Tool, Process Template Editor Tip - If you open a *.WIT file and it appears as a normal XML file, instead of in a Designer...
    Microsoft Visual Studio 2005 Team Foundation Server Power Tool (formerly known as Power Toys) - V1.2, February 2007

    Saturday, October 31, 2009

    MSBuild & Virtual PC’s – Like peas in a pod?

    Guy Smith-Ferrier - Automating Testing Using Windows Virtual PC

    “As promised here are the slides [GD:Click through for all the slide/source links] and source code for yesterday's "Automating Testing Using Windows Virtual PC" presentation at the MVP Open Day. The sister presentation to this one is "Automating Testing Using Virtual Server 2005" and you can download the slides and source code for this one. If you are using Virtual Server 2005 you might like to download both as the Windows Virtual PC presentation is more recent and contain slightly more code that is still applicable to Virtual Server 2005” [GD:Post leached in full]

    From the slides;

    image

    image

    What caught my eye in this was that the MSBuild Extension Pack was getting some Windows Virtual PC msbuild task love… that’s cool…

    For years now I’ve been wanting to see about using virtual machines in my dev/test processes. VS2010’s Lab Management is a huge step in the right direction, but it’s still just one step. The inclusion of MSBuild tasks in the MSBuild Extension Pack (and the Virtual Server tasks in the SDC Tasks) is another…

    The thought of queuing a build (or via CI/nightly) and getting a VM out for delivery/testing seems to be too darn cool to me. I know some of you might have been doing this for years already (cough… like Scott Hanselman, who’s chatted about it in his podcasts) but some of us are in environments that have barely graduated to automated builds let alone embrace virtualization (and the thought of the two of them together, well that’s like WAY out there! ;)

    Anyway… This will be an area, especially in the VS2010 wave, that I will be keeping a closer eye on.

    (via FreeToDev - Automating Testing Using Windows Virtual PC)

     

    Related Past Post XRef:
    MSBuild Extension Pack (Think “FreeToDev MSBuild Tasks Suite” but now they’re cooking with gas! ;)
    FreeToDev MSBuild Tasks Suite – First Non-Beta Release (and request for help…)
    New (beta) MSBuild Tasks Suite - FreeToDev MSBuild Tasks Suite

    The SDC Tasks Projects is alive and well... v2.1.2978 Released
    SDC Tasks Project's New Home on CodePlex
    MS UK Enterprise Solutions Build Framework (SBF) Updated
    MSBuild Community Tasks Project
    More on the Solution Build Framework (SBF) (MSBuild Tasks) From MS UK
    MS SDC.Tasks, a MSBUILD tasks library with over a hundred new tasks...

    Friday, October 16, 2009

    A fan-dev Team Build Property Reference Guide

    .NETicated - Team Build Property Reference Guide

    “I’ve been working quite a bit with Team Build lately, and overriding properties is a method of customization I’ve found quite useful in certain scenarios. Along the way, I found Aaron Hallberg’s excellent Team Build 2008 Property Reference blog post, but it didn’t show me where the properties were referenced. In fact, there isn’t an easy way to determine where any particular Property is being used or set other than reading through the 1,500 lines in the Microsoft.TeamFoundation.Build.targets file. I decided to spend a few hours, read through the file myself, and compile a chart of each Property, what Target it is referenced by, and how it is referenced.

    image  ”

    I dig how people are willing to share their time and effort, for no personal gain or profit. Just to share for the good of it, to pay it forward…

    Anyway, I’m not TeamBuild script editing much now, which means when/if I do again I’ll need all the memory/reference help, like this one, that I can get.

    You know, if you look closely at this you can see a redhead, blond… (LOL Sorry, watched The Matrix last night…  ;)

     

    Related Past Post XRef:
    TFS 2008 (Team Build) Reference Desksheet – Ton’s of TeamBuild Properties, one little sheet…
    Ever wondered what a diagram of the TFS 2008 Team Build Process would look like? Wonder no more...

    Thursday, March 05, 2009

    Team Building your MSI – How to build a Setup Project via Team Build

    David Williams - Building a Setup/Install project using Team Build/TFS

    “Team Build is great for building Projects applications such as Windows or Web apps.  However it is not able to build Install packages.  Because of this you have to use the Visual Studio build command line option, and copy the .msi and setup.exe files out of the local build directory.  My builds usually copy the built files from to a stage or production server, However this is difficult to do, as no TB/MSbuild variables correctly reference the local build location.  To build a visual studio setup project, I did the following:

    1. Enable building in the Solution configuration manager.  Select the configuration manger, checked build next to the Install project name. 
    2. Open the ApplicationSetup.proj file in a text editor. Searching for ProjectOutput, SourcePath, I confirmed the path was relative to the project file (..\\obj\\Release\\HelloWorld.exe) rather then literal (C:\HelloWorld\obj\\Release\\HelloWorld.exe).
    3. Modified the Build project, adding the build target type
    4. …”

    Some tips and snips for building your Setup Project/MSI via Team Build.

    Remember friends don’t let friend use “F5” (or right click/build) as a long term deployment mechanism… ;)

    Monday, November 24, 2008

    TFS 2008 (Team Build) Reference Desksheet – Ton’s of TeamBuild Properties, one little sheet…

    FreeToDev - Team Foundation Server Build 2008 Reference DeskSheet – V2.0

    few minor updates. A handy reference to aid your work with building software in TFS 2008

    image

    A cool single page TeamBuild 2008 reference sheet, with links (on the group headers) to get more information…