diff env/bin/kill_instance @ 2:6af9afd405e9 draft

"planemo upload commit 0a63dd5f4d38a1f6944587f52a8cd79874177fc1"
author shellac
date Thu, 14 May 2020 14:56:58 -0400 (2020-05-14)
parents 26e78fe6e8c4
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/env/bin/kill_instance	Thu May 14 14:56:58 2020 -0400
@@ -0,0 +1,35 @@
+#!/Users/pldms/Development/Projects/2020/david-matthews-galaxy/guppy_basecaller/env/bin/python3
+
+import sys
+from optparse import OptionParser
+
+import boto
+from boto.ec2 import regions
+
+
+
+def kill_instance(region, ids):
+    """Kill an instances given it's instance IDs"""
+    # Connect the region
+    ec2 = boto.connect_ec2(region=region)
+    for instance_id in ids:
+        print("Stopping instance: %s" % instance_id)
+        ec2.terminate_instances([instance_id])
+
+
+if __name__ == "__main__":
+    parser = OptionParser(usage="kill_instance [-r] id [id ...]")
+    parser.add_option("-r", "--region", help="Region (default us-east-1)", dest="region", default="us-east-1")
+    (options, args) = parser.parse_args()
+    if not args:
+        parser.print_help()
+        sys.exit(1)
+    for r in regions():
+        if r.name == options.region:
+            region = r
+            break
+    else:
+        print("Region %s not found." % options.region)
+        sys.exit(1)
+
+    kill_instance(region, args)