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