Задача Powershell от CC.net - PullRequest
       22

Задача Powershell от CC.net

2 голосов
/ 09 марта 2011

Как передать аргументы сборки и переменные среды в скрипт powershell из cc.net

Я вижу документы здесь: http://build.nauck -it.de / doc / CCNET / PowerShell%20Task.html

Не совсем точно, какой должен быть синтаксис, если у меня есть такая функция, как

Function Concat([String] someEnviromentVariable1,[String] someEnviromentVariable2 ,[String] abuildArg1, [String] abuildArg2 )
{
 ///stuff happens
}

Могу ли я сделать следующее:

<powershell>
<script>dosomething.ps</script>
<executable>C:\program Files\PowerShell\PowerShell.exe</executable>
<scriptsDirectory>C:\Scripts</scriptsDirectory>
<buildArgs>-abuildArg1=2 -abuildArg2=3</buildArgs>
<environment>
<variable name=" someEnviromentVariable1"/>
<variable name=" someEnviromentVariable2"/>
</environment>
<successExitCodes>1,2,3</successExitCodes>
<buildTimeoutSeconds>10</buildTimeoutSeconds>
<description>Example of how to run a PowerShell script.</description>
</powershell>

1 Ответ

0 голосов
/ 09 марта 2011

Похоже, вам придется создать скрипт, который обернет вызов вашей функции.Другими словами, создайте файл "dosomething.ps" в каталоге C:\Scripts, который выглядит как

Concat $env:someEnviromentVariable1 $env:someEnviromentVariable2 $args

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

. .\scriptThatContainsConcatDefinition.ps1
Concat $env:someEnviromentVariable1 $env:someEnviromentVariable2 $args
...