Esempio n. 1
0
    def prep_data(data):
        if 'vlan' in data and data['vlan']:
            vlan_id = data.pop('vlan')
            vlan_obj = Vlan.objects(vlan_id=vlan_id).first()
            if not vlan_obj:
                return ["No VLAN object defined with id: %s" % vlan_id], {}
            cloud_obj = Cloud.objects(vlan=vlan_obj).first()
            if cloud_obj:
                return ["VLAN %s already in use." % vlan_id], {}
            data["vlan"] = vlan_obj
        else:
            data["vlan"] = None
        if 'ccuser' in data:
            data['ccuser'] = data['ccuser'].split()
        if 'qinq' in data:
            if str(data['qinq']).lower() == "false":
                data["qinq"] = False
            else:
                data["qinq"] = True
        if 'wipe' in data:
            if str(data['wipe']).lower() == "false":
                data["wipe"] = False
            else:
                data["wipe"] = True
        data['validated'] = False

        params = ['name', 'description', 'owner']
        result, data = param_check(data, params)

        return result, data
Esempio n. 2
0
    def prep_data(data):
        for flag in ['provisioned', 'validated', 'vlan']:
            if flag in data:
                data.pop(flag)

        params = ['name', 'description', 'owner', 'ticket']
        result, data = param_check(data, params)

        return result, data
Esempio n. 3
0
    def prep_data(data):
        if "cloud" in data:
            _cloud_obj = Cloud.objects(name=data["cloud"]).first()
            if _cloud_obj:
                data["cloud"] = _cloud_obj
            else:
                return ["Cloud %s does not exist." % data["cloud"]], {}

        result, data = param_check(data, ['name', 'cloud', 'host_type'])

        return result, data
Esempio n. 4
0
    def prep_data(data):
        if "vlan" in data:
            data.pop("vlan")
        if "ccuser" in data:
            data["ccuser"] = data["ccuser"].split()
        if "qinq" in data:
            data["qinq"] = bool(data["qinq"])
        params = ['name', 'description', 'owner']
        result, data = param_check(data, params)

        return result, data
Esempio n. 5
0
    def prep_data(data):
        _fields = [
            'gateway',
            'ip_range',
            'vlan_id',
        ]
        if 'iprange' in data:
            data['ip_range'] = data.pop('iprange')
        if 'vlanid' in data:
            data['vlan_id'] = data.pop('vlanid')
        ip_address = ipaddress.ip_network(data["ip_range"])
        data['netmask'] = str(ip_address.netmask)
        data['ip_free'] = ip_address.num_addresses - 2
        result, data = param_check(data, _fields)

        return result, data
Esempio n. 6
0
    def prep_data(data):
        defaults = {
            'owner': 'nobody',
            'ccuser': [],
            'ticket': '000000',
            'qinq': False,
            'wipe': True,
        }
        for flag in ["released", "validated", "notified"]:
            if flag in data:
                data.pop(flag)

        params = ['name', 'description', 'owner', 'ticket', 'wipe']
        result, data = param_check(data, params, defaults)

        return result, data
Esempio n. 7
0
    def prep_data(data):
        for flag in ["provisioned", "validated", "last_redefined"]:
            if flag in data:
                data.pop(flag)

        if "vlan" in data:
            if type(data.get("vlan")) == str:
                data["vlan_id"] = int(data.get("vlan"))
            elif type(data.get("vlan")) == Vlan:
                data["vlan_id"] = data.get("vlan").vlan_id
            data.pop("vlan")

        params = ["name", "description", "owner", "ticket"]
        result, data = param_check(data, params)

        return result, data
Esempio n. 8
0
    def prep_data(data):
        _fields = [
            "gateway",
            "ip_range",
            "vlan_id",
        ]
        if "iprange" in data:
            data["ip_range"] = data.pop("iprange")
        if "vlanid" in data:
            data["vlan_id"] = data.pop("vlanid")
        ip_address = ipaddress.ip_network(data["ip_range"])
        data["netmask"] = str(ip_address.netmask)
        data["ip_free"] = ip_address.num_addresses - 2
        result, data = param_check(data, _fields)

        return result, data
Esempio n. 9
0
    def prep_data(data):
        _fields = [
            'gateway',
            'ip_free',
            'ip_range',
            'netmask',
            'owner',
            'vlan_id',
        ]
        if "ipfree" in data:
            data["ip_free"] = data.pop("ipfree")
        if "iprange" in data:
            data["ip_range"] = data.pop("iprange")
        if "vlanid" in data:
            data["vlan_id"] = data.pop("vlanid")
        result, data = param_check(data, _fields)

        return result, data
