我尝试在 OS X 上使用 TeamCity 构建代理。我的构建步骤之一涉及将存档移动到已知位置,以便我可以将其作为构建工件获取。 xcodebuild archive
命令将 .xcarchive 文件放入 %system.user.home%/Library/Developer/Xcode/Archives/date/appName date time.xcarchive。所以我想移动并重命名 .xcarchive 文件,以便更容易地从包中获取可执行文件。 FWIW,我还有一个清除 Archives 目录的构建步骤,因此我将确保我只有一个 date 文件夹,其中只有一个 .xcarchive 文件。此命令在命令行中运行良好:
$ /bin/mv /Users/buildagent/Library/Developer/Xcode/Archives/`date+%Y-%m-%d`/*.xcarchive /Users/buildagent/Library/Developer/Xcode/Archives/GetConnected.xcarchive
但是将它用于构建运行器不起作用(我只收到 mv 的用法消息):
/bin/mv %system.user.home%/Library/Developer/Xcode/Archives/`date +%%Y-%%m-%%d`/*.xcarchive %system.user.home%/Library/Developer/Xcode/Archives/GetConnected.xcarchive
我做错了什么?我还需要转义其他角色吗?有没有相关的文档?
最佳答案
是的,您确实需要将这些百分比加倍以避开这些百分比。 TeamCity 页面上有这方面的文档 Defining and Using Build Parameters in Build Configuration ,但我承认这并不容易找到。 (基本上 TeamCity 使用百分号作为它自己的参数)。
我为此使用的调用是 `date "+%%Y-%%m-%%d"`
。此外,我需要在路径周围加上引号(shell 通配导致问题),所以整个命令最终是:
mv "~/Library/Developer/Xcode/Archives/`date "+%%Y-%%m-%%d"`/*.xcarchive" ./MyApp.xcarchive
另外,感谢您提出问题!我试图做同样的事情,这让我走上了正确的道路。
关于xcode - OS X 上的 TeamCity 构建代理。命令行构建运行器的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10856256/