[英]Convert AWS CLI command into Python AWS Lambda function
我正在使用 AWS CLI 命令提取报告结果,我必须创建一个 lambda,它执行相同的工作,但面临许多语法错误问题
当前的 AWS CLI 命令:
$ aws ec2 describe-instances \
--query 'Reservations[].Instances[].[Tags[?Key==`platform`]|[0].Value, Tags[?Key==`resource-version`]|[0].Value]| sort_by(@, &[0])' \
--output table \
--filter Name=tag:platform,Values=aip,mmt,pame --profile prod | uniq
你能帮我用 python 做同样的代码吗?
现在我可以打印这个结果:
部署的版本是:
mmt 1.104.12 mmt 1.104.15 mmt 1.104.15 mmt 1.112.0-SNAPSHOT mmt 1.104.15 mmt 1.104.12 aip 1.112.0-SNAPSHOT mmt 1.112.0-SNAPSHOT mmt 1.104.15 mmt 1.104.12 aip 1.112.0-SNAPSHOT aip 1.112.0-SNAPSHOT mmt 1.112.0-SNAPSHOT
使用这个 cide `import boto3
def instance_list(tagkey, tagvalue): # 当传递一个标签键,标签值这将返回一个找到的InstanceIds列表。
ec2client = boto3.client('ec2')
response = ec2client.describe_instances(
Filters=[
{'Name':'tag:platform', 'Values':["mmt","pame","aip"]}
]
)
name = []
instancelist= []
print ("Deployed versions are :")
for reservation in (response["Reservations"]):
for instance in reservation["Instances"]:
for tag in instance['Tags']:
if tag['Key'] == 'platform':
name.append(tag["Value"])
if tag['Key'] == 'resource-version':
instancelist.append(tag["Value"])
a = [name + instancelist]
for x, y in zip(name, instancelist):
print (x, y)
`
我正在尝试删除重复的行并通过邮件或松弛发送结果; 请问有什么帮助吗?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.