in aws/petctl.py [0:0]
def list_hosts(session, specs_json, args):
job_name = args.job_name
asg = AutoScalingGroup(session)
asgs = [f"{job_name}_rdzv", f"{job_name}_worker"]
hosts = {}
for asg_name in asgs:
instance_ids, hostnames = asg.list_hostnames(asg_name)
hosts[asg_name] = zip(instance_ids, hostnames)
print(f"\n--------------------------------------------------------------")
for asg_name in hosts:
print(f"Hosts in {asg_name}:")
for i, host in enumerate(hosts[asg_name], start=1):
instance_id = host[0]
public_dns = host[1]
print(f" {i}) {instance_id} ({public_dns})")
print(f"--------------------------------------------------------------")
print("To SSH run:")
print(f"\taws ssm start-session --target <instance_id>")
print(f"--------------------------------------------------------------")