gpt4 book ai didi

azure - 用于管理 Azure Batch 应用程序版本保留的 PS 脚本

转载 作者:行者123 更新时间:2023-12-03 00:08:18 24 4
gpt4 key购买 nike

我们有一个 Azure Devops 版本,可以使用以下 PowerShell 脚本构建我们的存储库、打包并部署到我们的 Azure Batch 服务:

New-AzureRmBatchApplicationPackage -AccountName "$(BatchAccountName)" -ResourceGroupName "$(ResourceGroupName)" -ApplicationId "$(ApplicationId)" -ApplicationVersion "$(Build.BuildNumber)-$(Release.ReleaseId)" -Format zip -FilePath "$(System.DefaultWorkingDirectory)/_artifact/artifact/bin/theapplication.zip"

Set-AzureRmBatchApplication -AccountName "$(BatchAccountName)" -ResourceGroupName "$(ResourceGroupName)" -ApplicationId "$(ApplicationId)" -DefaultVersion "$(Build.BuildNumber)-$(Release.ReleaseId)"

$Context = Get-AzureRmBatchAccount -AccountName "$(BatchAccountName)" -ResourceGroupName "$(ResourceGroupName)"

Get-AzureBatchComputeNode -PoolId "$(PoolId)" -BatchContext $Context | Restart-AzureBatchComputeNode -BatchContext $Context

问题是,这似乎并没有“清理”应用程序包的旧版本,而且我在 API 文档中没有看到这样做的方法。所以每隔几周我就会收到这样的错误消息:

The maximum allowed number of application packages have already been added for the specified application.

如何更改此脚本来部署应用程序并清理旧版本,这样我的部署中就不会出现周期性故障?

最佳答案

根据是否要保留任何历史记录以及版本控制方式,您应该能够调用 Get-AzBatchApplicationPackage 来列出与应用程序 ( https://learn.microsoft.com/en-us/powershell/module/az.batch/get-azbatchapplicationpackage?view=azps-1.7.0 ) 关联的应用程序包。请注意,对于此调用,ApplicationVersion 实际上是可选的。

然后,在您不想保留的任何应用程序包上删除-AzBatchApplicationPackage ( https://learn.microsoft.com/en-us/powershell/module/Az.Batch/Remove-AzBatchApplicationPackage?view=azps-1.7.0 ),无论是除您添加的应用程序包之外的所有应用程序包还是版本上的某些功能都由您决定。

关于azure - 用于管理 Azure Batch 应用程序版本保留的 PS 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55811042/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com