Revision 71585c27

b/snf-pithos-app/pithos/api/management/commands/reconcile-resources-pithos.py
40 40
from synnefo.webproject.management import utils
41 41
from astakosclient.errors import AstakosClientException
42 42

  
43
ENTITY_KEY = '1'
44

  
45 43
backend = get_backend()
46 44

  
47 45
class Command(NoArgsCommand):
......
149 147
                request['auto_accept'] = True
150 148
                request['provisions'] = provisions
151 149
                try:
152
                    serial = backend.astakosclient.issue_commission(
150
                    backend.astakosclient.issue_commission(
153 151
                        backend.service_token, request
154 152
                    )
155 153
                except AstakosClientException, e:
156 154
                    self.stdout.write(e.details)
157
                else:
158
                    backend.commission_serials.insert_many([serial])
159 155
            elif options['list'] and table:
160 156
                output_format = options["output_format"]
161 157
                if output_format != "json" and not options["headers"]:
b/snf-pithos-backend/pithos/backends/modular.py
122 122
            ret = func(self, *args, **kw)
123 123
            for m in self.messages:
124 124
                self.queue.send(*m)
125
            if serials:
126
                self.quotaholder_serials.insert_many(serials)
125
            if self.serials:
126
                self.commission_serials.insert_many(serials)
127 127

  
128 128
                # commit to ensure that the serials are registered
129 129
                # even if accept commission fails
130 130
                self.wrapper.commit()
131 131
                self.wrapper.execute()
132 132

  
133
                self.quotaholder.accept_commission(
134
                            context     =   {},
135
                            clientkey   =   'pithos',
136
                            serials     =   serials)
137

  
138
                self.quotaholder_serials.delete_many(serials)
133
                r = self.astakosclient.resolve_commissions(
134
                            token=self.service_token,
135
                            accept_serials=self.serials,
136
                            reject_serials=[])
137
                self.commission_serials.delete_many(r['accepted'])
139 138

  
140 139
            self.wrapper.commit()
141 140
            return ret
142 141
        except:
143
            if serials:
142
            if self.serials:
144 143
                self.astakosclient.resolve_commissions(
145 144
                    token=self.service_token,
146 145
                    accept_serials=[],
147
                    reject_serials=serials)
146
                    reject_serials=self.serials)
148 147
            self.wrapper.rollback()
149 148
            raise
150 149
    return fn

Also available in: Unified diff