- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在 AzureDevOps 中创建一个新管道。在配置选项卡中,我选择部署到 Azure Kubernetes 服务
并选择适当的值,例如集群名称
、命名空间
等。
当我单击“下一步”时,azure Devops 尝试验证并创建管道,但随后显示以下错误:
Failed to create an app in Azure Active Directory. Error: Insufficientprivileges to complete the operation. Ensure that the user haspermissions to create an Azure Active Directory Application.
该错误是不言自明的,它似乎试图在幕后创建 AD 应用程序,但用户没有这样做的权限。
经过一些研究后,我相信有两种方法可以让我的用户能够创建这样的管道:(但也许我错了)
用户设置
选项卡中,启用“用户可以注册应用程序”标记。此选项对我不起作用,因为它使每个人都能够创建应用,而这不是我想要的。有没有一种方法可以在 AzureDevOps 中创建管道,而无需执行我描述的两个选项?
最佳答案
当用户没有足够的权限在 Azure AD 中创建应用程序时,会出现上述错误。请参阅here .
如果您不想将用户可以注册应用程序
更改为是
,这样Azure AD租户中的任何用户都可以注册应用程序。您需要要求管理员为您分配适当的管理员角色,该角色可以创建和管理应用注册的各个方面。
例如应用程序开发人员
角色。请参阅available roles和 role permissions .
Users in this role can create application registrations when the "Users can register applications" setting is set to No.
另一个解决方法是创建 service principal用户已在 Azure Active Directory 中拥有所需的权限。这样,您将必须手动配置管道,而无需使用部署到 Azure Kubernetes 服务
管道模板。
1,首先您需要创建以下服务连接:
创建Azure container Registry service connection使用服务主体。
创建Kubernetes service connection .
2、创建新管道时,需要在Configure your pipeline
页面中选择Starter pipeline
。然后将 docker 和 kubernete 任务添加到 yaml 管道中。请参阅示例 Build and push to Azure Container Registry , Deploy to Kubernetes .
您可以引用下面的管道示例,并相应地更改变量和设置。
trigger:
- master
resources:
- repo: self
variables:
dockerRegistryServiceConnection: 'ACRserviceConnectionName'
kubernetesServiceConnection: "kubernetesServiceConnectionName"
imageRepository: 'nigx'
containerRegistry: 'leviregistry.azurecr.io'
dockerfilePath: '**/Dockerfile'
tag: '$(Build.BuildId)'
imagePullSecret: 'leviregistry8720a6c7-auth'
# Agent VM image name
vmImageName: 'ubuntu-latest'
stages:
- stage: Build
displayName: Build stage
jobs:
- job: Build
displayName: Build
pool:
vmImage: $(vmImageName)
steps:
- task: Docker@2
displayName: Build and push an image to container registry
inputs:
command: buildAndPush
repository: $(imageRepository)
dockerfile: $(dockerfilePath)
containerRegistry: $(dockerRegistryServiceConnection)
tags: |
$(tag)
- upload: manifests
artifact: manifests
- stage: Deploy
displayName: Deploy stage
dependsOn: Build
jobs:
- deployment: Deploy
displayName: Deploy
pool:
vmImage: $(vmImageName)
strategy:
runOnce:
deploy:
steps:
- task: KubernetesManifest@0
displayName: Create imagePullSecret
inputs:
action: createSecret
secretName: $(imagePullSecret)
kubernetesServiceConnection: $(kubernetesServiceConnection)
dockerRegistryEndpoint: $(dockerRegistryServiceConnection)
- task: KubernetesManifest@0
displayName: Deploy to Kubernetes cluster
inputs:
action: deploy
kubernetesServiceConnection: $(kubernetesServiceConnection)
manifests: |
$(Pipeline.Workspace)/manifests/deployment.yml
$(Pipeline.Workspace)/manifests/service.yml
imagePullSecrets: |
$(imagePullSecret)
containers: |
$(containerRegistry)/$(imageRepository):$(tag)
关于Azure DevOps,由于 AD 权限不足而无法创建管道,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63900414/
市场是否支持 Azure Devops Server 2020?我最近构建了一个扩展并添加了对 ADO Server 2019 的支持,但是当我更新安装目标以包含新的服务器版本时,我在市场中没有看到任
在公司,我们将 Azure Devops 工作区的 URL 从 https://oldname.visualstudio.com 更改为至 https://dev.azure.com/newname
我想将 SSH 公钥添加到运行我的 yaml 管道的 Azure DevOps 帐户。根据这篇文章:Azure DevOps API Add public key在使用 PAT token 进行身份验
Azure CLI与 Azure DevOps extension已更换 VSTS CLI .但我找不到有关如何使用 Azure CLI 和 Azure DevOps 扩展连接到 Team Found
我正在尝试使用 API 在 Azure devops 中创建/更新工作项。如果项目没有任何关系,我可以创建/更新它。但是,如果我指定关系,例如亲子然后我得到以下错误: TF401349:发生意外错误,
我们有一个每晚安排的管道运行测试并将结果发布到测试运行。我们可以看到测试运行的 url,因为它是由 PublishTestResults@2 任务生成的。我想通过向一组用户发送测试运行的 devops
我在 azure devops 中有 2 个变量 Var1= A,B,C Var2= 1,2 我需要在以下条件下运行一个任务 Var1=A,B,C & Var2=1,2 Var1=A & Var2=1
我正在尝试运行 container job在本地构建和缓存的 Docker 镜像(来自 Dockerfile)中运行,而不是从注册表中拉取镜像。根据我目前的测试,代理只尝试从注册表中提取图像,而不是在
我有以下配置:Azure DevOps 服务器版本 Dev18.M170.8 trigger: none # No CI build pr: none # Not for pull requests
Azure DevOps 是否禁止人们在创建合并请求时添加/删除所需的审阅者? 我已经设置了“自动包含审稿人”的政策,其中包含一组必需的审稿人。 但创建 PR 的任何人仍然可以轻松地将其他人添加到所需
在 Azure DevOps 中,我有一个项目管理员组。它的权限设置为除了 删除共享的 Analytics View &编辑共享的 Analytics View 是允许的。 有一个团队和区域设置,项目
我在 azure devops 中找到了以下任务定义: - task: DotNetCoreCLI@2 name: 'CleanProjectsBeforeBuild' displayName
TL;DR - 是否有 Azure DevOps 管道任务用于在构建过程中格式化代码?我一直没能找到一个,但真的会发现它很有用。 我的团队使用免费的 CodeMaid “美化”(格式化)C# 代码的
我正在尝试从我在 Azure DevOps 中的项目的根目录中获取 dist 文件。但无论我做什么,我都会继续收到此错误: ##[error]Error: ENOENT: no such file o
我想在发布时设置通知。我以前可以这样做,但现在我无法为不同的项目设置它。我不知道 Azure DevOps 中是否发生了某些变化,或者我搞砸了自己。 Azure 告诉我指定一个有效的筛选器,但我没有要
我正在尝试设置构建管道以在特定代理池上运行。目前它坚持在“Azure Pipelines”池上工作: 但是我无法更改构建管道的代理池(至少我不确定如何)。 我的 YAML 如下所示: trigger:
我正在尝试使用一些使用条件编译符号的项目在 Azure DevOps 中设置构建。构建不断失败,因为它似乎没有看到我的符号。任何想法在哪里应用设置? 我有两个共享一些代码的项目,符号基本上用于控制项目
我正在寻找一种在 Azure DevOps .yaml 文件中设置动态需求名称的方法。 现在我们有一些由 Azure DevOps 服务随机选择的自托管构建代理,但有时我们需要选择一个代理来调查它为什
当我们在 Azure DevOps 中创建一个新的 Pull Request 时,我们最近注意到 Reviewer 在默认情况下是 Optional 的。 这引起了一些困惑,据我所知,过去总是默认要求
使用继承的进程 - 我们不能修改 Reason 或 Root Cause 选项列表值?如果我们不能对其进行定制以适应我们的流程,那么专业组织如何实际使用它? https://docs.microsof
我是一名优秀的程序员,十分优秀!