Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git Jenkins build未正确执行'docker tag'命令_Git_Docker_Jenkins_Ansible_Ansible Awx - Fatal编程技术网

Git Jenkins build未正确执行'docker tag'命令

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

我正在尝试建立

为了设置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.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