0
私のpythonコードは以下の通りです。おかげインスタンスタグ情報boto3を使用しています:取得していないオブジェクト
import boto3
import yaml
def get_all_running_instances(unique_name):
"""
Returns instance data for given instance id.
:param unique_name:
:return:
"""
count = 1
rname = unique_name.rsplit('-', 1)[0] + '-' + str(count)
print rname
ec2 = boto3.resource('ec2')
instances = ec2.instances.filter(Filters=[{'Name': 'instance-state-name', 'Values': ['running', 'pending']}])
for instance in instances:
print(instance.id, instance.instance_type)
for instance in instances:
for tag in instance.tags:
if rname in tag['Value'] and "Name" in tag['Key']:
count = count + 1
rname = rname.rsplit('-', 1)[0] + '-' + str(count)
return count
x = get_all_running_instances('test-1')
print x
出力は次のようであると、インスタンスのそれぞれに関連付けられたタグ情報を取得することができません。 私は、この関数の一部として返されたタグ情報に対してラムダを実行しています。
('i-08987804493yyyyyy82', 't2.medium')
('i-0e96754xxxxxxxxx', 't2.small')
Traceback (most recent call last):
File "dummy.py", line 30, in <module>
x = get_all_running_instances('test-1')
File "dummy.py", line 23, in get_all_running_instances
for tag in instance.tags:
**TypeError**: 'NoneType' object is not iterable
ありがとうございましたHelloV。それがトリックでした。 – rashcuva