From 7e475305c56dff91f3b53a7482c761085a276d90 Mon Sep 17 00:00:00 2001 From: Peter Iannucci Date: Tue, 17 Feb 2009 01:54:26 -0500 Subject: [PATCH] Added all the other quotas for great win. svn path=/trunk/packages/invirt-web/; revision=2134 --- code/validation.py | 15 +++++++-------- debian/changelog | 2 +- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/code/validation.py b/code/validation.py index 05e4c27..0ab0988 100644 --- a/code/validation.py +++ b/code/validation.py @@ -10,11 +10,7 @@ from invirt.config import structs as config from invirt.common import InvalidInput, CodeError MIN_MEMORY_SINGLE = 16 -MAX_DISK_TOTAL = 50 -MAX_DISK_SINGLE = 50 MIN_DISK_SINGLE = 0.1 -MAX_VMS_TOTAL = 10 -MAX_VMS_ACTIVE = 4 class Validate: def __init__(self, username, state, machine_id=None, name=None, description=None, owner=None, @@ -89,7 +85,7 @@ def maxMemory(owner, g, machine=None, on=True): memory for the machine to change to, if it is left off, is returned. """ - (quota_total, quota_single) = Owner.getQuotas(machine.owner if machine else owner) + (quota_total, quota_single) = Owner.getMemoryQuotas(machine.owner if machine else owner) if not on: return quota_single @@ -104,6 +100,8 @@ def maxDisk(owner, machine=None): If machine is None, the maximum disk for a new machine. Otherwise, return the maximum that a given machine can be changed to. """ + (quota_total, quota_single) = Owner.getDiskQuotas(machine.owner if machine else owner) + if machine is not None: machine_id = machine.machine_id else: @@ -111,14 +109,15 @@ def maxDisk(owner, machine=None): disk_usage = Disk.query().filter(Disk.c.machine_id != machine_id).\ join('machine').\ filter_by(owner=owner).sum(Disk.c.size) or 0 - return min(MAX_DISK_SINGLE, MAX_DISK_TOTAL-disk_usage/1024.) + return min(quota_single, quota_total-disk_usage/1024.) def cantAddVm(owner, g): machines = getMachinesByOwner(owner) active_machines = [m for m in machines if m.name in g.xmlist_raw] - if machines.count() >= MAX_VMS_TOTAL: + (quota_total, quota_active) = Owner.getVMQuotas(machine.owner if machine else owner) + if machines.count() >= quota_total: return 'You have too many VMs to create a new one.' - if len(active_machines) >= MAX_VMS_ACTIVE: + if len(active_machines) >= quota_active: return ('You already have the maximum number of VMs turned on. ' 'To create more, turn one off.') return False diff --git a/debian/changelog b/debian/changelog index d746e43..48ff283 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,7 +2,7 @@ invirt-web (0.0.19) unstable; urgency=low * modified quota checking to refer to invirt.database.Owner for quotas and defaults - -- Peter A. Iannucci Mon, 16 Feb 2009 23:49:21 -0500 + -- Peter A. Iannucci Tue, 17 Feb 2009 01:31:01 -0500 invirt-web (0.0.18) unstable; urgency=low -- 1.7.9.5