def instance_list():
instances_list = "gcloud compute instances list --format='json(name, status, zone)' --filter='(status=running)' --project reference-ether-853"
instance_output_json = json.loads(subprocess.check_output(shlex.split(instances_list)))
# instance_output_table = "gcloud compute instances list --format='table(name, status, zone)' --filter='(status=running)' --project reference-ether-853"
# result = subprocess.check_output(shlex.split(instance_output_table))
for instance_row in instance_output_json:
instance_name = instance_row['name']
instance_status = instance_row['status']
instance_zone = instance_row['zone'].rsplit("/")[-1]
if instance_name.startswith('ci-') and instance_status == 'RUNNING':
uptime = "gcloud compute ssh --zone {} {} --ssh-flag='-t' -- command 'uptime'".format(instance_zone,
instance_name)
instances_up = subprocess.check_output(shlex.split(uptime))
print(instance_name, instance_zone)
While executing the Output is returned as
instanceName us-east1-b Connection to 31.196.126.66 closed.
I want to suppress "Connection to 31.196.126.66 closed." and print only the instance name and zone.