问题标签 [azure-pipelines-yaml]
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.
azure-devops - Azure DevOps PublishPipelineArtifact 在失败时未运行
我希望它在成功或失败时运行。我正在生成我自己的范围报告,该报告被发送到一个 .zip 文件。无论测试通过还是失败,我都在尝试发布此内容。我用以下内容设置了模板,但它说它被跳过了。我怎样才能让它在通过或失败时运行?:
azure-devops - 如何在具有变量组的 azure DevOps yaml 管道的变量中使用 IF ELSE?
除了变量组之外,我还试图将 2 个值之一分配给一个变量,但找不到如何使用 IF ELSE 的参考。
基本上我需要将这个 jerkins 逻辑转换为 azure DevOps。
詹金斯
我从以下参考中找到了 1 个参考,但如果变量部分没有变量组,则此参考似乎有效。
https://stackoverflow.com/a/57532526/5862540
但是在我的管道中,我已经有一个用于秘密的变量组,所以我必须使用名称/值约定,并且该示例不适用于诸如expected a mapping
或A mapping was not expected
或之类的错误Unexpected value 'env'
或者
azure-pipelines - 天蓝色管道中的一般超时参数
我知道如何为 Azure Pipelines 中的特定作业设置超时。(这里的工作文档)
我可以设置一个适用于该 YAML 中所有作业的全局定义,还是必须明确设置每个作业?
azure-devops - Azure DevOps - 在构建管道运行期间,代理在本地下载文件的路径是什么?
我们正在使用 Microsoft 托管代理为我们的应用程序的自动化测试场景运行构建管道。我们想要实现的是,拥有我们的自动化程序,下载文件(从无头 chrome 浏览器),然后导航到下载文件的路径并打开它。
我怎样才能找到在代理中下载文件的路径?
azure-devops - 如何将复杂的 DevOps 管道模板参数传递给脚本
在 Azure DevOps 管道模板中,我将参数声明为数组/序列
然后参数的值从管道定义传递为
我的问题是我无法在 YAML 语法(类型ToString()
)中按原样传递该数组,以便能够在我的模板中从 PowerShell 使用和处理该数组。尝试运行此管道时,出现以下错误:
/myTemplate.yml (Line: X, Col: X): Unable to convert from Array to String. Value: Array
. 错误消息中引用的行/列对应arguments: '-MyYAMLArgument ${{ parameters.myArray }}'
于我的模板。
我还尝试将参数映射为我的脚本的环境
这也不起作用:
/myTemplate.yml (Line: X, Col: Y): A sequence was not expected
. 该时间线/列指的是MY_ENV_VAR: ${{ parameters.myArray }}
.
有没有人遇到过类似的要求,将管道定义中定义的复杂类型(这里是对象的数组/序列)传递给 PowerShell 脚本?如果是这样,您是如何实现的?
azure-devops - 参数化变量名称作为 Azure Pipelines 中的任务输入
我一直在尝试制作一个 YAML 模板,该模板首先使用 AzureKeyVault@1 任务来获取一些 Azure KeyVault 机密的值,然后将这些机密用于 asqlAzureDacpacDeployment@1 任务中的 sqlUsername 和 sqlPassword。
我想将 KeyVault 机密的名称作为参数,以便此模板可用于许多不同的情况。
我之前已经成功地使用过这种技术,先使用 AzureKeyVault@1 任务,然后再使用 AzurePowerShell@4 任务,其中秘密作为 PowerShell 脚本的环境变量被注入。
这是工作模板的简化版本:
这是我无法使用相同技术的模板:
如果我硬编码秘密名称,我可以让模板工作:
虽然这对我们现在有用,但我发现这不是最理想的。有什么方法可以使这些参数化变量名起作用吗?
azure-devops - 发布分支 X 策略的触发器
问题:如何在 YAML 管道中为以下上下文设置 CI/CD。
分支机构
- 掌握
- 释放/{ALPHABETICAL NAME} 例如。release/Albert 下一个版本是 release/Bertrand 等等。
环境
- 接受:推送到主服务器上的所有内容
- 测试:最新版本前。释放/伯特兰
- 沙盒:最新版本-1(在这里我们可以测试修补程序)例如。释放/阿尔伯特
- live:最新版本-1(带有修补程序)
最接近的解决方案
build:创建项目构件 build.yml
release-phase1:部署 master 分支以接受 release-phase1.yml
release-phase2:部署发布分支以测试 release-phase2.yml
release-phase3:将 release-1 分支部署到沙箱,并在手动批准后部署到实时 release-phase3.yml
此解决方案无法满足我们需求的原因:
- 发布分支的名称不是静态的。
- 我们应该能够运行 release-phase3.yml 管道,而无需在此分支上运行构建。它应该从该分支的最新版本下载工件。事实并非如此。
短的目的