gpt4 book ai didi

azure - 在Azure模板存储库中,有没有办法提及azure任务 'pythonScript'的filePath参数的存储库?

转载 作者:行者123 更新时间:2023-12-03 00:41:35 25 4
gpt4 key购买 nike

我有一个用于构建管道的模板存储库,名为“azure-templates-repo”,我有如下所述的 python 任务模板:

steps:
- task: PythonScript@0
inputs:
scriptSource: 'filepath'
scriptPath: 'python_test.yml' #this is located on repo: 'azure-templates-repo'

我的问题是关于 scriptPath,当我在存储库 my-great-app 的构建管道 azure-pipeline.yml 中使用此模板时,azure 尝试查找my-great-app 中的文件,而不是它真正位于 azure-templates-repo 的位置。

那么,有没有办法为 azure 任务“pythonScript”的 filePath 参数提及存储库?

最佳答案

当您在管道中使用模板时,您仅使用 .yml 模板文件,而不是包含该模板的整个存储库。因此,默认情况下,当组成主管道时,模板存储库中可能存在的其他附加文件(除了模板本身)将不可用。

如果您需要访问模板存储库中存在的脚本或其他文件,您将需要使用 checkout 任务并实际 checkout 模板存储库。

-结账:git://MyProject/MyTemplateRepo

如果您检查多个存储库,需要注意的一件事是,它会导致您的 $(Build.SourcesDirectory) 结构变为 change 。实际上,这可能会带来痛苦,因为您必须更新任何预期主存储库位置位于 $(Build.SourcesDirectory) 根目录的任务。

对于新管道来说,$(Build.SourcesDirectory) 的突变对于您来说可能不是什么大问题。如果您有很多管道想要在其中使用新模板,并且需要支持脚本,那么这可能会变得很痛苦。

一种选择是打包支持模板脚本,并将它们发布到内部包源。然后在模板 block 中将所需的脚本作为包拉下来。我之前曾在需要支持 powerShell 脚本的模板中使用过此策略。我们将这些脚本管道化并将其发布为 universal packages ,然后在模板级别使用它们。

关于azure - 在Azure模板存储库中,有没有办法提及azure任务 'pythonScript'的filePath参数的存储库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60231277/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com