Revision 84b0517f kamaki/cli/commands/snf-astakos.py
b/kamaki/cli/commands/snf-astakos.py | ||
---|---|---|
31 | 31 |
# interpreted as representing official policies, either expressed |
32 | 32 |
# or implied, of GRNET S.A.command |
33 | 33 |
|
34 |
from json import loads |
|
35 |
|
|
34 | 36 |
from astakosclient import AstakosClient, AstakosClientException |
35 | 37 |
|
36 | 38 |
from kamaki.cli import command |
... | ... | |
428 | 430 |
super(self.__class__, self)._run() |
429 | 431 |
self._run() |
430 | 432 |
|
431 |
# commission pending |
|
432 |
# commission info |
|
433 |
# commission action |
|
434 |
# commission accept |
|
435 |
# commission reject |
|
436 |
# commission resolve |
|
433 |
|
|
434 |
@command(snfastakos_cmds) |
|
435 |
class astakos_commission_issue(_astakos_init, _optional_json): |
|
436 |
"""Issue commissions as a json string (special privileges required) |
|
437 |
Parameters: |
|
438 |
holder -- user's id (string) |
|
439 |
source -- commission's source (ex system) (string) |
|
440 |
provisions -- resources with their quantity (json-dict from string to int) |
|
441 |
name -- description of the commission (string) |
|
442 |
""" |
|
443 |
|
|
444 |
arguments = dict( |
|
445 |
force=FlagArgument('Force commission', '--force'), |
|
446 |
accept=FlagArgument('Do not wait for verification', '--accept') |
|
447 |
) |
|
448 |
|
|
449 |
@errors.generic.all |
|
450 |
@astakoserror |
|
451 |
def _run( |
|
452 |
self, holder, source, provisions, name=''): |
|
453 |
provisions = loads(provisions) |
|
454 |
self._print(self.client.issue_one_commission( |
|
455 |
self.token, holder, source, provisions, name, |
|
456 |
self['force'], self['accept'])) |
|
457 |
|
|
458 |
def main(self, holder, source, provisions, name=''): |
|
459 |
super(self.__class__, self)._run() |
|
460 |
self._run(holder, source, provisions, name) |
|
461 |
|
|
462 |
|
|
463 |
@command(snfastakos_cmds) |
|
464 |
class astakos_commission_issuejson(_astakos_init, _optional_json): |
|
465 |
"""Issue commissions as a json string (special privileges required)""" |
|
466 |
|
|
467 |
@errors.generic.all |
|
468 |
@astakoserror |
|
469 |
def _run(self, info_json): |
|
470 |
infodict = loads(info_json) |
|
471 |
self._print(self.client.issue_commission(self.token, infodict)) |
|
472 |
|
|
473 |
def main(self, info_json): |
|
474 |
super(self.__class__, self)._run() |
|
475 |
self._run(info_json) |
|
437 | 476 |
|
438 | 477 |
# XXX issue_commission, issue_one_commission |
439 | 478 |
|
Also available in: Unified diff