Loading ccnode/handlers.py +22 −19 Original line number Diff line number Diff line Loading @@ -285,9 +285,9 @@ class NodeHandler(RpcHandler): ''' ''' result = {} debug('get_tags: server requested tags=`%s` noresolve_tags=`%s`' % (tags, noresolve_tags)) # build a single list of tags info('get_tags: server requested tags=`%s` noresolve_tags=`%s`', tags, noresolve_tags) # build a single dict of tags, boolean means "resolve" mytags = {} if tags: for t in tags: Loading Loading @@ -382,6 +382,7 @@ class NodeHandler(RpcHandler): result.extend(self.VM_TAG_MAP.keys()) # add globbing tags for pattern, handler in self.VM_TAG_GLOB.iteritems(): try: # helper is available on the current host if handler[0](sub_obj): debug('sub_tags: sub node implements `%s`' % pattern) Loading @@ -391,23 +392,25 @@ class NodeHandler(RpcHandler): # append all tags for t in htags.keys(): result.append(t) except Exception as err: warning('_sub_tag_list: `%s` -> `%s`', repr(err), err) return result @pure def sub_tags(self, sub_id, tags=None, noresolve_tags=None): ''' ''' debug('sub_tags: server requested tags for `%s`' % sub_id) info('sub_tags: server requested tags for `%s`', sub_id) if sub_id not in self._host_handle.vm_list(): debug('sub_tags: sub node `%s` is unknown !' % sub_id) raise CCException('sub node `%s` is unknown' % sub_id) warning('sub_tags: sub node `%s` is unknown !', sub_id) raise HypervisorError('sub node `%s` is unknown' % sub_id) else: # open a wrapper to the VM debug('sub_tags: fetching vm data for `%s`' % sub_id) debug('sub_tags: fetching vm data for `%s`', sub_id) sub = self._host_handle.vm_get(sub_id) # build a single list of tags debug('sub_tags: server requested tags `%s` + `%s`' % (tags, noresolve_tags)) info('sub_tags: server requested tags `%s` + `%s`', tags, noresolve_tags) available_tags = self._sub_tag_list(sub) mytags = {} # return all resolved tags case Loading @@ -430,7 +433,7 @@ class NodeHandler(RpcHandler): mytags[t] = False for t in tags: mytags[t] = True debug('sub_tags: expanded list to `%s`' % mytags.keys()) debug('sub_tags: expanded list to `%s`', mytags.keys()) # add mandatory tags if missing in the list, or set noresolve for t in self.VM_TAG_MANDATORY: if t not in mytags or not mytags[t]: Loading Loading
ccnode/handlers.py +22 −19 Original line number Diff line number Diff line Loading @@ -285,9 +285,9 @@ class NodeHandler(RpcHandler): ''' ''' result = {} debug('get_tags: server requested tags=`%s` noresolve_tags=`%s`' % (tags, noresolve_tags)) # build a single list of tags info('get_tags: server requested tags=`%s` noresolve_tags=`%s`', tags, noresolve_tags) # build a single dict of tags, boolean means "resolve" mytags = {} if tags: for t in tags: Loading Loading @@ -382,6 +382,7 @@ class NodeHandler(RpcHandler): result.extend(self.VM_TAG_MAP.keys()) # add globbing tags for pattern, handler in self.VM_TAG_GLOB.iteritems(): try: # helper is available on the current host if handler[0](sub_obj): debug('sub_tags: sub node implements `%s`' % pattern) Loading @@ -391,23 +392,25 @@ class NodeHandler(RpcHandler): # append all tags for t in htags.keys(): result.append(t) except Exception as err: warning('_sub_tag_list: `%s` -> `%s`', repr(err), err) return result @pure def sub_tags(self, sub_id, tags=None, noresolve_tags=None): ''' ''' debug('sub_tags: server requested tags for `%s`' % sub_id) info('sub_tags: server requested tags for `%s`', sub_id) if sub_id not in self._host_handle.vm_list(): debug('sub_tags: sub node `%s` is unknown !' % sub_id) raise CCException('sub node `%s` is unknown' % sub_id) warning('sub_tags: sub node `%s` is unknown !', sub_id) raise HypervisorError('sub node `%s` is unknown' % sub_id) else: # open a wrapper to the VM debug('sub_tags: fetching vm data for `%s`' % sub_id) debug('sub_tags: fetching vm data for `%s`', sub_id) sub = self._host_handle.vm_get(sub_id) # build a single list of tags debug('sub_tags: server requested tags `%s` + `%s`' % (tags, noresolve_tags)) info('sub_tags: server requested tags `%s` + `%s`', tags, noresolve_tags) available_tags = self._sub_tag_list(sub) mytags = {} # return all resolved tags case Loading @@ -430,7 +433,7 @@ class NodeHandler(RpcHandler): mytags[t] = False for t in tags: mytags[t] = True debug('sub_tags: expanded list to `%s`' % mytags.keys()) debug('sub_tags: expanded list to `%s`', mytags.keys()) # add mandatory tags if missing in the list, or set noresolve for t in self.VM_TAG_MANDATORY: if t not in mytags or not mytags[t]: Loading