Я пытаюсь протестировать с помощью moto некоторый код, который включает создание экземпляров EC2 с помощью boto3, и испытываю различное поведение с использованием и без использования moto.
Создание экземпляров:
inst = cli.ec2.create_instances(ImageId='<ami-image-id>', MinCount=1, MaxCount=5)
cli.ec2.create_tags(Resources = [inst[0].id, ],
Tags=[{'Key': 'tag:Env', 'Value': 'test'}, ])
Теперь яхотел бы получить эти экземпляры, используя ресурс boto ec2.
Без мото (работает как положено):
ec2.instances.filter(Filters=[{'Name': 'tag:Env', 'Values': ['test', ]}])
В результате получается список (генератор) всех экземпляров со значением тега 'env' test '.
С moto (не работает должным образом): Примечание: использует @moto.mock_ec2
Тот же вызов возвращает пустой «список».Хотя изменение test
на *
возвращает экземпляр.Я думаю, что фильтр не применяется.
ec2.instances.filter(Filters=[{'Name': 'tag:Env', 'Values': ['*', ]}])
Есть предложения?