azure-devops - 在 CLI 任务中使用服务连接?
问题描述
在运行 BASH 或 Azure CLI 等 CLI 任务时,Azure Devops 如何公开服务连接详细信息?
假设我有一个诸如 Packer 或 Terraform 之类的工具,并且我想运行使用服务连接针对 azure 进行身份验证的任务。
是否有一些带有我可以读取和使用的 clientid + secret 的文件?还是一些系统变量?
还是我需要遵循某种托管身份认证流程?
我知道我可以通过变量提供这些细节,但我试图避免这种情况,理想情况下我想要一种简单的方法来利用已经创建的服务连接。
解决方案
好吧,我不敢相信我刚刚发现了这个。不确定这个选项有多新,但是......如果你检查 Azure CLI 市场任务并查看高级选项,你会看到:
因此,例如,要将其与 Terraform 一起使用,您可以执行以下操作:
export ARM_CLIENT_ID=$servicePrincipalId
export ARM_CLIENT_SECRET=$servicePrincipalKey
export ARM_SUBSCRIPTION_ID=`az account show -o json | jq .id`
export ARM_TENANT_ID=`az account show -o json | jq .tenantId`
推荐阅读
- html - iPhone 的“添加到收藏夹”需要多大的图标大小?
- javascript - 为 Datepicker 设置本地存储
- xamarin - 使用 xamarin android 覆盖清单文件
- amazon-web-services - aws NLB 导致超时
- javascript - 如何在自定义格式标题与新行之间正则表达式文本?
- discord.py - 升级时添加角色
- python - 在python中查找丢失的数字
- javascript - 在打印 pdf 表格分解和计算时
- powershell - Powershell 变量超过 azure devops 变量
- python - Python蓝牙广告