def __init__ (self, MAX_IMAGES=None, debug=0, args=[], optlist=[]): ChallengeBase.__init__(self, debug) self.message =""" usage: %s [-h] [-v] [-d] FQDN ip-add -h - usage help -v - verbose / debug output -d - if a domain exists it will be deleted first FQDN - Fully Qualified Domain Name; exaple www.wikipedia.org ip-add - ip address """ % (PROGRAM_NAME) self.optlist = optlist self.args = args self.opt_delete_domain = False if "-d" in map(lambda x: x[0], optlist) : self.opt_delete_domain = True try: self.domain_record = self.args[0] self.domain_name = ".".join( self.domain_record.split('.')[1:] ) self.domain = None self.ip_str = self.args[1] except Exception, e: log("missing params") self.usage() sys.exit(-1)
def __init__ (self, MAX_IMAGES=None, debug=0): ChallengeBase.__init__(self,debug) self.message =""" usage: %s [-h] [-v] dir-name container-name -h - usage help -v - verbose / debug output dir-name - a path to a directory container-name - upload the dir-name to this cloud container """ % (PROGRAM_NAME) self.optlist, self.args = None, None
def __init__(self, debug_level=0, args=[], optlist=[]): ChallengeBase.__init__(self, debug_level) self.message = """ usage: %s [-h] [-v] [ -i | -d ] [ -u db-user ] [ instance-name ] [ db-name1 [db-name2] ] -h - usage help -v - verbose / debug output -i - if instance exists delete it and all its databases before proceeding -d - delete database(s) from under the instance instance-name - create instance with this name db-nameX - name of the database db-user - create user that can access the database; by default a user name is equal to db-name """ % ( PROGRAM_NAME ) self.optlist = optlist self.args = args self.db_users = None self.dbs = [] self.db_instance_name = None self.db_instance = None self.opt_delete_instance = False self.opt_delete_db = False for o, val in optlist: if o == "-i": self.opt_delete_instance = True elif o == "-d": self.opt_delete_db = True elif o == "-u": self.db_users = [val] try: self.db_instance_name = self.args[0] self.dbs = self.args[1:] except Exception, e: pass
def __init__ (self, debug_level=0, args=[], optlist=[]) : ChallengeBase.__init__(self, debug_level) self.message =""" usage: %s [-h] [-v] -h - usage help -v - verbose / debug output """ % (PROGRAM_NAME) self.optlist = optlist self.args = args self.cs_count = 2 self.servers = [] self.nodes=[] self.lb=None self.lb_name="challenge7-vip" self.vip=None
def __init__ (self, debug_level=0, args=[], optlist=[]) : ChallengeBase.__init__(self, debug_level) self.message =""" usage: %s [-h] [-v] container-name -h - usage help -v - verbose / debug output container-name - name of the container """ % (PROGRAM_NAME) self.optlist = optlist self.args = args try: self.container = None self.container_name = self.args[0] except Exception, e: self.container_name = None
def __init__ (self, debug_level=0, args=[], optlist=[]) : ChallengeBase.__init__(self, debug_level) self.message =""" usage: %s [-h] [-v] -h - usage help -v - verbose / debug output """ % (PROGRAM_NAME) self.optlist = optlist self.args = args self.container_name = "challenge8" self.container = None self.index_name = "index.html" self.index_file_data = "Hello challenge8, it works!\n" self.domain_name = "rado-challenge.org" self.domain = None self.recs = None self.rec_CNAME = None self.rec_CNAME_data = None
def __init__ (self, debug_level=0, args=[], optlist=[]) : ChallengeBase.__init__(self, debug_level) self.message =""" usage: %s [-h] [-v] -n FQDN-name -i image-id -f flavor-id -h - usage help -v - verbose / debug output -n - FQDN name -i - proper image id -f - flavor id """ % (PROGRAM_NAME) self.optlist = optlist self.args = args self.server = None self.image = None self.flavor = None (self.fqdn_name, self.image_id, self.flavor_id) = (None, None, None) for o, val in optlist: if o == "-n": self.fqdn_name = val self.domain_name = ".".join( self.fqdn_name.split('.')[1:] ) self.domain=None self.recs = None self.net=None elif o == "-i": self.image_id = val elif o == "-f": self.flavor_id = val if not ( self.fqdn_name and self.image_id and self.flavor_id) : self.usage() sys.exit(-1)
def __init__ (self, debug_level=0, args=[], optlist=[]) : ChallengeBase.__init__(self, debug_level) self.message =""" usage: %s [-h] [-v] [-d] [ -s ssh-key ] [ -e error-page ] [ -c container-name ] [ -i image-id ] [ -f flavor-id ] -n FQDN-name image-id -f flavor-id -h - usage help -v - verbose / debug output -d - delete objects if they existed in cloud before creating new one -n - FQDN name like www.myexample.com -s - path to your ssh public key (not priv!) -e - path to a html file that will be served from the LB when all pool members are down -c - name of cloud files container-name to store the backup data -i - specify image-id or use the default for Ubuntu 10.04 -f - specify flavor-id or use the default for the smallest cloud server """ % (PROGRAM_NAME) self.optlist = optlist self.args = args self.opt_delete = False self.fqdn_name = None self.domain_name = None self.domain = None self.recs = None self.ssh_public_key_name = None self.ssh_public_key = None self.error_page_name = None self.error_page_path = None self.error_page = None self.container_name = None self.container = None self.image = None self.image_id = None self.flavor = None self.flavor_id = None self.server_prefix=None self.cs_count=2 self.servers = [] self.lb=None self.lb_name =None self.vip=None self.vip_address = None self.nodes=[] for o, val in optlist: if o == "-n": self.fqdn_name = val self.domain_name = ".".join( self.fqdn_name.split('.')[1:] ) self.domain=None self.recs = None elif o == "-s": self.ssh_public_key_name = val elif o == "-e": self.error_page_path = val elif o == "-d": self.opt_delete = True elif o == "-c": self.container_name = val elif o == "-i": self.image_id = val elif o == "-f": self.flavor_id = val if not self.fqdn_name : self.usage() sys.exit(-1) #default values for some variables if not self.container_name : self.container_name = self.fqdn_name self.image = None if not self.image_id : self.image_id = utils.get_image(self.cs) self.flavor= None if not self.flavor_id : self.flavor_id = utils.get_flavor(self.cs) self.lb_name = self.fqdn_name self.server_prefix = self.fqdn_name
def __init__ (self, debug_level=0, args=[], optlist=[]) : ChallengeBase.__init__(self, debug_level) self.message =""" usage: %s [-h] [-v] [-d] [ -k key-key ] [ -c cert ] [ -i image-id ]\ [ -f flavor-id ] -n FQDN-name image-id -f flavor-id -h - usage help -v - verbose / debug output -d - delete objects if they existed in cloud before creating new one -k - certificate pritate key (see -c below) -c - public certificate ( see -k above) -n - FQDN name like www.myexample.com -i - specify image-id or use the default for Ubuntu 10.04 -f - specify flavor-id or use the default for the smallest cloud server """ % (PROGRAM_NAME) self.cert_use_default = False self.cert_key_name = None self.cert_key = None self.cert_name = None self.cert = None self.opt_delete = False self.fqdn_name = None self.domain_name = None self.domain = None self.recs = None self.lb=None self.lb_name = None self.vip=None self.vip_address = None self.nodes=[] self.image = None self.image_id = None self.flavor = None self.flavor_id = None self.server_prefix=None self.cs_count=3 self.server_passord = "SecretP@ss1" self.servers = [] self.storage_name = None self.volumes=[] self.network_name = None self.network_range = "192.168.100.0/24" self.network = None self.network_id = None for o, val in optlist: if o == "-n": self.fqdn_name = val self.domain_name = ".".join( self.fqdn_name.split('.')[1:] ) self.domain=None self.recs = None elif o == "-d": self.opt_delete = True elif o == "-i": self.image_id = val elif o == "-f": self.flavor_id = val elif o == "-k": self.cert_key_name = val elif o == "-c": self.cert_name = val elif o == "-i": self.image_id = val elif o == "-f": self.flavor_id = val if not self.fqdn_name : self.usage() sys.exit(-1) #default values for some variables self.image = None if not self.image_id : self.image_id = utils.get_image(self.cs) self.flavor= None if not self.flavor_id : self.flavor_id = utils.get_flavor(self.cs) self.lb_name = self.fqdn_name self.storage_name = self.fqdn_name self.server_prefix = self.fqdn_name self.network_name = self.fqdn_name if not self.cert_key_name and not self.cert_name : self.cert_use_default = True self.cert_key_name = self.fqdn_name + ".key" self.cert_key="""-----BEGIN RSA PRIVATE KEY----- MIICXAIBAAKBgQCypZq3lUHWhBjDxV6hOtOQFI3WvcGlp9RP+ZHVTcwDb/buaGIL 99xCUabM5TIjzfSMthddEb+43RIdZeaXSnqV0Ut+xF9fPIHiky+DrOS2i77ltu67 RGTerezjM36D4TW5N3vQOR+qIezp1yko1qJr5hROp2ykqcgIL5GzR4980QIDAQAB AoGBAKIZyKDqa3pGFN6XWf18jnn/XJDNUEiLWAhVkfF2DTfVQcAksUrg1ljLFEp5 chyxBkUj+WE2+Lu6xXQtgaYoK7/+mRRpKEZ6aHEsd5KqoVgxp2igyRZOGyVWaAJ3 loi+GmMiRkjC6o6xxNGG7UNfXSACfbB8eEBaGw61ZhbZJ28NAkEA5rVk/mqQFYzO WynHT1DUz4YeIpj1ZAnhjn/957knU61VoAjeruLANOmN5bQ2gCKJm7MsPJ11iAdp Cfltaprq7wJBAMY7Jp0hQBWOp3J1VNTkeG23At/ZQv5QzkUih2hcHjXy54RYqFe/ pIH9qrLC01BjhG2PePrJwaKMmhl7TvQ7FD8CQHmG7848n+1aIJFQ7pZPQ+qVAWbE H+80bUY9EahwldC0K7iDM5n4A7tbk81+In9Yshf8R78eSnz/Oktwwjw3oq0CQEyZ 3PEJQUdTSdeMCYz/AJ59AwpXXXEC7sJ+dk7YkgAM7nQRAnRuJPbqfET5zkiZPDpO H9ThlAbpSD8ijD8KeWcCQBxun2xWhCH19BulbUufsocKrwaxAijJ4pc5fX+cabEU Na05oMyXQxN2tR4gWlbyVrGuZPVRDH39oRej5z2/JUA= -----END RSA PRIVATE KEY----- """ self.cert_name = self.fqdn_name + ".crt" self.cert = """-----BEGIN CERTIFICATE-----