Я хочу удалить тег из тома EBS с помощью boto3 / lambda. В этом документе https://boto3.readthedocs.io/en/latest/reference/services/ec2.html#volume Я вижу только create_tags (). Он подходит для изменения тегов и, например, чтобы установить пустое значение, но мне нужно полностью удалить тег.
Я пробовал create_tags (), используя пустое значение, и просто create_tags () со всеми тегами, которые мне нужно сохранить, и исключая их, но это не работает: теги, которые я хочу удалить, остаются нетронутыми.
tagRes = boto3.resource('ec2', region_name=region);
volume = tagRes.Volume(id);
...
tagsToKeep.append({'Key': tagName, 'Value': 'keep it'})
...
ret = volume.create_tags(
Resources=[id],
Tags=tagsToKeep
);
Итак, как удалить тег с тома EBS?
Это работает довольно неожиданным образом: несмотря на то, что вы создаете теги, используя resource
, вы должны удалить их, используя client
:
id = 'vol-5e0e9c3333'
tagRes = boto3.client('ec2', region_name=region)
ret = tagRes.delete_tags(
Resources=[id],
Tags=[{'Key': 'tag_name_to_del' }]
);