【问题标题】:A way to commit TeamCity build products to Perforce?一种将 TeamCity 构建产品提交给 Perforce 的方法?
【发布时间】:2020-03-26 22:46:12
【问题描述】:

构建工作正常,但最后一件事让我感到困惑......如何将构建产品提交回 P4 存储库?好像没有预定义的设置或构建步骤/功能?

我不得不为此编写自己的脚本,这对我来说非常奇怪...这是需要的吗,我将如何使我的预定义 P4 工作区提交二进制文件?

【问题讨论】:

    标签: teamcity perforce build-automation


    【解决方案1】:

    好的,首先我意识到“工件”是在部署即用型应用程序时使用的东西,而不仅仅是二进制文件。

    跳过了部署工件,只是添加了一个新的构建 PowerShell 构建步骤。它还不完美,以纯文本形式存储密码,但这基本上是可行的。在每个命令中跳过 P4“登录”时无法强制工作。 P4 正在回复消息“密码无效或未设置”。

    $user ="MyUser"
    $workspace ="MyWorkspace"
    $pswd ="MyPassword"
    
    # update workspace root - use human-friendly workspace name instead of TeamCity automatically generated workspace
    $p4Client = p4 -c $workspace -u $user -P $pswd -p localhost:1666 client -o $workspace
    $p4Client = $p4Client -replace '^Root:.+$', "Root: %teamcity.build.checkoutDir%"
    $p4Client | p4 -c $workspace -u $user -P $pswd -p localhost:1666 client -i
    
    # submit build products
    p4 -c $workspace -u $user -P $pswd -p localhost:1666 reconcile _a -e -c default "//..."
    p4 -c $workspace -u $user -P $pswd -p localhost:1666 submit -d "build %build.number%" 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多