Azure DevOps 在 PREM 上实现“部署目标”

问题描述 投票:0回答:1

我正在尝试在 Azure Devops (YAML) 中做一些我可以使用部署目标和角色在 Octopus Deploy 中实现的事情。在本地部署时。

我们将代理池分为应用程序/环境池。因此,从权限的角度来看,池中的每个代理只能部署到给定的环境和给定的应用程序(使用特定的本地代理)。

我希望能够说我“为满足某些标准的所有代理运行此部署”,即池中的所有代理,或者有需求或能力的代理。

鉴于每个池都用于一个应用程序和环境,我希望能够说“为所有池运行此部署”。

我不想对我的管道进行硬编码或让其了解应用程序的部署位置。

就像我在 Octopus 中所说的那样,您只需指定一个角色,然后使用具有该角色的所有部署目标。

救命!

azure yaml azure-pipelines devops agent
1个回答
0
投票

您只需指定一个角色,所有具有该角色的部署目标都会被使用

Azure DevOps 中没有这样的角色。作为解决方法,您可以在部署作业中使用环境滚动部署策略。您可以向环境内的虚拟机添加不同的标签,这样您就可以将环境中的一组特定虚拟机作为部署目标。

jobs: 
- deployment: VMDeploy
  displayName: VMDeploy
  environment:
    name: Dev
    resourceType: VirtualMachine
    tags: tag1
  strategy:
    rolling:
      maxParallel: 3  
      deploy:
        steps:

在上面的示例中,名为“Dev”的环境中最多可以并行部署 3 个虚拟机,并且这些虚拟机都具有“tag1”。

© www.soinside.com 2019 - 2024. All rights reserved.