def query_instances(wf, query):
account = wf.settings.get('active_account', 'default')
aws_access_key_id = wf.settings[account].get('aws_access_key_id', None)
profile_name = wf.settings[account].get('profile_name', 'default')
user_name = wf.settings[account].get('user_name', 'ec2-user')
region = wf.settings[account].get('region', 'eu-west-1')
def wrapper():
return get_recent_instances(region, profile_name)
instances = wf.cached_data('instances-%s' % account, wrapper, max_age=10)
if query:
instances = wf.filter(query, instances, key=search_key_for_instance)
if not instances:
wf.add_item('No instances found', icon=ICON_WARNING)
wf.send_feedback()
return 0
for instance in instances:
wf.add_item(arg="{}|{}|{}".format(profile_name, user_name, instance['ip']),
uid=instance['ip'],
icon=ICON_NETWORK,
subtitle=instance['desc'],
title=instance['name'],
copytext=instance['ip'],
valid=True)
wf.send_feedback()
评论列表
文章目录