gpt4 book ai didi

Azure devops Octopus部署版本名称semver检查

转载 作者:行者123 更新时间:2023-12-03 03:56:09 25 4
gpt4 key购买 nike

我们正在使用 Azure Devops 和 Octopus 部署。我已经集成了发布步骤,并且发布创建以及发布到第一个环境(在我的例子中是开发)正在发生,没有任何问题。

后续版本存在问题。发布在发布名称的语义版本控制检查中失败。

'1.2.1023.0508-09' is not a valid version string

at Octopus.Client.Model.SemanticVersion.Parse(String value, BooleanpreserveMissingComponents)

在第一阶段,我创建 Octopus 版本,并在同一任务中部署到开发环境(使用 Azure devops 中的 Create Octopus Release 任务)

create-release "--project=<projectName>" "--releaseNumber=1.2.1023.0508-09" "--server=<serverName>" "--apiKey=***" --enableServiceMessages "--deployTo=Development" --progress "--releaseNotesFile=<path>"

这一步成功了。在下一阶段,我尝试了两种变体,

  • 促进发布

promote-release "--project=projectName" "--server=serverName""--apiKey=***" "--from=Development" "--to=envName"

  • 部署发布

deploy-release "--project=projectName" "--releaseNumber=latest""--server=serverName" "--apiKey=***" "--deployTo=envName"

它们都给出相同的错误,说版本名称不是有效的版本字符串。

我的困惑是,如果名称不正确,即使第一次部署也会失败。如果正确且被允许,那么后续阶段的发布也应该会成功。

如果有人以前遇到过这样的问题,或者可以添加一些指针来解决这个问题,这将非常有帮助。

最佳答案

这听起来像是一个错误,但我需要更多时间来重现和验证。您可以分享您所使用的八达通及八达通扩展程序的版本吗?

我对此的最佳建议是根据 Azure DevOps 内部版本号确定版本号,并使用该变量来控制要部署的版本。如果您在各个阶段之间创建了其他版本,则使用“最新”版本可能会适得其反。

如果您可以将 Azure DevOps 内部版本号设置为与您希望的 Octopus 版本号 (1.2.1023.0508-09) 相同的格式,则可以使用以下命令来构建和升级版本。

create-release "--project=<projectName>" "--releaseNumber=$(Build.BuildNumber)" "--server=<serverName>" "--apiKey=***" --enableServiceMessages "--deployTo=Development" --progress "--releaseNotesFile=<path>"

deploy-release "--project=projectName" "--releaseNumber=$(Build.BuildNumber)" "--server=serverName" "--apiKey=***" "--deployTo=envName"

这将确保您推广的版本与管道中创建的版本相同。

关于Azure devops Octopus部署版本名称semver检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64503705/

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