Echo命令行构建脚本在TFS的新行中

时间:2014-05-13 18:46:34

标签: visual-studio-2010 tfs build build-script

我们有一个现有的构建定义,它可以创建一个命令文件ToQA.cmd'我们用来从我们的集成服务器将软件包ftp到我们的QA服务器。虽然它是命令文件,但我们不能只是双击并执行脚本。我们必须导航到命令文件所在的文件夹,复制脚本并将其粘贴到命令提示符中以执行它。问题是当我们双击命令文件时,它在c:\ users \ [userid]下运行,显然该文件不存在于该位置并且失败。现在我正在尝试更新构建定义,以便它首先导航到命令文件所在的文件夹,如下所示:

  

cd c:\ build \ buildNumber文件夹

     

powershell -File ftp.ps1 11.11.11.111 NewBuild.www_20140512.1

以下是现有的构建定义:

<mtbwa:InvokeProcess FileName="cmd.exe" sap:VirtualizedContainerService.HintSize="200,184" WorkingDirectory="." DisplayName="Create the QA CMD file">
 <mtbwa:InvokeProcess.Arguments>[String.Format(&quot;/C echo powershell -File ftp.ps1 11.11.11.111 {1} &gt;{0}\{1}\toQA.cmd&quot;,BuildInstallFolder,BuildDetail.BuildNumber)]</mtbwa:InvokeProcess.Arguments>
 <mtbwa:InvokeProcess.ErrorDataReceived>
   <ActivityAction x:TypeArguments="x:String">
     <ActivityAction.Argument>
       <DelegateInArgument x:TypeArguments="x:String" Name="errOutput" />
     </ActivityAction.Argument>
     <mtbwa:WriteBuildError Message="[errOutput]" />
   </ActivityAction>
 </mtbwa:InvokeProcess.ErrorDataReceived>
 <mtbwa:InvokeProcess.OutputDataReceived>
   <ActivityAction x:TypeArguments="x:String">
     <ActivityAction.Argument>
       <DelegateInArgument x:TypeArguments="x:String" Name="stdOutput" />
     </ActivityAction.Argument>
     <mtbwa:WriteBuildMessage Importance="[Microsoft.TeamFoundation.Build.Client.BuildMessageImportance.High]" Message="[stdOutput]" mva:VisualBasic.Settings="Assembly references and imported namespaces serialized as XML namespaces" />
   </ActivityAction>
 </mtbwa:InvokeProcess.OutputDataReceived>
/mtbwa:InvokeProcess>

我试图回应新线,即回声。也用过&amp;&amp;签署,这没有帮助。 我不是编写构建定义或批处理脚本的专家,所以想知道是否有人可以帮助我吗?

感谢。

0 个答案:

没有答案
相关问题