2013-04-23 2 views
2

Мне нужно настроить запланированное задание в Планировщике задач Windows (v2.0 на Windows Server 2008 R2) сразу после развертывания моего веб-сайта.Запланировать задачу после развертывания

Я использую TFS 2010 для создания моего приложения, и, по-видимому, мои аргументы MSBuild содержат аргументы /P:DeployOnBuild=True /P:DeployTarget=MSDeployPublish /P:CreatePackageOnPublish=true /P:MSDeployPublishMethod=WMSvc.

Я знаю, что могу использовать Schtasks.exe для установки запланированной задачи через командную строку. Я также знаю, что есть провайдер runCommand для MsDeploy. Поэтому я подумал, что могу использовать runCommand для запуска Schtasks.exe с требуемыми параметрами.

Мой вопрос в том, как я это делаю в TFS и MsBuild. Я предположил, что могу передать некоторые параметры MsBuild, и они будут переданы «как есть» в MsDeploy, но я не смог найти, как это сделать.

+0

Я отредактировал ваш заголовок. Пожалуйста, смотрите: «Если вопросы включают« теги »в их названиях?] (Http://meta.stackexchange.com/questions/19190/), где консенсус« нет, они не должны ». –

ответ

1

Если должен быть после сборки, вы должны будете использовать postSync msdeploy argument выполнить runCommand. Поскольку postSync недоступен из задач Visual Studio MSBuild, вам нужно сгенерировать пакет, а затем запустить сгенерированный файл cmd с аргументом postSync, прикрепленным к концу.

Package.cmd -postSync:runCommand="c:\windows\system32\schtasks.exe arguments" 

Если должен быть после сборки, вы можете включить дополнительный обеспечить, добавив следующую строку в ваш опубликовать профиль (pubxml), .wpp.targets файл или файл проекта:

<ItemGroup> 
    <MsDeploySourceManifest Include="runCommand"> 
    <Path>&quot;c:\Windows\system32\schtasks.exe&quot; &quot;Arguments here&quot;</Path> 
    </MsDeploySourceManifest> 
</ItemGroup> 

Это официально не гарантирует, что провайдеры работают в порядке, но на практике они это делают. Возможно, вам понадобится зацепить цель в нужное событие, так что вы можете зарегистрировать runCommandпосле других поставщиков.

+0

Спасибо. Мне действительно не очень нравится порядок. Я попробую ваш подход, а затем приму. –

Смежные вопросы