我的 Visual Studio 2013 Release Management Client/Server 版本是 Release 4.0。我正在使用 ReleaseTfvcTemplate.12.xaml 模板。使用基于 AGENT 的发布模板时,有没有办法从发布管理组件(部署者配置)访问系统变量?当我尝试传递 $applicationPath 或 $(applicationPath) 或 $(ApplicationPath) 时,我得到 NULL。
这是我在 RM 中部署具有自定义 powershell 部署脚本的组件的状态:
- 我可以成功排队发布版本
- 构建输出正确复制到 \servername\BuildDrop\
- 我有一个基于 AGENT(不是 VNEXT)的 RM 模板,它在构建完成时触发
- 构建正确触发 RM 模板发布构建
- 此 RM 模板有一个通过 CUSTOM powershell 脚本部署的组件
- powershell 脚本需要 builddrop 位置的完整绝对路径才能执行其工作(powershell 脚本所做的与讨论无关)示例:在我的 RM 中组件的部署配置中,我需要传递 TFS 构建放置位置而无需对其进行硬编码
- 根据MSDN 文档,有一个系统变量 $applicationPath 由 RM 水合,但仅在使用基于 VNEXT 的模板时才使用,而不是基于代理的模板
- 根据此处接受的与从基于代理的 RM 模板访问系统变量相关的 StackOverflow 答案,看来 MSDN 文档并没有说明整个故事,我应该能够在我的组件部署配置中设置一行(见下文)