Esempio n. 10
0
    def prep_data(data, fields=None):
        if not fields:
            fields = ["name", "mac_address", "ip_address", "switch_port"]

        if data.get("vendor"):
            data["vendor"] = data.get("vendor").upper()

        if data.get("pxe_boot"):
            pxe_boot = data.get("pxe_boot")
            if type(pxe_boot) == str:
                if pxe_boot.upper() == "TRUE":
                    data["pxe_boot"] = True
                else:
                    data["pxe_boot"] = False

        result, data = param_check(data, fields)

        return result, data
Esempio n. 11
0
    def prep_data(data):
        defaults = {
            'owner': 'nobody',
            'ccuser': [],
            'ticket': '000000',
            'qinq': False,
            'wipe': True,
            'released': False,
            'validated': False,
            'notified': False,
        }

        if "vlan" in data:
            data.pop("vlan")
        if "ccuser" in data:
            data["ccuser"] = data["ccuser"].split()
        params = ['name', 'description', 'owner', 'ticket', 'wipe']
        result, data = param_check(data, params, defaults)

        return result, data
Esempio n. 12
0
    def prep_data(data, fields=None, mod=False):
        if "vlan" in data and data["vlan"]:
            vlan_id = data.pop("vlan")
            try:
                int(vlan_id)
            except ValueError:
                data["vlan"] = None
            else:
                vlan_obj = Vlan.objects(vlan_id=vlan_id).first()
                if not vlan_obj:
                    return ["No VLAN object defined with id: %s" % vlan_id], {}
                cloud_obj = Cloud.objects(vlan=vlan_obj).first()
                if cloud_obj:
                    return ["VLAN %s already in use." % vlan_id], {}
                data["vlan"] = vlan_obj
        if "ccuser" in data:
            data["ccuser"] = data["ccuser"].split()
        if "wipe" in data:
            if str(data["wipe"]).lower() == "false":
                data["wipe"] = False
            else:
                data["wipe"] = True

        if not mod:
            data["validated"] = False
            data["last_redefined"] = datetime.datetime.now()

        if not fields:
            fields = ["name", "description", "owner"]

        fields = list(fields)
        if "qinq" in fields:
            fields.remove("qinq")
        if "wipe" in fields:
            fields.remove("wipe")
        if "vlan" in fields:
            fields.remove("vlan")

        result, data = param_check(data, fields)

        return result, data
Esempio n. 13
0
    def prep_data(data, fields=None):
        if 'cloud' in data:
            _cloud_obj = Cloud.objects(name=data['cloud']).first()
            if _cloud_obj:
                data['cloud'] = _cloud_obj
            else:
                return ['Cloud %s does not exist.' % data['cloud']], {}
        if 'default_cloud' in data:
            _default_cloud_obj = Cloud.objects(
                name=data['default_cloud']).first()
            if _default_cloud_obj:
                data['default_cloud'] = _default_cloud_obj
                if 'cloud' not in data:
                    data['cloud'] = _default_cloud_obj
            else:
                return ['Cloud %s does not exist.' % data['default_cloud']], {}
        if not fields:
            fields = ['name', 'host_type']

        result, data = param_check(data, fields)

        return result, data
Esempio n. 14
0
    def prep_data(data, fields=None):
        if "cloud" in data:
            _cloud_obj = Cloud.objects(name=data["cloud"]).first()
            if _cloud_obj:
                data["cloud"] = _cloud_obj
            else:
                return ["Cloud %s does not exist." % data["cloud"]], {}
        if "default_cloud" in data:
            _default_cloud_obj = Cloud.objects(
                name=data["default_cloud"]).first()
            if _default_cloud_obj:
                data["default_cloud"] = _default_cloud_obj
                if "cloud" not in data:
                    data["cloud"] = _default_cloud_obj
            else:
                return ["Cloud %s does not exist." % data["default_cloud"]], {}
        if not fields:
            fields = ["name", "host_type"]

        result, data = param_check(data, fields)

        return result, data
Esempio n. 15
0
    def prep_data(data):
        result, data = param_check(data, ['host'])

        return result, data
Esempio n. 16
0
    def prep_data(data):
        _fields = ['name', 'mac_address', 'ip_address', 'switch_port']
        result, data = param_check(data, _fields)

        return result, data
Esempio n. 17
0
    def prep_data(data):
        _fields = ['disk_type', 'size_gb', 'count']
        result, data = param_check(data, _fields)

        return result, data
Esempio n. 18
0
    def prep_data(data):
        _fields = ["handle", "size_gb"]
        result, data = param_check(data, _fields)

        return result, data
Esempio n. 19
0
    def prep_data(data):
        _fields = ["handle", "cores", "threads"]
        result, data = param_check(data, _fields)

        return result, data
Esempio n. 20
0
 def _param_check(*args, **kwargs):
     return param_check(*args, **kwargs)
Esempio n. 21
0
    def prep_data(data):
        _fields = ["disk_type", "size_gb", "count"]
        result, data = param_check(data, _fields)

        return result, data