import os import paramiko pw = os.environ["DEPLOY_PASSWORD"] c = paramiko.SSHClient() c.set_missing_host_key_policy(paramiko.AutoAddPolicy()) c.connect("20.191.152.26", username="wakka", password=pw, timeout=30) meta_cmds = [ "curl -s -H Metadata:true 'http://169.254.169.254/metadata/instance/compute/name?api-version=2021-02-01&format=text'", "curl -s -H Metadata:true 'http://169.254.169.254/metadata/instance/compute/resourceGroupName?api-version=2021-02-01&format=text'", "curl -s -H Metadata:true 'http://169.254.169.254/metadata/instance/compute/location?api-version=2021-02-01&format=text'", "curl -s -H Metadata:true 'http://169.254.169.254/metadata/instance/network/interface/0/ipv4/ipAddress/0/publicIpAddress?api-version=2021-02-01&format=text'", "curl -s -H Metadata:true 'http://169.254.169.254/metadata/instance?api-version=2021-02-01' | python3 -c \"import sys,json; d=json.load(sys.stdin); print('vm',d['compute']['name']); print('rg',d['compute']['resourceGroupName']); print('loc',d['compute']['location']); print('pubip',d['network']['interface'][0]['ipv4']['ipAddress'][0].get('publicIpAddress','?'))\" 2>/dev/null || true", ] for cmd in meta_cmds: print(">>>", cmd[-60:]) _, o, _ = c.exec_command(cmd, timeout=20) print(o.read().decode().strip()) c.close()