Esempio n. 1
0
def is_uuid(uuid):
    """Check if provided string is a UUID"""
    if validation.is_uuid(uuid):
        return True
    else:
        print('Invalid uuid %s.' % uuid)
        return False
Esempio n. 2
0
    def __init__(self,
                 ip_address,
                 password=None,
                 script=None,
                 uuid=None,
                 ipv6_address=None,
                 ipv6_gateway=None,
                 ipv6_prefix=None,
                 persistent=False):
        if re.match('[0-9A-Z]{8}', ip_address.upper()):
            octets = [str(int(x, 16)) for x in re.findall('..', ip_address)]
            ip_address = '.'.join(octets)
            get_mode = True
        else:
            get_mode = False

        self.ip_address = ip_address
        self.script = script

        # set ipv6 parameters only when all are provided
        if (ipv6_address and ipv6_gateway and ipv6_prefix) is not None:
            self.ipv6_address = ipv6_address
            self.ipv6_gateway = ipv6_gateway
            self.ipv6_prefix = ipv6_prefix
        else:
            self.ipv6_address = None
            self.ipv6_gateway = None
            self.ipv6_prefix = None

        # if uuid is passed, validate it. In case validation fails
        # a new uuid is generated
        if uuid is None:
            self.uuid = None
        else:
            if validation.is_uuid(uuid):
                self.uuid = str(UUID(uuid))
            else:
                self.uuid = str(uuid4())

        if self.exists():
            self.label = self.get_label()

            if (self.ipv6_address and self.ipv6_gateway
                    and self.ipv6_prefix) is None:
                self.ipv6_address = self.get_ipv6_address()
                self.ipv6_gateway = self.get_ipv6_gateway()
                self.ipv6_prefix = self.get_ipv6_prefix()

            if script is None:
                self.script = self.get_script()

            # fetch uuid from config file only in get_mode, we don't want
            # to reuse and old uuid if none was passed
            if get_mode:
                self.uuid = self.get_uuid()

        if password not in [None, '']:
            self.password = password

        self.persistent = persistent
Esempio n. 3
0
def is_uuid(uuid):
    """Check if provided string is a UUID"""
    if validation.is_uuid(uuid):
        return True
    else:
        print('Invalid uuid %s.' % uuid)
        return False
Esempio n. 4
0
    def __init__(self, ip_address, password=None, script=None, uuid=None,
                 ipv6_address=None, ipv6_gateway=None, ipv6_prefix=None):
        if re.match('[0-9A-Z]{8}', ip_address.upper()):
            octets = [str(int(x, 16)) for x in re.findall('..', ip_address)]
            ip_address = '.'.join(octets)
            get_mode = True
        else:
            get_mode = False

        self.ip_address = ip_address
        self.script = script

        # set ipv6 parameters only when all are provided
        if (ipv6_address and ipv6_gateway and ipv6_prefix) is not None:
            self.ipv6_address = ipv6_address
            self.ipv6_gateway = ipv6_gateway
            self.ipv6_prefix = ipv6_prefix
        else:
            self.ipv6_address = None
            self.ipv6_gateway = None
            self.ipv6_prefix = None

        # if uuid is passed, validate it. In case validation fails
        # a new uuid is generated
        if uuid is None:
            self.uuid = None
        else:
            if validation.is_uuid(uuid):
                self.uuid = str(UUID(uuid))
            else:
                self.uuid = str(uuid4())

        if self.exists():
            self.label = self.get_label()

            if (self.ipv6_address and self.ipv6_gateway and
                    self.ipv6_prefix) is None:
                self.ipv6_address = self.get_ipv6_address()
                self.ipv6_gateway = self.get_ipv6_gateway()
                self.ipv6_prefix = self.get_ipv6_prefix()

            if script is None:
                self.script = self.get_script()

            # fetch uuid from config file only in get_mode, we don't want
            # to reuse and old uuid if none was passed
            if get_mode:
                self.uuid = self.get_uuid()

        if password not in [None, '']:
            self.password = password
Esempio n. 5
0
    def post(self, uuid):
        """Creates a new statusupdate for a UUID"""
        if not validation.is_uuid(uuid):
            return abort(404)

        parser = reqparse.RequestParser(bundle_errors=True)
        parser.add_argument('status_code', type=int, required=True)
        parser.add_argument('step_description', type=str, required=True)
        parser.add_argument('current_step', type=int, required=True)
        parser.add_argument('total_steps', type=int, required=True)
        args = parser.parse_args(request)

        install = InstallStatus(uuid)
        install.insert_status(args.status_code, args.step_description,
                              args.current_step, args.total_steps)
        return
Esempio n. 6
0
    def post(self, uuid):
        """Creates a new statusupdate for a UUID"""
        if not validation.is_uuid(uuid):
            return abort(404)

        parser = reqparse.RequestParser(bundle_errors=True)
        parser.add_argument('status_code', type=int, required=True)
        parser.add_argument('step_description', type=str, required=True)
        parser.add_argument('current_step', type=int, required=True)
        parser.add_argument('total_steps', type=int, required=True)
        args = parser.parse_args(request)

        install = InstallStatus(uuid)
        install.insert_status(args.status_code, args.step_description,
                              args.current_step, args.total_steps)
        return
Esempio n. 7
0
def is_uuid(uuid):
    """Check if provided string is a UUID."""
    return validation.is_uuid(uuid)