gpt4 book ai didi

docker - 在 Docker 构建步骤中使用修订变量

转载 作者:行者123 更新时间:2023-12-02 18:14:31 24 4
gpt4 key购买 nike

尝试在我的 docker 构建步骤(版本 1.*)中使用 $(Rev:.r) 变量进行标记,但它似乎不起作用。我总是得到

2019-01-14T21:42:24.4149933Z ##[error]invalid argument "wp/imagename:0.6$(rev:.r)" for "-t, --tag" flag: invalid reference format 2019-01-14T21:42:24.4160700Z ##[error]See 'docker build --help'. 2019-01-14T21:42:24.4274219Z ##[error]/usr/bin/docker failed with return code: 125

似乎没有发生变量替换,看起来它正在使用 Qualify image name 选项运行它并小写 R。其他人可以使用 $(Rev:.r)变量?

无论我在哪里尝试使用该变量,我都可以在“图像名称”选项或“参数”选项中使用它,但它会给我同样的错误。

-t wp/imagename:0.6$(Rev:.r)

最佳答案

如果不进行解析,您不能只获得“修订号”,它不会作为单独的字段存储在某处。 $(Rev:.r) 部分指示 Azure DevOps 提出使内部版本号唯一的第一个数字(并且在该特定示例中,在其前面放一个点)。只有最终版本号可用。

解决方法是,在内部版本号的末尾添加 $(Rev:.r)(如果不存在)。在 Docker 任务之前添加一个 PowerShell 脚本任务(您可以内联 PowerShell)并放置以下代码:

$buildNumber = $Env:BUILD_BUILDNUMBER
$revision= $buildNumber.Substring($buildNumber.LastIndexOf('.') + 1)
Write-Host ("##vso[task.setvariable variable=revision;]$revision")

在你的 docker 中使用 $revision 变量:

-t wp/imagename:0.6$(revision)

关于docker - 在 Docker 构建步骤中使用修订变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54189703/

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