From 9a4387cf89f95ecdce9d135677a4b4c4c94a8b94 Mon Sep 17 00:00:00 2001 From: "Cherukuri, Venkatanaresh (vn166g)" Date: Tue, 5 Feb 2019 09:47:55 -0500 Subject: Blueprint Processor Python Script Components Adding Python scripts for Netconf Executor components Change-Id: I6d84dea2e47860063a1140146aebe94d61f8d9c1 Issue-ID: CCSDK-997 Signed-off-by: Cherukuri, Venkatanaresh (vn166g) --- .../scripts/python/ccsdk_netconf/__init__.py | 0 components/scripts/python/ccsdk_netconf/common.py | 2 + .../scripts/python/ccsdk_netconf/constant.py | 15 ++++++ .../python/ccsdk_netconf/netconf_constant.py | 15 ++++++ .../scripts/python/ccsdk_netconf/netconfclient.py | 56 ++++++++++++++++++++++ 5 files changed, 88 insertions(+) create mode 100644 components/scripts/python/ccsdk_netconf/__init__.py create mode 100644 components/scripts/python/ccsdk_netconf/common.py create mode 100644 components/scripts/python/ccsdk_netconf/constant.py create mode 100644 components/scripts/python/ccsdk_netconf/netconf_constant.py create mode 100644 components/scripts/python/ccsdk_netconf/netconfclient.py (limited to 'components/scripts') diff --git a/components/scripts/python/ccsdk_netconf/__init__.py b/components/scripts/python/ccsdk_netconf/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/components/scripts/python/ccsdk_netconf/common.py b/components/scripts/python/ccsdk_netconf/common.py new file mode 100644 index 00000000..139597f9 --- /dev/null +++ b/components/scripts/python/ccsdk_netconf/common.py @@ -0,0 +1,2 @@ + + diff --git a/components/scripts/python/ccsdk_netconf/constant.py b/components/scripts/python/ccsdk_netconf/constant.py new file mode 100644 index 00000000..534ca9e1 --- /dev/null +++ b/components/scripts/python/ccsdk_netconf/constant.py @@ -0,0 +1,15 @@ +SERVICE_LOG = "log" +SERVICE_NETCONF = "netconfService" +SERVICE_MESSAGE = "messageService" + +PARAM_REQUEST_ID = "requestId" +PARAM_ACTION = "action" + +STATUS_SUCCESS = "success" +STATUS_FAILURE = "failure" + +CONFIG_TARGET_RUNNING = "running" +CONFIG_TARGET_CANDIDATE = "candidate" +CONFIG_DEFAULT_OPERATION_MERGE = "merge" +CONFIG_DEFAULT_OPERATION_REPLACE = "replace" +CONFIG_DEFAULT_OPERATION_NONE = "none" diff --git a/components/scripts/python/ccsdk_netconf/netconf_constant.py b/components/scripts/python/ccsdk_netconf/netconf_constant.py new file mode 100644 index 00000000..534ca9e1 --- /dev/null +++ b/components/scripts/python/ccsdk_netconf/netconf_constant.py @@ -0,0 +1,15 @@ +SERVICE_LOG = "log" +SERVICE_NETCONF = "netconfService" +SERVICE_MESSAGE = "messageService" + +PARAM_REQUEST_ID = "requestId" +PARAM_ACTION = "action" + +STATUS_SUCCESS = "success" +STATUS_FAILURE = "failure" + +CONFIG_TARGET_RUNNING = "running" +CONFIG_TARGET_CANDIDATE = "candidate" +CONFIG_DEFAULT_OPERATION_MERGE = "merge" +CONFIG_DEFAULT_OPERATION_REPLACE = "replace" +CONFIG_DEFAULT_OPERATION_NONE = "none" diff --git a/components/scripts/python/ccsdk_netconf/netconfclient.py b/components/scripts/python/ccsdk_netconf/netconfclient.py new file mode 100644 index 00000000..448e03dc --- /dev/null +++ b/components/scripts/python/ccsdk_netconf/netconfclient.py @@ -0,0 +1,56 @@ +from netconf_constant import CONFIG_TARGET_RUNNING, CONFIG_DEFAULT_OPERATION_REPLACE + + + +class NetconfClient: + + def __init__(self, log, nc): + self.log = log + self.nc = nc + + def disconnect(self): + self.nc.disconnect() + return + + def connect(self,deviceInfo): + self.nc.connect(deviceInfo) + return + + def lock(self, messageId, configTarget, messageTimeout=30): + deviceResponse = self.nc.lock(messageId, configTarget, messageTimeout) + return deviceResponse + + def getConfig(self, messageId, filter, configTarget=CONFIG_TARGET_RUNNING, messageTimeout=30): + self.log.info("in the ncclient getConfig {}",messageId) + self.log.info("in the ncclient getConfig {}",filter) + deviceResponse = self.nc.getConfig(messageId, filter, configTarget, messageTimeout) + return deviceResponse + + def editConfig(self, messageId, messageContent, reConnect=False, wait=0, lock=False, + configTarget=CONFIG_TARGET_RUNNING, editDefaultOperation=CONFIG_DEFAULT_OPERATION_REPLACE, + deleteConfig= False, validate= False, commit=False, discardChanges =True, unlock=False, + preRestartWait=0, postRestartWait=0, messageTimeout=30): + deviceResponse = self.nc.editConfig(messageId, messageContent, reConnect, wait, lock, configTarget, + editDefaultOperation, deleteConfig, validate, commit, discardChanges, unlock, + preRestartWait, postRestartWait, messageTimeout) + return deviceResponse + + def commit(self, messageId, message, discardChanges =True, messageTimeout=30): + deviceResponse = self.nc.commit(messageId, message, discardChanges, messageTimeout) + return deviceResponse + + def unLock(self, messageId, configTarget, messageTimeout=30): + deviceResponse = self.nc.unLock(messageId, configTarget, messageTimeout) + return deviceResponse + + def discardChanges(self, messageId, messageTimeout=30): + deviceResponse = self.nc.discardChanges(messageId, messageTimeout) + return deviceResponse + + def close(self, messageId, force=False, messageTimeout=30): + deviceResponse = self.nc.close(messageId, force, messageTimeout) + return deviceResponse + + def rpc(self, request, messageId, messageTimeout=30): + deviceResponse = self.nc.rpc(request, messageId, messageTimeout) + return deviceResponse -- cgit 1.2.3-korg