我正在使用 boto3 API 来描述来自 AWS 的图像。我的列表 AMI 具有相同的名称,AWS 会自动在该名称上生成后缀。我想知道在创建时间顺序列表中是否有 describe_image 的选项。目前我必须以编程方式对该返回字典进行排序。
任何帮助,将不胜感激。
我正在使用 boto3 API 来描述来自 AWS 的图像。我的列表 AMI 具有相同的名称,AWS 会自动在该名称上生成后缀。我想知道在创建时间顺序列表中是否有 describe_image 的选项。目前我必须以编程方式对该返回字典进行排序。
任何帮助,将不胜感激。
不可以。无法按特定顺序请求返回数据。
您可以使用 aFilter
来限制结果,但不能对结果进行排序。
您需要以编程方式对结果进行排序以识别所需的 AMI。
作为参考,可以按创建日期对图像进行排序,如下所示
import boto3
def image_sort(elem):
return elem.get('CreationDate')
ec2_client = boto3.client('ec2')
images = ec2_client.describe_images(ImageIds=["my", "ami", "ids"])
# The ec2 describe_images call returns a dict with a key of
# 'Images' that holds a list of image definitions.
images = images.get('Images')
# After getting the images, we can use python's list.sort
# method, and pass a simple function that gets the item to sort on.
images.sort(key=image_sort)
print(images)