问题标签 [azure-yaml-pipelines]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
60 浏览

azure-devops - 在作业之间动态创建作业依赖关系

我试图弄清楚如何动态创建依赖项并根据条件运行作业。

这是我的管道的结构:

主要.yaml:

在 deployQA 中,我有一个单独的作业来复制构建工件,如果没有 deployQA 中的复制步骤,接下来的两个作业(deployApp1 和 deployApp2)将失败。

我想创建一个对job: copy for job: deployApp1的条件依赖,这样如果我部署到没有这种依赖关系的 Dev,它应该能够跳过。我已经尝试了不同帖子的不同解决方案,但没有任何运气。

我知道我是否可以为副本添加额外的阶段来解决我的问题,但我希望将副本作为 QA 阶段的一部分。

0 投票
0 回答
25 浏览

azure-devops - 如何在 Azure 中收集多个 Pipelines 的 Cron Schedule 时间(建议)

我有一个管道,它由一个 YAML 文件和一个自动触发管道的 Cron 调度程序组成。

在此处输入图像描述

我知道我可以在这里看到“预定运行”下的时间表

在此处输入图像描述

我的问题是,是否有一种方法可以在一个界面中从多个管道收集 cron 计划,以便可以查看给定管道的下一次运行何时发生在我的所有管道上?我试图检查其他 Azure 解决方案,但找不到可以使用的东西(可能只是我)。

0 投票
1 回答
30 浏览

azure-devops - 在 azure devops 中运行 yaml 管道时出错

我正在使用带有自托管代理的 yaml 管道运行 java 代码,但它显示以下错误

##[错误]在池Winagentpool中找不到满足指定要求的代理:maven,Agent.Version -gtVersion 2.163.1

有人可以帮我解决这个问题,在此先感谢。

0 投票
0 回答
22 浏览

azure-pipelines - 多次访问输出变量会呈现空字符串

我正在尝试从多个连续阶段的一个阶段访问输出变量。

第一次访问变量时,我可以访问该值,但下次我尝试它是一个空字符串。

在下面的示例中B1打印'production'C1打印''

日志如下所示:

0 投票
1 回答
263 浏览

azure - 经典与 YAML 管道 - Azure Devops 中的批准和盖茨/检查

我们目前正在使用经典管道通过 Azure Devops 进行发布。

我们希望将其移至多阶段 YAML,因为这样可以更轻松地管理标准模板并更好地跟踪更改。

根据我们的分析,YAML 支持经典管道的大部分功能。

但是,“批准和盖茨”没有明确的信息。

参考这篇文章,它谈到了门,但似乎更多来自经典而不是 yaml 支持的版本的上下文

https://docs.microsoft.com/en-us/azure/devops/pipelines/release/approvals/?view=azure-devops

我们需要确认或澄清以下几点 -

如果有人可以帮助澄清我们的疑问,那将有所帮助

0 投票
1 回答
285 浏览

python - YAML 管道无法将带有特殊字符的输入参数解析为 Python 任务

如何使用特殊字符(例如下面显示的字符)转义/处理括号/任意输入,以便我的 python 代码获得正确的字符串参数?

我有一个 YAML 管道,它将输入参数作为来自用户的字符串,并将该字符串作为参数提供给 Python 任务:

此输入参数适用于字母数字字符,但是当我输入具有左圆括号和右圆括号的字符串(例如 Foo(Bar))时,Python YAML 任务会打印错误:

/bin/sh: 1: 语法错误: "(" 意外

请注意,在 Python 脚本执行开始之前,管道日志中就出现了上述错误

成功输入字符串:FooBar

失败输入字符串:Foo(Bar)

我该如何处理,以便我的 Python 脚本获得正确的字符串?

Python脚本:

编辑:增加了更多的清晰度,并添加了 Python 脚本

0 投票
2 回答
598 浏览

azure-devops - Azure DevOps 管道构建名称基于不同存储库的分支

我们希望以包含日期和分支名称的方式命名我们的构建,以便在我们想要部署到我们的环境之一时可以轻松找到正确的工件。

我们有一个设置,其中有两个存储库:YAML 和 Code。管道位于 YAML 存储库中,我们想要构建和部署的代码位于代码存储库中。我已经设置了构建管道,以便在对代码存储库中的代码库进行更改时触发构建。但是,当构建被触发时,构建名称包含 YAML 存储库的分支名称。由于我们将此 repo 的主分支用于 CI 构建,因此构建的名称将类似于2021-01-01 103015 main

这使得我们在部署时很难找到正确的工件,因为一切似乎都指向一个主分支。相反,我们希望构建名称与2021-01-01 103015 Feature1 一致,其中 Feature1 是代码仓库的分支。

这就是我们在 YAML 中设置构建名称的方式:

有没有办法在构建名称中获取代码仓库的分支名称?

0 投票
1 回答
103 浏览

azure-devops - 将管道“名称”的值获取到 Azure 管道中的 PowerShell 命令中

azure-pipeline.yml设置了一个特殊的神奇变量,称为name导致设置管道名称。

我想在 PowerShell 脚本中使用此值将此值作为设置放入文本文件中。

name是否可以在 PowerShell 脚本中获取 的值?如何?(这在任何地方都有记录吗?)

解决方法

似乎不可能得到特殊name的东西,因此设置一个具有相同值的变量。

0 投票
1 回答
156 浏览

azure - 如果变量不等于 azure 管道 yaml 中的预期值,如何跳过模板?

我有一个 .yaml 文件

我创建变量有两个原因,

  1. 成为全球性的
  2. 我不希望它显示在用户的变量列表中

'command1'我希望仅在变量值不是时才执行模板'none'

目前它没有跳过,即使变量内的值不是无,它也会继续执行它。

我使用的另一种 if 条件格式是

以上都不起作用

请帮助解决此问题。

0 投票
1 回答
75 浏览

variables - 如何设置队列时间变量等于预期值以在 azure 管道中执行模板

当我运行管道时,UI 显示特定字段以收集输入并根据条件运行模板。我正在尝试获取参数并将其转换为变量并在我的情况下使用它。

尝试根据条件运行模板。条件变量在队列时间通过 API 设置

无论设置的值如何,模板都不会执行environment

这是一个错误还是我做错了什么?