【问题标题】:Is there an environment variable or way to get custom task directory in VSO Build?是否有环境变量或方法可以在 VSO Build 中获取自定义任务目录?
【发布时间】:2023-10-09 04:52:01
【问题描述】:

所以我在执行自定义构建任务时尝试从 powershell 获取自定义构建任务目录名称。

目的是我希望 jshint 在构建时运行,我已经这样做了,但是 .jshintignore 文件需要知道一个相对路径来排除文件或文件夹.

所以我需要能够在运行时获取该路径,以便知道有多少“../”添加到 minmatch 引擎的排除文件中,这是 jshint 使用的,以匹配它们。

当然,我可以对其进行硬编码,但这真的不是我想要做的。

【问题讨论】:

  • 嗨 Ryan,如果我理解正确,您只是想忽略所有其他文件夹?你不能简单地告诉 JSHint 只在 Build.SourcesDirectory 下查看吗?

标签: powershell msbuild azure-devops jshint azure-pipelines


【解决方案1】:

是的,您可以使用 Agent.HomeDirectory 变量。

Agent.Home 目录 |代理_主目录 |代理所在的目录 安装到。这包含代理位

任务文件夹将是 $(Agent.HomeDirectory)\tasks(TaskFolder)\

【讨论】:

  • 谢谢!这是完美的。顺便说一句,我喜欢新的可编写脚本的跨平台构建引擎。