diff --git a/dyn/tm/services/dsf.py b/dyn/tm/services/dsf.py index 677ff97..484cd4e 100644 --- a/dyn/tm/services/dsf.py +++ b/dyn/tm/services/dsf.py @@ -4164,7 +4164,8 @@ def nodes(self, nodes): elif isinstance(nodes, DSFNode) or type(nodes).__name__ == 'Node': _nodeList.append({'zone': nodes.zone, 'fqdn': nodes.fqdn}) uri = '/DSFNode/{}'.format(self._service_id) - api_args = {'nodes': _nodeList, 'publish': 'Y'} + publish = "Y" if self._implicitPublish else "N" + api_args = {'nodes': _nodeList, 'publish': publish} response = DynectSession.get_session().execute(uri, 'PUT', api_args) self._nodes = [DSFNode(node['zone'], node['fqdn']) for node @@ -4179,7 +4180,8 @@ def add_node(self, node): elif isinstance(node, dict): _node = node uri = '/DSFNode/{}'.format(self._service_id) - api_args = {'node': _node, 'publish': 'Y'} + publish = "Y" if self._implicitPublish else "N" + api_args = {'node': _node, 'publish': publish} response = DynectSession.get_session().execute(uri, 'POST', api_args) self._nodes = [DSFNode(nd['zone'], nd['fqdn']) for nd @@ -4194,7 +4196,8 @@ def remove_node(self, node): elif isinstance(node, dict): _node = node uri = '/DSFNode/{}'.format(self._service_id) - api_args = {'node': _node, 'publish': 'Y'} + publish = "Y" if self._implicitPublish else "N" + api_args = {'node': _node, 'publish': publish} response = DynectSession.get_session().execute(uri, 'DELETE', api_args) self._nodes = [DSFNode(nd['zone'], nd['fqdn']) for nd