accepts tags in getnodes filters
authorThierry Parmentelat <thierry.parmentelat@sophia.inria.fr>
Sat, 6 Dec 2008 15:50:19 +0000 (15:50 +0000)
committerThierry Parmentelat <thierry.parmentelat@sophia.inria.fr>
Sat, 6 Dec 2008 15:50:19 +0000 (15:50 +0000)
PLC/Nodes.py
PLC/Table.py

index db62aae..32dd4ea 100644 (file)
@@ -291,7 +291,8 @@ class Nodes(Table):
                 node_filter = Filter(Node.fields, {'node_id': ints, 'hostname': strs})
                 sql += " AND (%s) %s" % node_filter.sql(api, "OR")
             elif isinstance(node_filter, dict):
-                node_filter = Filter(Node.fields, node_filter)
+                allowed_fields=dict(Node.fields.items()+Node.tags.items())
+                node_filter = Filter(allowed_fields, node_filter)
                 sql += " AND (%s) %s" % node_filter.sql(api, "AND")
             elif isinstance (node_filter, StringTypes):
                 node_filter = Filter(Node.fields, {'hostname':[node_filter]})
index 0da2015..e3f550f 100644 (file)
@@ -259,7 +259,7 @@ class Row(dict):
         result.append(rejected)
         return result
 
-    # compute the accepts part of an update method from a list of column names, and a (list of) field dict
+    # compute the accepts part of an update method from a list of column names, and a (list of) fields dict
     @staticmethod
     def accepted_fields (can_update_columns, fields):
         result={}