Git Jenkins build未正确执行'docker tag'命令
我正在尝试建立 为了设置Jenkins环境,我在AWS中部署了Ubuntu,安装了开发工具docker和Jenkins,并将Jenkins用户加入docker组。然后,我用默认配置设置Jenkins Jenkins安装完成后,我创建了一个“freestyle项目”,将SCM git存储库URL设置为,然后在下面添加了一个执行shell构建步骤:Git Jenkins build未正确执行'docker tag'命令,git,docker,jenkins,ansible,ansible-awx,Git,Docker,Jenkins,Ansible,Ansible Awx,我正在尝试建立 为了设置Jenkins环境,我在AWS中部署了Ubuntu,安装了开发工具docker和Jenkins,并将Jenkins用户加入docker组。然后,我用默认配置设置Jenkins Jenkins安装完成后,我创建了一个“freestyle项目”,将SCM git存储库URL设置为,然后在下面添加了一个执行shell构建步骤: cp awx/settings/local_settings.py.docker_compose awx/settings/local_settings
cp awx/settings/local_settings.py.docker_compose awx/settings/local_settings.py
make docker-compose-build
Error parsing reference: "gcr.io/ansible-tower-engineering/awx_devel:origin/devel" is not a valid repository/tag: invalid reference format
建造。相当简单,对吧?!不。构建创建了一个docker映像,就像它应该创建的那样。但是,Makefile的最后一个命令是使用以下命令标记docker图像:
docker tag ansible/awx_devel gcr.io/ansible-tower-engineering/awx_devel:origin/devel
但是,这将返回以下内容:
cp awx/settings/local_settings.py.docker_compose awx/settings/local_settings.py
make docker-compose-build
Error parsing reference: "gcr.io/ansible-tower-engineering/awx_devel:origin/devel" is not a valid repository/tag: invalid reference format
如果在类似的环境中运行make命令,则不会发生此错误。如果在类似的环境中运行docker标记命令,则不会发生这种情况
另外,我已尝试显式设置shell。
标记名必须是有效的ASCII,并且可以包含小写和大写字母、数字、下划线、句点和破折号。标记名不能以句点或破折号开头,最多可包含128个字符
因此,问题在于标记名中的/
。尝试使用原始版本进行标记
标记名必须是有效的ASCII,并且可以包含小写和大写字母、数字、下划线、句点和破折号。标记名不能以句点或破折号开头,最多可包含128个字符
因此,问题在于标记名中的
/
。尝试使用origin-devel
标记,就是这样。当我手动运行构建时,实际运行的命令是:docker-tag-ansible/awx\u-devel-gcr.io/ansible-tower-engineering/awx\u-devel:HEAD
。标记由$(shell git rev parse--abbrev ref HEAD)
生成。你知道为什么詹金斯的情况会不同吗?最后,问题是环境冲突。Jenkins将GIT_分支设置为origin/devel
,而不是devel
。就是这样。当我手动运行构建时,实际运行的命令是:docker-tag-ansible/awx\u-devel-gcr.io/ansible-tower-engineering/awx\u-devel:HEAD
。标记由$(shell git rev parse--abbrev ref HEAD)
生成。你知道为什么詹金斯的情况会不同吗?最后,问题是环境冲突。Jenkins将GIT_分支设置为origin/devel
,而不是devel
。