Guest User

Untitled

a guest
Jun 23rd, 2018
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.78 KB | None | 0 0
  1. def get_instance_ip():
  2. try:
  3. p1 = subprocess.Popen(["ip", "addr"], stdout=subprocess.PIPE)
  4. p2 = subprocess.Popen(["grep", "state UP", "-A2"], stdin=p1.stdout, stdout=subprocess.PIPE)
  5. p3 = subprocess.Popen(["tail", "-n1"], stdin=p2.stdout, stdout=subprocess.PIPE)
  6. p4 = subprocess.Popen(["awk", "{print $2}"], stdin=p3.stdout, stdout=subprocess.PIPE)
  7. p5 = subprocess.Popen(["cut", "-f1", "-d/"], stdin=p4.stdout, stdout=subprocess.PIPE)
  8. p1.stdout.close()
  9. p2.stdout.close()
  10. p3.stdout.close()
  11. p4.stdout.close()
  12. return str(p5.communicate()[0][:-1])
  13. except Exception as e:
  14. logger.warning("Couldn't determine ip, using localhost")
  15. return "localhost"
Add Comment
Please, Sign In to add comment