Запуск PowerShell из процедруы сборки в Team Foundation Server 2013

А знаете ли Вы, что в новой версии Team Foundation Build можно теперь запускать PowerShell скрипты?
cid:image003.png@01CECB1B.A7B0F230

Реклама

Автоматическая сборка и публикация при помощи Windows Azure SDK 1.6

Tom Hollander написал отличный пост о том, как автоматически собирать и публиковать решения для Windows Azure без нарушения требований безопасности на агентах сборки и машинах разработчиков. Общая схема выглядит вот так:

SDK 1.6 deploy

К сожалению, у меня сечас нет времени перевести статью, так что читайте в оригинале — Automated Build and Deployment with Windows Azure SDK 1.6.

Ноябрьская виртуальная машина Visual Studio 2010 для изучения с примерами

Доступна ноябрьская обновлённая версия виртуальной машины для изучения возможностей Visual Studio 2010. Срок этой действия этой версии истекает 9 апреля 2012 года. Срок действия предыдущей версии истёк сегодня. Обновлённый вариант включает свежие обновления Windows и установленный TFS SP1.

Первый выпуск Community TFS Build Extensions

В День Независимости выпущена первая версия Community TFS Build Extensions, которая содержит около 100 дополнительных активностей и действий. Это достаточно сильное подспорье в модификации процессов сборки для TFS 2010. Кстати, на них ссылается Build Customization Guide, о которои я писал ранее.

ALM Rangers выпустили Build Customization Guide

В пятницу коллеги выпустили окончательную версию Build Customization Guide. Это очередной проект Visual Studio ALM Rangers, основная цель которого предоставить руководство по изменению процедуры сборки и её развёртывания, базирующееся на сценариях. В руководстве рассматриваются такие активности, как версионирование, подписывание кода и ветвление.

Добавьте себе в закладки ссылку на Build Customization Guide Blog Posts and Reference Sites.

Виртуальная машина Visual Studio 2010 для изучения с примерами

Доступна обновлённая версия виртуальной машины для изучения возможностей Visual Studio 2010. Обновлённый вариант включает установленный SP1, а также содержит несколько новых сценариев для изучения.

Как запустить TFS сборку от имени другого пользователя

Как правило, в команде разработчиков есть люди, отвечающие за работоспособность сборки. может случится так, что gated сборка сломается не по вине  разработчика, вносившего изменения. В этом случае, после устранения проблем, например, с агентом, на котором происходит сборка, неудачную попытку внесения изменений можно повторить. Для этого не обязательно привлекать разработчика, который изначально запускал сборку – можно запустить сборку от его имени.

Для управления сборками существует утилита tfsbuild, которая, в том числе, позволяет запустить сборку от имени другого человека. Пользоваться ей напрямую для запуска gated сборки несколько неудобно – Вам придётся два раза задавать имя того разработчика, от имени которого Вы хотите внести изменения. Один раз его имя его учётной записи должно быть указано в параметре ‘/requestedfor‘, а второй – в имени shelveset-а.

Я облегчил себе эту задачу, написав простую PowerShell функцию, и поместив её в профиль автозагрузки. Помимо того, что она позволяет не писать два раза имя пользователя, я получил ещё два маленьких бонуса – можно не писать адрес TFS сервера, а также теперь не надо вспоминать точное написание параметров (PowerShell помогает автоматически подставлять их имена). Вот, что получилось:

 

function tfbuild 

{

    Param

      (

        [parameter(Mandatory=$true)]

        [String]

        $ProjectName,

        [parameter(Mandatory=$true)]

        [String]

        $BuildDefinition,

        [parameter(Mandatory=$true)]

        [String]

        $Shelveset,

        [parameter(Mandatory=$true)]

        [String]

        $Owner

      )

    $projectCollection = "http://tfs.prod.quest.corp:8080/Windows Management/";

    $shelveset = $Shelveset + ";" + $Owner;

    & tfsbuild start $projectCollection $ProjectName $BuildDefinition /requestedfor:$Owner /shelveset:$shelveset /checkin /queue

}

Поместите этот код в свой файл

‘%userprofile%\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1’ 
и запуск сборки от имени другого пользователя будет всегда у Вас под рукой.