def on_imagen(self, args): self.top._get_nova() if len(args) < 2: print "no image id" return i = self.top.nc.images.get(args[1]) i.bookmark = [x['href'] for x in i.links if x['rel'] == 'bookmark'][0] utils.print_obj_fields(i, [ 'id', 'name', 'bookmark', 'metadata', 'minDisk', 'minRam', 'status'])
def on_user(self, args): if len(args) < 2: print "no user specified" return try: utils.print_obj_fields( self.top.kc.users.get_by_name_or_id(args[1]), ['id', 'name', 'email', 'enabled']) except kc_exceptions.NotFound: print "user %s not found" % args[1] except Exception, e: print "other exception: %s" % e # Most likely this is not authorized raise exceptions.NotAuthorized(None, 'show user')
def on_tenant(self, args): if len(args) < 2: print "no tenant specified" return try: utils.print_obj_fields( self.top.kc.tenants.get_by_name_or_id(args[1]), ['id', 'name', 'enabled', 'description']) except kc_exceptions.NotFound: print "tenant %s not found" % args[1] except Exception, e: print "other exception: %s" % e # Most likely this is not authorized raise exceptions.NotAuthorized(None, 'show tenant')
def on_instance(self, args): self.top._get_nova() if len(args) < 2: print "no server specified" return s = self.top.nc.servers.get(args[1]) s.private_address = s.addresses['private'][0]['addr'] s.flavor = self.top.nc.flavors.get(s.flavor['id']).name try: s.user = self.top.kc.users.get(s.user_id).name except: s.user = "" s.image = s.image['id'] utils.print_obj_fields(s, [ 'id', 'name', 'flavor', 'image', 'user', 'private_address', 'status', 'OS-EXT-STS:power_state', 'OS-EXT-STS:power_state', 'OS-DCF:diskConfig'])