Jenkins构建未正确执行`docker tag`命令

时间:2018-07-27 07:49:26

标签: git docker jenkins ansible ansible-awx

我正在尝试构建https://github.com/ansible/awx

要设置我的Jenkins环境,我在AWS中部署了Ubuntu,安装了开发工具,docker和Jenkins,并将jenkins用户加入了docker组。然后,使用默认配置设置Jenkins。

设置Jenkins之后,我创建了一个“自由式项目”,将SCM git存储库URL设置为https://github.com/ansible/awx.git,然后将执行Shell构建步骤添加到以下内容:

cp awx/settings/local_settings.py.docker_compose awx/settings/local_settings.py
make docker-compose-build

构建。非常简单,对吧?不会。构建会按预期创建一个docker映像。但是,Makefile的最后命令是使用以下命令标记docker映像:

docker tag ansible/awx_devel gcr.io/ansible-tower-engineering/awx_devel:origin/devel

但是,这将返回以下内容:

Error parsing reference: "gcr.io/ansible-tower-engineering/awx_devel:origin/devel" is not a valid repository/tag: invalid reference format

如果我在类似的环境中运行make命令,则不会发生此错误。如果我在类似的环境中运行docker tag命令,则不会发生。

P.S。我尝试过显式设置外壳。

1 个答案:

答案 0 :(得分:4)

https://docs.docker.com/engine/reference/commandline/tag/

  

标签名称必须是有效的ASCII,并且可以包含小写和大写字母,数字,下划线,句点和破折号。标签名称不能以句点或破折号开头,并且最多可以包含128个字符。

因此,问题出在您的标签名称中/。尝试使用origin-devel进行标记。