如何使用boto3從EBS刪除標籤?

如何使用boto3從EBS刪除標籤?

我想使用 boto3/lambda 從 EBS 磁碟區中刪除標籤。在這個文檔中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磁碟區中刪除標籤呢?

答案1

它以非常意想不到的方式工作:儘管您使用建立標籤resource,但您必須使用以下方式刪除它們client

id = 'vol-5e0e9c3333'
tagRes = boto3.client('ec2', region_name=region)
ret = tagRes.delete_tags(
    Resources=[id],
    Tags=[{'Key': 'tag_name_to_del' }]
);

相關內容