def delete_tenant_quota(context, tenant_id):
        try:
            cfgdb = ContrailPlugin._get_user_cfgdb(context)
            proj_id = str(uuid.UUID(tenant_id))
            proj_obj = cfgdb._project_read(proj_id)
            quota = proj_obj.get_quota()
        except Exception as e:
            cgitb.Hook(format="text").handle(sys.exc_info())
            raise e

        for k, v in quota.__dict__.items():
            if k != 'defaults':
                quota.__dict__[k] = quota.defaults
        proj_obj.set_quota(quota)
        cfgdb._vnc_lib.project_update(proj_obj)
Example #2
0
    def delete_tenant_quota(context, tenant_id):
        try:
            cfgdb = ContrailPlugin._get_user_cfgdb(context)
            proj_id = str(uuid.UUID(tenant_id))
            proj_obj = cfgdb._project_read(proj_id)
            quota = proj_obj.get_quota()
        except Exception as e:
            cgitb.Hook(format="text").handle(sys.exc_info())
            raise e

        for k,v in quota.__dict__.items():
            if k != 'defaults':
                quota.__dict__[k] = quota.defaults
        proj_obj.set_quota(quota)
        cfgdb._vnc_lib.project_update(proj_obj)
    def update_quota_limit(context, tenant_id, resource, limit):
        try:
            cfgdb = ContrailPlugin._get_user_cfgdb(context)
            proj_id = str(uuid.UUID(tenant_id))
            proj_obj = cfgdb._project_read(proj_id)
            quota = proj_obj.get_quota()
        except Exception as e:
            cgitb.Hook(format="text").handle(sys.exc_info())
            raise e

        qn2c = QuotaDriver.quota_neutron_to_contrail_type
        if resource in qn2c.keys():
            quota_method = 'set_' + qn2c[resource]
            set_quota = getattr(quota, quota_method)
            set_quota(limit)
            proj_obj.set_quota(quota)
            cfgdb._vnc_lib.project_update(proj_obj)
Example #4
0
    def update_quota_limit(context, tenant_id, resource, limit):
        try:
            cfgdb = ContrailPlugin._get_user_cfgdb(context)
            proj_id = str(uuid.UUID(tenant_id))
            proj_obj = cfgdb._project_read(proj_id)
            quota = proj_obj.get_quota()
        except Exception as e:
            cgitb.Hook(format="text").handle(sys.exc_info())
            raise e

        qn2c = QuotaDriver.quota_neutron_to_contrail_type
        if resource in qn2c.keys():
            quota_method = 'set_' + qn2c[resource]
            set_quota = getattr(quota, quota_method)
            set_quota(limit)
            proj_obj.set_quota(quota)
            cfgdb._vnc_lib.project_update(proj_obj)
Example #5
0
    def get_tenant_quotas(context, resources, tenant_id):
        try:
            cfgdb = ContrailPlugin._get_user_cfgdb(context)
            proj_id = str(uuid.UUID(context.tenant))
            proj_obj = cfgdb._project_read(proj_id)
            quota = proj_obj.get_quota()
        except Exception as e:
            cgitb.Hook(format="text").handle(sys.exc_info())
            raise e

        qn2c = QuotaDriver.quota_neutron_to_contrail_type
        quotas = {}
        sub_resources = dict((k, v) for k, v in resources.items())
        for resource in sub_resources.values():
            if resource.name in qn2c.keys():
                quotas[resource.name] = quota.__dict__[qn2c[resource.name]] or quota.get_defaults()
            else:
                quotas[resource.name] = resource.default
        return quotas
    def get_tenant_quotas(context, resources, tenant_id):
        try:
            cfgdb = ContrailPlugin._get_user_cfgdb(context)
            proj_id = str(uuid.UUID(context.tenant))
            proj_obj = cfgdb._project_read(proj_id)
            quota = proj_obj.get_quota()
        except Exception as e:
            cgitb.Hook(format="text").handle(sys.exc_info())
            raise e

        qn2c = QuotaDriver.quota_neutron_to_contrail_type
        quotas = {}
        sub_resources = dict((k, v) for k, v in resources.items())
        for resource in sub_resources.values():
            if resource.name in qn2c.keys():
                quotas[resource.name] = quota.__dict__[qn2c[
                    resource.name]] or quota.get_defaults()
            else:
                quotas[resource.name] = resource.default
        return quotas