Gitlab CI 管道失败:标签问题
Gitlab CI pipeline failing: a tag issue
我的 gitlab CI 管道设置为 运行 从我的 maven 项目创建的 docker 图像进行 maven 测试。
我已经在我的 master b运行ch 上测试了管道,它工作正常并且 运行 测试。
但是我创建了一个新功能 b运行ch,现在又 运行 连接了管道,但是我现在收到这个错误
error checking push permissions -- make sure you entered the correct tag name, and that you are authenticated correctly, and try again: getting tag for destination: repository can only contain the runes `abcdefghijklmnopqrstuvwxyz0123456789_-./`: it2901/cs344-maven:feature/produce-allocation-pdf
ERROR: Job failed: command terminated with exit code 1
我似乎根本无法查明问题所在。我也将标签:tut3
推送到功能 b运行ch。
这是我的.gitlab-ci.yml:https://controlc.com/7a94a00f
根据您分享的内容,您已配置:
VERSIONLABELMETHOD: "tut3" # options: "","LastVersionTagInGit"
应该是:
VERSIONLABELMETHOD: ""
或
VERSIONLABELMETHOD: "LastVersionTagInGit"
或
VERSIONLABELMETHOD: "OnlyIfThisCommitHasVersion"
当您指定 "tut3"
时,脚本会将其视为 ""
(空字符串).假设您没有在任何地方定义 $VERSIONLABEL
$ADDITIONALTAGLIST
也将为空。
稍后在代码中您可以看到它被执行了:
if [[ "$CI_COMMIT_BRANCH" == "$CI_DEFAULT_BRANCH" ]]; then ADDITIONALTAGLIST="$ADDITIONALTAGLIST latest"; fi
假设 $CI_DEFAULT_BRANCH
设置为 master
如果您使用单独的分支 mybranch
上面的代码将不会执行,因此 Kaniko 命令行可能没有any a 既不是有效的 $FORMATTEDTAGLIST
也不是 $IMAGE_LABELS
.
您可以通过在调用 Kaniko 之前查看脚本的输出来进行调试:
...
echo $FORMATTEDTAGLIST
echo $IMAGE_LABELS
mkdir -p /kaniko/.docker
...
黑客可以用您的自定义分支覆盖 $CI_DEFAULT_BRANCH
。
✌️
我的 gitlab CI 管道设置为 运行 从我的 maven 项目创建的 docker 图像进行 maven 测试。
我已经在我的 master b运行ch 上测试了管道,它工作正常并且 运行 测试。
但是我创建了一个新功能 b运行ch,现在又 运行 连接了管道,但是我现在收到这个错误
error checking push permissions -- make sure you entered the correct tag name, and that you are authenticated correctly, and try again: getting tag for destination: repository can only contain the runes `abcdefghijklmnopqrstuvwxyz0123456789_-./`: it2901/cs344-maven:feature/produce-allocation-pdf
ERROR: Job failed: command terminated with exit code 1
我似乎根本无法查明问题所在。我也将标签:tut3
推送到功能 b运行ch。
这是我的.gitlab-ci.yml:https://controlc.com/7a94a00f
根据您分享的内容,您已配置:
VERSIONLABELMETHOD: "tut3" # options: "","LastVersionTagInGit"
应该是:
VERSIONLABELMETHOD: ""
或
VERSIONLABELMETHOD: "LastVersionTagInGit"
或
VERSIONLABELMETHOD: "OnlyIfThisCommitHasVersion"
当您指定 "tut3"
时,脚本会将其视为 ""
(空字符串).假设您没有在任何地方定义 $VERSIONLABEL
$ADDITIONALTAGLIST
也将为空。
稍后在代码中您可以看到它被执行了:
if [[ "$CI_COMMIT_BRANCH" == "$CI_DEFAULT_BRANCH" ]]; then ADDITIONALTAGLIST="$ADDITIONALTAGLIST latest"; fi
假设 $CI_DEFAULT_BRANCH
设置为 master
如果您使用单独的分支 mybranch
上面的代码将不会执行,因此 Kaniko 命令行可能没有any a 既不是有效的 $FORMATTEDTAGLIST
也不是 $IMAGE_LABELS
.
您可以通过在调用 Kaniko 之前查看脚本的输出来进行调试:
...
echo $FORMATTEDTAGLIST
echo $IMAGE_LABELS
mkdir -p /kaniko/.docker
...
黑客可以用您的自定义分支覆盖 $CI_DEFAULT_BRANCH
。
✌️