From: Stephen Mulcahy Date: Fri, 5 Apr 2013 10:29:13 +0000 (+0000) Subject: Add service list functionality cinder-manage X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=1c77c5416417299953cebabbd88d7385d0c57cd4;p=openstack-build%2Fcinder-build.git Add service list functionality cinder-manage Adds functionality similar to nova-manage service list to cinder-manage. Change-Id: I9bcd6dcb551dbced2cfd6fcf0e63ffe4bb8754e8 --- diff --git a/bin/cinder-manage b/bin/cinder-manage index de7955d12..c358757d2 100755 --- a/bin/cinder-manage +++ b/bin/cinder-manage @@ -681,12 +681,38 @@ class BackupCommands(object): object_count) +class ServiceCommands(object): + """Methods for managing services.""" + def list(self): + """Show a list of all cinder services.""" + ctxt = context.get_admin_context() + services = db.service_get_all(ctxt) + print_format = "%-16s %-36s %-16s %-10s %-5s %-10s" + print print_format % ( + _('Binary'), + _('Host'), + _('Zone'), + _('Status'), + _('State'), + _('Updated At')) + for svc in services: + alive = utils.service_is_up(svc) + art = ":-)" if alive else "XXX" + status = 'enabled' + if svc['disabled']: + status = 'disabled' + print print_format % (svc['binary'], svc['host'].partition('.')[0], + svc['availability_zone'], status, art, + svc['updated_at']) + + CATEGORIES = { 'backup': BackupCommands, 'config': ConfigCommands, 'db': DbCommands, 'host': HostCommands, 'logs': GetLogCommands, + 'service': ServiceCommands, 'shell': ShellCommands, 'sm': StorageManagerCommands, 'version': VersionCommands,