如何在Boto3 AWS Lambda中使用资源方法创建标签

时间:2019-10-22 15:59:34

标签: aws-lambda boto3

我正在尝试使用ec2.resource方法而非ec2.CLIENT ...创建标签。我可以使用客户端创建标签,但尝试使用资源。我收到错误“ errorMessage”:“'dict'对象没有属性'create_tags'” 。我已经提供了我的代码。我正在比较某些正在使用if语句的标签,但是当我使用create_tag方法时出现错误。

    import boto3
    import collections
    import sys
    ec2 = boto3.resource('ec2',region_name='us-east-2')
    def lambda_handler(event, context):
    vol = ec2.Volume(id='1256')
    for delV in vol.tags:
    delV.create_tags(Tags=[{'Key':'Name', 'Value':'Test1'}])

1 个答案:

答案 0 :(得分:0)

尝试此操作,您无需像执行操作那样遍历现有标签;

import boto3
    import collections
    import sys
    ec2 = boto3.resource('ec2',region_name='us-east-2')
    def lambda_handler(event, context):
    my_list_of_ids = [1256, 1234, 2300]
    for volid in my_list_of_ids:
        vol = ec2.Volume(id=volid)
        for tag in vol.tags:
          if tag['Name'] == 'Name' and tag['Value'] == Value:
            print("Exists")
        vol.create_tags(Tags=[{'Key':'Name', 'Value':'Test1'}])