e27*_*314 23 python amazon-ec2 amazon-web-services aws-cli
我正在使用aws ec2服务与awscli.现在我想将我在控制台中键入的所有命令放入python脚本中.我看到如果我import awscli在python脚本中编写它工作正常但我不明白如何在脚本中使用它.例如,如何aws ec2 run-instances <arguments>在python脚本中执行命令import awscli?为了说清楚,我不是在寻找像os.system('aws ec2 run-instances <arguments>')我这样的解决方案
import awscli
awscli.ec2_run-instances(<arguments>)
Run Code Online (Sandbox Code Playgroud)
smo*_*eny 15
你可以用精彩的sh包来做到这一点.你可以模仿python包,sh为你做包装.
import sh
s3 = sh.bash.bake("aws s3")
s3.put("file","s3n://bucket/file")
Run Code Online (Sandbox Code Playgroud)
fae*_*anj 14
CLI更适合shell提示,为了更好的python API,请检查boto库.此示例显示如何启动实例:http://boto.readthedocs.org/en/latest/ec2_tut.html
Boto3并没有cli的所有功能,因此您可能不得不在剧本中使用cli中的cli内容。例如,我在boto3中找不到适用于AWS部署推送的类似物,因此这是我如何使用python脚本中的cli推送到s3的方法。尽管就Julio而言,我将boto用于其他所有功能。
import subprocess
cmd='aws deploy push --application-name SomeApp --s3-location s3://bucket/Deploy/db_schema.zip --ignore-hidden-files'
push=subprocess.Popen(cmd, shell=True, stdout = subprocess.PIPE)
print push.returncode
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
30804 次 |
| 最近记录: |