无人机IO从另一个帐户发布到ECR



我正在使用Drone.IO CI/CD软件构建图像,并将其发布到同一地区EU-WEST-1的另一个AWS帐户中的ECR。

我已经设置了IAM人工制品,它正在连接,但在最后一步失败了。Drone似乎忽略了我的注册表选项im传递它,只使用AWS API调用中的注册表。

无人机在账号0987654321中运行,我正试图将图像推送到账号1234567890。

ecr:
image: plugins/ecr
registry: 12345677890.dkr.ecr.eu-west-1.amazonaws.com
repo: repo1/app_name
region: eu-west-1
tags: latest
dockerfile: Dockerfile

我得到以下错误:

+ /usr/local/bin/docker tag blah 0987654321.dkr.ecr.eu-west-1.amazonaws.com/repo1/app_name:latest
+ /usr/local/bin/docker push 0987654321.dkr.ecr.eu-west-1.amazonaws.com/repo1/app_name:latest
The push refers to repository [0987654321.dkr.ecr.eu-west-1.amazonaws.com/repo1/app_name]
name unknown: The repository with name repo1/app_name does not exist in the registry with id '0987654321'

这使得它看起来似乎甚至没有使用registry属性,而是使用API调用中的registry。

我知道可能有点晚了,但在我的旧工作中使用了Drone来处理将图像推送到另一个AWS帐户中的ECR存储库的特定情况。在旧的bash ECR插件(现在是Go(中,如果没有错的话,它曾经使用--registry-ids选项。现在看来它已经被记录下来了。

这看起来像是ECR插件中的一个已知错误。registry设置被忽略,取而代之的是从AWS返回的默认注册表,这将是Drone运行的帐户中的注册表。

一旦这个PR被合并,它应该会起作用。

相关内容

  • 没有找到相关文章

最新更新