Revision 5c8076b6 snf-cyclades-app/synnefo/logic/servers.py
b/snf-cyclades-app/synnefo/logic/servers.py | ||
---|---|---|
81 | 81 |
validate_server_action(vm, action) |
82 | 82 |
vm.action = action |
83 | 83 |
|
84 |
# Resolve(reject) previous serial if it is still pending!! |
|
85 |
previous_serial = vm.serial |
|
86 |
if previous_serial and not previous_serial.resolved: |
|
87 |
quotas.resolve_vm_commission(serial=previous_serial) |
|
88 |
|
|
89 |
# Check if action is quotable and issue the corresponding |
|
90 |
# commission |
|
91 |
serial = None |
|
92 |
commission_info = quotas.get_commission_info(vm, action=action) |
|
93 |
if commission_info is not None: |
|
94 |
# Issue new commission, associate it with the VM |
|
95 |
commission_name = "client: api, resource %s" % vm |
|
96 |
serial = quotas.issue_commission(user=user_id, |
|
97 |
source=quotas.DEFAULT_SOURCE, |
|
98 |
provisions=commission_info, |
|
99 |
name=commission_name, |
|
100 |
force=False, |
|
101 |
auto_accept=False) |
|
102 |
vm.serial = serial |
|
84 |
commission_name = "client: api, resource: %s" % vm |
|
85 |
quotas.handle_resource_commission(vm, action=action, |
|
86 |
commission_name=commission_name) |
|
87 |
vm.save() |
|
103 | 88 |
|
104 | 89 |
# XXX: Special case for server creation! |
105 | 90 |
if action == "BUILD": |
Also available in: Unified diff