【发布时间】:2021-08-24 18:44:21
【问题描述】:
我正在浏览有关部署作业的 Azure Pipelines 文档,我觉得我错过了一些重要的时间。 我将解释到目前为止我所理解的,请纠正我的错误:
部署作业用于将您的应用程序部署到不同的环境。环境是一组资源(VM 或 Kubernetes 命名空间),您的应用程序可以部署到其中。
通常(如果不总是)这些资源是您要将应用程序部署到的服务器。
在您的管道定义中,部署作业类似于:
jobs:
# Track deployments on the environment.
- deployment: DeployWeb
displayName: deploy Web App
pool:
vmImage: 'Ubuntu-16.04'
# Creates an environment if it doesn't exist.
environment: 'smarthotel-dev'
strategy:
# Default deployment strategy, more coming...
runOnce:
deploy:
steps:
- checkout: self
- script: echo my first deployment
根据经验,如果环境不包含任何资源,则此作业将在指定池中的代理上运行。如果是,它将在环境中的所有资源上运行。
现在我在这里遗漏了一些非常基本的东西:为什么可以选择在没有资源的环境中运行此部署作业?创建和使用没有资源的“环境”有什么意义?为什么这里有一个pool: 定义,在这种情况下,该作业将在其代理之一上运行?关键不就是将您的应用程序部署到您的一个环境(并且实际上拥有这些环境)吗?
我必须说,围绕这个问题的文档非常不清楚。
【问题讨论】:
标签: azure-devops azure-pipelines