相关疑难解决方法(0)

AWS CLI:ECR列表图像,获取最新版本

如果需要,使用AWS CLI和jq,我正在尝试在特定仓库中获取最新图像的标记.

让我们调用回购foo,并说最新的图像被标记bar.我用什么查询返回bar

我得到了

aws ecr list-images --repository-name foo
Run Code Online (Sandbox Code Playgroud)

然后意识到列表图像文档没有提供日期作为可查询字段的引用.在终端中粘贴以上内容为我提供了仅包含标签和摘要的密钥对,没有日期.

还有一些方法可以获得"最新"的图像吗?我可以假设它将永远是返回输出中的第一个或最后一个吗?

amazon-ec2 amazon-web-services aws-cli

8
推荐指数
4
解决办法
9594
查看次数

AWS boto3 page_iterator.search 无法将 datetime.datetime 与 str 进行比较

尝试捕获 s3 上的增量文件(上次处理后创建的文件)。为此,使用 boto3 过滤器迭代器通过查询 LastModified 值而不是返回所有文件列表并在客户端站点上进行过滤。

根据http://jmespath.org/ ?,以下查询有效并过滤以下 json respose;

filtered_iterator = page_iterator.search(
"Contents[?LastModified>='datetime.datetime(2016, 12, 27, 8, 5, 37, tzinfo=tzutc())'].Key")

for key_data in filtered_iterator:
print(key_data)
Run Code Online (Sandbox Code Playgroud)

但是它失败了;

RuntimeError: xxxxxxx has failed: can't compare datetime.datetime to str
Run Code Online (Sandbox Code Playgroud)

示例分页器响应;

{
"Contents": [{
    "LastModified": "datetime.datetime(2016, 12, 28, 8, 5, 31, tzinfo=tzutc())",
    "ETag": "1022dad2540da33c35aba123476a4622",
    "StorageClass": "STANDARD",
    "Key": "blah1/blah11/abc.json",
    "Owner": {
        "DisplayName": "App-AWS",
        "ID": "bfc77ae78cf43fd1b19f24f99998cb86d6fd8220dbfce0ce6a98776253646656"
    },
    "Size": 623
}, {
    "LastModified": "datetime.datetime(2016, 12, 28, 8, 5, 37, tzinfo=tzutc())",
    "ETag": "1022dad2540da33c35abacd376a44444",
    "StorageClass": "STANDARD",
    "Key": "blah2/blah22/xyz.json", …
Run Code Online (Sandbox Code Playgroud)

amazon-s3 boto3

5
推荐指数
2
解决办法
2198
查看次数