class _command_init(object):
def __init__(self, arguments={}):
- if not hasattr(self, 'arguments'):
- self.arguments = {}
- self.arguments.update(arguments)
+ if hasattr(self, 'arguments'):
+ arguments.update(self.arguments)
+ self.arguments = dict(arguments)
try:
- self.config = self['config'].value
+ self.config = self['config']
#self.config = self.get_argument('config')
except KeyError:
pass
:raises KeyError: if argterm not in self.arguments of this object
"""
- return self.arguments[argterm]
+ return self[argterm]
class server_list(_init_cyclades):
"""List servers"""
+ arguments = dict(
+ detail=FlagArgument('show detailed output', '-l')
+ )
+
def __init__(self, arguments={}):
super(server_list, self).__init__(arguments)
- self['detail'] = FlagArgument('show detailed output', '-l')
def _info_print(self, server):
addr_dict = {}
sname = server.pop('name')
sid = server.pop('id')
print('%s (%s)' % (sid, bold(sname)))
- if self.get_argument('detail'):
+ if self['detail']:
self._info_print(server)
def main(self):
super(self.__class__, self).main()
try:
- servers = self.client.list_servers(self.get_argument('detail'))
+ servers = self.client.list_servers(self['detail'])
self._print(servers)
except Exception as err:
raiseCLIError(err)