【问题标题】:How to retrieve or pass custom argument TFS Build XAML in Post Build Powershell script如何在 Post Build Powershell 脚本中检索或传递自定义参数 TFS Build XAML
【发布时间】:2018-04-19 21:36:48
【问题描述】:

我从 Visual Studio 2013 的默认构建模板创建了一个新模板,并创建了一个新的自定义参数 Brand 在队列新构建期间提示参数。

我尝试在 Powershell 脚本的构建后脚本中读取构建参数。但值始终为空。

我使用$env:Brand 传递参数来发布构建参数,例如-arg $(Brand),带和不带双引号。但显示为空。

请帮助如何在部署后脚本中检索构建参数。

【问题讨论】:

    标签: powershell xaml tfs build arguments


    【解决方案1】:

    我假设您正在设置您的属性以获取您的自定义参数。像

    <x:Property Name="BuildEnvironmentName" Type="InArgument(x:String)" />
    

    进行设置,以便在您对构建进行排队时将其显示为一个选项。例如

    <mtbw:ProcessParameterMetadata Category="Build" ParameterName="BuildEnvironmentName" DisplayName="Target Environment"  Description="The environment where the deployment will take place" Required="true" BrowsableWhen="Always" />
    

    如果您想将此参数传递给构建后脚本,则需要在您的 Xaml 中传递它。一个例子

    <mtba:RunScript DisplayName="Run Post-build Script" FilePath="PostBuildScript" Arguments='[BuildEnvironmentName]' Result="PostBuildScriptResult]" mtbwt:BuildTrackingParticipant.Importance="Low"/>
    

    【讨论】:

      【解决方案2】:

      通过将自定义参数添加到 Run Script 任务 XAML 定义的环境变量中,解决了问题。

      来自 {{"Key", Value}} 的新字典(字符串,字符串)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-02-15
        • 1970-01-01
        • 1970-01-01
        • 2018-04-22
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多