展平 TeamCity 工件文件夹结构
Flattening TeamCity artefacts folder structure
我有一个 TeamCity (9.0.2) 构建配置,其中包含以下工件路径模式:
App\Agent\**\bin\%env.Configuration%\** => Deployment\AgentBuildPackage.%env.ApplicationVersion.EMX%.%system.build.number%.zip
这将在名为 Deployment
的工件文件夹中创建一个名为 AgentBuildPackage.4.5.0.185.zip 的文件
目前的结构是这样的:
- 部署/
- AgentBuildPackage.4.5.0.185.zip/
- MyFirstServiceFolder/
- bin/
- 调试|发布/
- 所有文件
Artefact 存档包含它在 App\Agent 下找到的所有文件夹,这很棒。我想不通的是如何展平那些单独的文件夹,使它们不再包含 /bin/Release 子文件夹。
我要的是
- 部署/
- AgentBuildPackage.4.5.0.185.zip/
- MyFirstServiceFolder/
- 所有文件
谁能告诉我怎么做?
您可以在 .zip 文件名称后使用 !
字符来指定目标存档中的目标文件夹。像这样:
folderA\** => output.zip!/afolder/
根据您拥有的服务文件夹的数量,这可能会非常冗长,因为您需要为每个文件夹执行此操作,但它应该按照您所描述的执行:
App\Agent\MyFirstServiceFolder\bin\%env.Configuration%\** => Deployment\AgentBuildPackage.%env.ApplicationVersion.EMX%.%system.build.number%.zip!/MyFirstServiceFolder/
这里是关于指定工件路径的文档页面(如果您还没有看过的话):https://confluence.jetbrains.com/display/TCD9/Configuring+General+Settings#ConfiguringGeneralSettings-PathsPatterns
我有一个 TeamCity (9.0.2) 构建配置,其中包含以下工件路径模式:
App\Agent\**\bin\%env.Configuration%\** => Deployment\AgentBuildPackage.%env.ApplicationVersion.EMX%.%system.build.number%.zip
这将在名为 Deployment
的工件文件夹中创建一个名为 AgentBuildPackage.4.5.0.185.zip 的文件目前的结构是这样的:
- 部署/
- AgentBuildPackage.4.5.0.185.zip/
- MyFirstServiceFolder/
- bin/
- 调试|发布/
- 所有文件
Artefact 存档包含它在 App\Agent 下找到的所有文件夹,这很棒。我想不通的是如何展平那些单独的文件夹,使它们不再包含 /bin/Release 子文件夹。
我要的是
- 部署/
- AgentBuildPackage.4.5.0.185.zip/
- MyFirstServiceFolder/
- 所有文件
谁能告诉我怎么做?
您可以在 .zip 文件名称后使用 !
字符来指定目标存档中的目标文件夹。像这样:
folderA\** => output.zip!/afolder/
根据您拥有的服务文件夹的数量,这可能会非常冗长,因为您需要为每个文件夹执行此操作,但它应该按照您所描述的执行:
App\Agent\MyFirstServiceFolder\bin\%env.Configuration%\** => Deployment\AgentBuildPackage.%env.ApplicationVersion.EMX%.%system.build.number%.zip!/MyFirstServiceFolder/
这里是关于指定工件路径的文档页面(如果您还没有看过的话):https://confluence.jetbrains.com/display/TCD9/Configuring+General+Settings#ConfiguringGeneralSettings-PathsPatterns