问题标签 [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 回答
449 浏览

azure - 使用 System.PullRequest.TargetBranch 动态设置变量组

我正在尝试使用 azure devops 在拉取请求管道中动态设置组。Yaml 文件如下所示:

这不起作用并且条件被评估为“假”。只是为了确认它,我将条件颠倒如下

在正确设置哪个组之后,读取所有必需的变量并且管道工作。

任何人都可以在这里协助以使其在正确的条件下工作吗?

0 投票
1 回答
52 浏览

.net-core - dotnet 恢复文件匹配

我的代码库文件夹结构如下所示

  • 源代码
    • 测试
      • 用户.服务
    • 用户.服务
    • 用户.域
    • 用户基础设施

现在,如果只想恢复用户项目而不是测试项目,我无法让文件匹配工作。

我尝试了不同的排除组合。这是我的 yaml 文件的一部分,但这不起作用。它因模式匹配失败而失败。

知道我缺少什么吗?

0 投票
2 回答
1945 浏览

azure - 从 CI/CD YAML 引用 Azure Key Vault 机密

我们有一个多阶段 YAML 管道,可以对现有的一组 Azure 资源执行 CI/CD

阶段是

  1. 建造
  2. 部署到开发和运行测试
  3. 如果 Previous 成功 - 部署到生产环境并运行测试

我们AzureRmWebAppDeployment在部署阶段使用该任务,并使用该任务的 AppSettings 参数来指定特定于环境的设置。例如

该集中有两个设置EmailServer: SMTPUsernameEmailServer: SMTPPassword我想从 Azure KeyVault 中提取它们。我知道如何使用语法从 Azure 门户引用 KV 机密

但是如何引用 YAML 管道中的值以便在 Azure 中设置它?

0 投票
2 回答
938 浏览

azure - Retrieve client id for pipeline service principal in Azure Pipeline

In my Azure Pipeline (YAML), I am deploying an ARM template to create a key vault (among other resources), then running a PowerShell script to generate a certificate and store it in the key vault. This gives me a Forbidden error. In Use secrets from Azure Key Vault in Azure Pipelines, Microsoft suggests that I need to create an access policy on the key vault for the pipeline service principal. When I do this, the script succeeds.

Service connections Image from cache404

I would now like to create this access policy programmatically as part of the ARM template, but I don't know how to retrieve the object id for the pipeline service principal programmatically within the pipeline. Could someone please help?

0 投票
1 回答
600 浏览

azure-devops - 使用搜索模式 'D:\a\1\s\**\*.sln' Azure Devops 找不到解决方案

在通过 yaml 文件构建和部署 dacpac时,我收到了使用搜索模式“D:\a\1\s***.sln”找不到解决方案的错误。我的 yaml 文件如下。

需要注意的一点是,如果我有环境之外的步骤任务,它就可以工作。

所以,我的问题是如何让 yaml 文件在任何环境标签中找到解决方案(在这种情况下是环境:'DEV')。

0 投票
1 回答
204 浏览

yaml - 如何在单个 yaml 管道中使用多个构建定义

我们计划在我们的环境中实现 yaml 管道。我可以通过做一些研究来管理添加工作和任务。但不知道根据我的环境设计的更好方法。

我们现在正在维护 8 到 10 个模块的经典管道。对于每个模块,我们都有一个构建管道。对于发布,我们有基于环境的发布管道,例如一个用于开发和 qa 环境的管道,一个用于暂存和预生产,一个用于生产。

有人可以帮我如何为这个要求准备 yaml 管道吗?

谢谢!

0 投票
2 回答
331 浏览

azure-devops - YAML 管道:如果 RESOURCES_TRIGGERINGALIAS = "ui" 则执行任务

我有两个预合并管道:

  1. uipr
  2. apipr

还有一个 CI/CD 管道:

  1. 应用

在 UI 存储库中,每当向分支生成 PR 时mainuipr就会运行。API repo 和apipr 也是如此

如果此 PR 前运行成功,则Application管道将运行。

管道将Application填充resources.triggeringalias变量,其中包括执行 CI 的预合并管道的名称:uipr / apipr


Application管道还有两个布尔参数,称为compileuicompileapi,默认设置为false。如果我Application手动运行管道并将其中任何一个设置为 true,它将执行模板以编译选择的任何一个。


我想要实现的是:

  1. 如果resources.triggeringalias等于uiprparameters.compileui等于true则执行模板compileui.yaml
  2. 如果resources.triggeringalias等于apiprparameters.compileapi等于true则执行模板compileapi.yaml

这是我到目前为止所拥有的:

我知道(variables['resources.triggeringalias'], 'ui')仅在运行时发生,而不是在模板扩展时发生。这就是我所缺少的,不知道该怎么做

0 投票
2 回答
701 浏览

powershell - 在 powershell 脚本(Azure Devops Yaml)中难以转义引号字符

我的 azure piplines yaml 脚本使用 powershell 将 .CS 文件中的占位符字符串替换为当前日期字符串。这是要替换的值的行 ( 20200101000000)

这是执行此操作的 powershell 步骤

我想更改此步骤以"在搜索字符串周围包含引号字符,并将它们与新日期一起写入新输出值。但我似乎无法做到这一点。

我错误地尝试将转义的引号字符\"放在搜索和替换字符串中。但我猜你不能在单引号字符串中转义,所以它不起作用

这是错误:

我还尝试get-date在脚本的一部分周围使用双引号,这样我就可以转义引号字符,但这似乎也不起作用。我猜这是以这种方式编写脚本的限制。

还有其他方法可以实现我想要的吗?

0 投票
3 回答
318 浏览

azure-devops - 使用 YAML 模板作为经典管道中的任务/步骤/作业/阶段

我有许多使用经典界面定义的现有构建和发布管道,但我正在切换到使用更新的 YAML 管道和模板。将现有的经典管道转换为 YAML 管道的工作量太大,但我想使用 YAML 管道和模板定义任何新的管道。如有必要,是否有办法仍然使用现有经典管道中新定义的 YAML 模板?

编辑:澄清一下,这不是关于如何将经典管道批量迁移到 YAML的问题,而是关于在经典管道中使用 YAML 模板的问题。

0 投票
2 回答
777 浏览

vue.js - 基本 vue.js 上的 dist 文件夹

我用 Visual Studio 2019 创建了一个基本的 vue.js。我把它放在我的私有天蓝色服务器的一个 git 上。我有一个 Windows 构建代理。

yml 用于构建,没有错误。

我尝试了一些“复制/存档文件”命令。其中之一

每种方法似乎都表明从未创建 dist 文件夹。

类似的问题:为什么 azure build pipeline 没有为 angular build 生成 dist 文件夹


##[section]开始:npm install and build ======================================= ======================================== 任务:命令行描述:运行命令行脚本在 Linux 和 macOS 上使用 Bash,在 Windows 上使用 cmd.exe 版本:2.151.1 作者:Microsoft Corporation 帮助:https ://docs.microsoft.com/azure/devops/pipelines/tasks/utility/command-line ==== ==================================================== ========================= 生成脚本。=========================== 开始命令输出===================== ====== ##[command]"C:\windows\system32\cmd.exe" /D /E:ON /V:OFF /S /C "CALL "C:\DevOpsAgent_work_temp\2d81f910-5c00-4330 -9d13-27c8c30aa7a0.cmd""

yorkie@2.0.0 安装 C:\DevOpsAgent_work\171\s\node_modules\yorkie 节点 bin/install.js

检测到 CI,跳过 Git 挂钩安装

core-js@2.6.11 安装后 C:\DevOpsAgent_work\171\s\node_modules\core-js node -e "try{require('./postinstall')}catch(e){}"

感谢您使用 core-js (‌ https://github.com/zloirock/core-js ‌) 来填充 JavaScript 标准库!‌</p>

该项目需要您的帮助!请考虑在 Open Collective 或 Patreon 上支持 core-js:‌ >‌ https://opencollective.com/core-js ‌ >‌ https://www.patreon.com / zloirock ‌</p>

另外,core-js 的作者(‌ https://github.com/zloirock‌)正在寻找一份好工作-)‌</p>

ejs@2.7.4 安装后 C:\DevOpsAgent_work\171\s\node_modules\ejs 节点 ./postinstall.js

感谢您安装 ‌EJS‌:使用‌Jake‌ JavaScript 构建工具 (‌https://jakejs.com/‌)‌</p>

npm WARN 可选跳过可选依赖:fsevents@1.2.13 (node_modules\webpack-dev-server\node_modules\fsevents):npm WARN notsup 跳过可选依赖:fsevents@1.2.13 不支持的平台:想要 {"os":"darwin ","arch":"any"} (current: {"os":"win32","arch":"x64"}) npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.13 (node_modules\watchpack-chokidar2\ node_modules\fsevents):npm WARN notsup 跳过可选依赖:fsevents@1.2.13 不受支持的平台:想要 {"os":"darwin","arch":"any"}(当前:{"os":"win32" ,"arch":"x64"}) npm WARN 可选跳过可选依赖:fsevents@2.1.3 (node_modules\fsevents):npm WARN notsup 跳过可选依赖:fsevents@2.1.3 不受支持的平台:想要 {"os":"darwin","arch":"any"}(当前:{"os":"win32","arch": "x64"})

添加了来自 822 个贡献者的 1488 个包,并在 71.233 秒内审核了 1492 个包

44个包正在寻找资金运行npm fund以获取详细信息

发现 6 个漏洞(1 个低、3 个中等、2 个高)运行npm audit fix以修复它们,或npm audit了解详情##[section]Finishing: npm install and build