|
|
|
@ -10,6 +10,8 @@ if __name__ == "__main__": |
|
|
|
|
parser.add_argument('--instance_output', type=str, dest='instance_output', |
|
|
|
|
default='instance_output.txt', |
|
|
|
|
help='the file contains node_name_tag and region number of created instances.') |
|
|
|
|
parser.add_argument('--node_name_tag', type=str, dest='node_name_tag') |
|
|
|
|
parser.add_argument('--region_number', type=str, dest='region_number') |
|
|
|
|
parser.add_argument('--region_config', type=str, |
|
|
|
|
dest='region_config', default='configuration.txt') |
|
|
|
|
args = parser.parse_args() |
|
|
|
@ -17,7 +19,15 @@ if __name__ == "__main__": |
|
|
|
|
if not args.instance_output or not os.path.isfile(args.instance_output): |
|
|
|
|
print "%s is not existed" % args.instance_output |
|
|
|
|
sys.exit(1) |
|
|
|
|
if args.instance_output: |
|
|
|
|
if args.region_number and args.node_name_tag: |
|
|
|
|
ec2_client, session = utils.create_ec2_client(args.region_number, args.region_config) |
|
|
|
|
filters = [{'Name': 'tag:Name','Values': [args.node_name_tag]}] |
|
|
|
|
instance_ids = utils.get_instance_ids(ec2_client.describe_instances(Filters=filters)) |
|
|
|
|
ec2_client.terminate_instances(InstanceIds=instance_ids) |
|
|
|
|
print "waiting until instances with tag %s died." % args.node_name_tag |
|
|
|
|
waiter = ec2_client.get_waiter('instance_terminated') |
|
|
|
|
waiter.wait(InstanceIds=instance_ids) |
|
|
|
|
elif args.instance_output: |
|
|
|
|
with open(args.instance_output, "r") as fin: |
|
|
|
|
for line in fin.readlines(): |
|
|
|
|
items = line.split(" ") |
|
|
|
|