returns = Parameter(int, 'New nodenetwork_id (> 0) if successful')
- event_type = 'Add'
- object_type = 'NodeNetwork'
- object_ids = []
-
+
def call(self, auth, node_id_or_hostname, nodenetwork_fields):
nodenetwork_fields = dict(filter(can_update, nodenetwork_fields.items()))
# Check if node exists
- nodes = Nodes(self.api, [node_id_or_hostname]).values()
+ nodes = Nodes(self.api, [node_id_or_hostname])
if not nodes:
raise PLCInvalidArgument, "No such node"
node = nodes[0]
# Add node network
nodenetwork = NodeNetwork(self.api, nodenetwork_fields)
nodenetwork['node_id'] = node['node_id']
+ # if this is the first node network, make it primary
+ if not node['nodenetwork_ids']:
+ nodenetwork['is_primary'] = True
nodenetwork.sync()
-
+
+ # Logging variables
self.object_ids = [node['node_id'], nodenetwork['nodenetwork_id']]
+ self.messgage = "Node network %d added" % nodenetwork['nodenetwork_id']
return nodenetwork['nodenetwork_id']