【问题标题】:How to get the task version for an Azure DevOps Pipelines task?如何获取 Azure DevOps Pipelines 任务的任务版本?
【发布时间】:2020-04-16 21:47:28
【问题描述】:

我有一个使用 azure-pipelines-task-lib (https://github.com/microsoft/azure-pipelines-task-lib) 的 Azure Pipelines 任务,需要从我的任务代码 (TypeScript) 中获取任务的版本。我认为使用 azure-pipelines-task-lib 库有一种简单的方法可以做到这一点,但如果有,我还没有找到。

版本在 task.json 文件中指定,该文件被打包到您发布任务时构建的工件中,我可以很容易地解析它,这样做似乎有点笨拙。有谁知道这样做的更好方法吗?

谢谢!

【问题讨论】:

    标签: azure-devops azure-pipelines azure-pipelines-task-lib


    【解决方案1】:

    使用 azure-pipelines-task-lib 获取任务版本没有简单的方法,解析 task.json 文件是我们目前可以做的常用方法。

    【讨论】:

    • 如何在已部署的任务中找到 task.json?我可以在我的开发环境中轻松解析 task.json,但是一旦我在 Azure Pipeline 中运行它,task.json 似乎就不会出现在我可以读取它的任何地方。是否有一些路径可以在已部署的管道中查找此文件?谢谢
    • 您可以尝试获取任务执行的当前文件夹的目录并读取task.json文件。
    • @maxjeffos 你能得到task.json 文件吗?
    • 嗨 @Cece Dong - MSFT,是的,我能够使用以下命令获取 task.json 文件:``` const taskJsonPath = path.join(__dirname, "..", "task.json "); ``` 这样我就从任务文件中解析出版本,首先使用JSON.parse(...),然后获取Major/Minor/Patch 字段。谢谢!
    猜你喜欢
    • 2020-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-27
    • 2020-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多