import os
import random
import re
+import socket
import tempfile
import time
import threading
gateway = Attribute("gateway", "Hostname of the gateway machine",
flags = Flags.Design)
+ ip = Attribute("ip", "Linux host public IP address. "
+ "Must not be modified by the user unless hostname is 'localhost'",
+ flags = Flags.Design)
+
cls._register_attribute(hostname)
cls._register_attribute(username)
cls._register_attribute(port)
cls._register_attribute(tear_down)
cls._register_attribute(gateway_user)
cls._register_attribute(gateway)
+ cls._register_attribute(ip)
def __init__(self, ec, guid):
super(LinuxNode, self).__init__(ec, guid)
self.mkdir(paths)
+ # Get Public IP address
+ if not self.get("ip"):
+ if self.localhost:
+ ip = socket.gethostbyname(socket.gethostname())
+ else:
+ ip = socket.gethostbyname(self.get("hostname"))
+
+ self.set("ip", ip)
+
super(LinuxNode, self).do_provision()
def do_deploy(self):