isUpgrade 设置如何影响 Azure DevOps 中 Service Fabric 应用程序部署任务中的部署过程
How isUpgrade setting affects deployment process in Service Fabric Application Deployment task in Azure DevOps
Azure Devops 具有将应用程序部署到 ServiceFabric 的标准任务。该任务名为 Service Fabric 应用程序部署,并记录在案 here。在其他设置中,它包含一个可选的布尔值 isUpgrade 设置(默认值 'true')。我试图将其明确设置为 true 和 false,但我没有发现任务行为有任何差异。在这两种情况下,部署都成功了,之前部署的所有包仍然被预配,并且 Azure Pipelines 日志是相同的。部署时间也是一样。
我的问题是设置会影响什么?也许,有人在他的 CI 管道中使用了它。
Service Fabric 中有两种类型的部署。此 isUpgrade
标志控制您正在执行的操作升级类型。
常规
基本上这会删除旧应用程序并部署新版本。因此,如果您有 Statefull 服务,这将删除所有状态。定期升级时会有停机时间。
升级
升级会做很多事情,它会保持状态,它会进行健康检查,确保服务可用。当健康检查失败时回滚,...
如果您的应用程序或服务没有更改,则您的集群中没有任何更改。
通常升级需要更多时间(这在很大程度上取决于您的健康检查规则)。参见 application upgrade flowchart
有关 2 types
的更多信息
如果你look at the code的任务。你看只有overridePublishProfileSettings
是true
才会生效。否则使用 PulishProfile.xml。
Azure Devops 具有将应用程序部署到 ServiceFabric 的标准任务。该任务名为 Service Fabric 应用程序部署,并记录在案 here。在其他设置中,它包含一个可选的布尔值 isUpgrade 设置(默认值 'true')。我试图将其明确设置为 true 和 false,但我没有发现任务行为有任何差异。在这两种情况下,部署都成功了,之前部署的所有包仍然被预配,并且 Azure Pipelines 日志是相同的。部署时间也是一样。
我的问题是设置会影响什么?也许,有人在他的 CI 管道中使用了它。
Service Fabric 中有两种类型的部署。此 isUpgrade
标志控制您正在执行的操作升级类型。
常规
基本上这会删除旧应用程序并部署新版本。因此,如果您有 Statefull 服务,这将删除所有状态。定期升级时会有停机时间。
升级
升级会做很多事情,它会保持状态,它会进行健康检查,确保服务可用。当健康检查失败时回滚,... 如果您的应用程序或服务没有更改,则您的集群中没有任何更改。
通常升级需要更多时间(这在很大程度上取决于您的健康检查规则)。参见 application upgrade flowchart
有关 2 types
的更多信息如果你look at the code的任务。你看只有overridePublishProfileSettings
是true
才会生效。否则使用 PulishProfile.xml。