aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteve Siani <alphonse.steve.siani.djissitchi@ibm.com>2019-09-12 15:38:23 -0400
committerYuriy Malakov <Yuriy.Malakov@att.com>2019-10-30 14:03:16 +0000
commiteed244a5964b26d35bb8db3acb19311d781f8a58 (patch)
tree8b1f97d03174752b2ee1dd2595db5b075ee40fde
parentb8c996b21f76dce07035c1924b5ce9a643e9b3c0 (diff)
Add wrapper function for Cli and Netconf executor
Issue-ID: CCSDK-1707 Signed-off-by: Steve Siani <alphonse.steve.siani.djissitchi@ibm.com> Change-Id: I2c29d0135b8252cd21ed3d139516ac637c846927 (cherry picked from commit 1d7e5f7f80281823cbfc4a2e2ea9833c6412de8c)
-rw-r--r--components/scripts/python/ccsdk_netconf/common.py37
-rw-r--r--components/scripts/python/ccsdk_netconf/netconfclient.py3
-rw-r--r--ms/blueprintsprocessor/functions/cli-executor/src/main/kotlin/internal/scripts/InternalSimpleCli.kt9
-rw-r--r--ms/blueprintsprocessor/functions/cli-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/cli/executor/CliExecutorExtensions.kt13
4 files changed, 55 insertions, 7 deletions
diff --git a/components/scripts/python/ccsdk_netconf/common.py b/components/scripts/python/ccsdk_netconf/common.py
index 66c7a98b5..457d46019 100644
--- a/components/scripts/python/ccsdk_netconf/common.py
+++ b/components/scripts/python/ccsdk_netconf/common.py
@@ -12,6 +12,7 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+from netconf_constant import *
from org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution import ResourceResolutionExtensionsKt
@@ -21,9 +22,45 @@ class ResolutionHelper:
self.component_function = component_function
def resolve_and_generate_message_from_template_prefix(self, artifact_prefix):
+ """Get the template resolved in the current workflow execution by the artifact prefix
+
+ :param artifact_prefix:
+ :return: template
+ """
return ResourceResolutionExtensionsKt.contentFromResolvedArtifact(self.component_function, artifact_prefix)
def retrieve_resolved_template_from_database(self, key, artifact_template):
+ """Get the template resolved and stored with resolution-key and matching with the artifact name
+
+ :param key:
+ :param artifact_template:
+ :return:
+ """
return ResourceResolutionExtensionsKt.storedContentFromResolvedArtifact(self.component_function, key,
artifact_template)
+ def set_execution_attribute_response_data(self, response_data):
+ """For the current node execution, set the attribute value of response-data
+
+ :param response_data:
+ :return:
+ """
+ self.component_function.setAttribute(ATTRIBUTE_RESPONSE_DATA, response_data)
+
+ def get_node_template_attribute(self, node_template_name, attribute_key):
+ """get attribute value for a specific node template of the current workflow
+
+ :param node_template_name:
+ :param attribute_key:
+ :return: JsonNode
+ """
+ self.component_function.getNodeTemplateAttribute(node_template_name, attribute_key)
+
+ def get_input_value(self, key):
+ """Get input value of the current node template execution
+
+ :param key:
+ :return: JsonNode
+ """
+ self.component_function.bluePrintRuntimeService.getInputValue(key)
+
diff --git a/components/scripts/python/ccsdk_netconf/netconfclient.py b/components/scripts/python/ccsdk_netconf/netconfclient.py
index 74ac7e3bc..2d4829363 100644
--- a/components/scripts/python/ccsdk_netconf/netconfclient.py
+++ b/components/scripts/python/ccsdk_netconf/netconfclient.py
@@ -63,6 +63,3 @@ class NetconfClient:
def get(self, filter_content):
device_response = self.netconf_rpc_client.get(filter_content)
return device_response
-
- def set_execution_attribute_response_data(self, response_data):
- self.component_function.setAttribute(ATTRIBUTE_RESPONSE_DATA, response_data)
diff --git a/ms/blueprintsprocessor/functions/cli-executor/src/main/kotlin/internal/scripts/InternalSimpleCli.kt b/ms/blueprintsprocessor/functions/cli-executor/src/main/kotlin/internal/scripts/InternalSimpleCli.kt
index cf27cc2de..15365e176 100644
--- a/ms/blueprintsprocessor/functions/cli-executor/src/main/kotlin/internal/scripts/InternalSimpleCli.kt
+++ b/ms/blueprintsprocessor/functions/cli-executor/src/main/kotlin/internal/scripts/InternalSimpleCli.kt
@@ -19,11 +19,12 @@
package internal.scripts
import org.onap.ccsdk.cds.blueprintsprocessor.core.api.data.ExecutionServiceInput
+import org.onap.ccsdk.cds.blueprintsprocessor.functions.cli.executor.cliDeviceInfo
+import org.onap.ccsdk.cds.blueprintsprocessor.functions.cli.executor.getSshClientService
import org.onap.ccsdk.cds.blueprintsprocessor.services.execution.AbstractScriptComponentFunction
import org.onap.ccsdk.cds.blueprintsprocessor.services.execution.ComponentScriptExecutor
-import org.onap.ccsdk.cds.blueprintsprocessor.ssh.sshClientService
import org.onap.ccsdk.cds.controllerblueprints.core.asJsonPrimitive
-import org.onap.ccsdk.cds.controllerblueprints.core.service.BluePrintDependencyService
+
import org.slf4j.LoggerFactory
open class TestCliScriptFunction : AbstractScriptComponentFunction() {
@@ -54,10 +55,10 @@ open class Check : AbstractScriptComponentFunction() {
override suspend fun processNB(executionRequest: ExecutionServiceInput) {
// Get the Device Information from the DSL Model
- val deviceInformation = bluePrintRuntimeService.resolveDSLExpression("device-properties")
+ val deviceInformation = cliDeviceInfo("device-properties")
// Get the Client Service
- val sshClientService = BluePrintDependencyService.sshClientService(deviceInformation)
+ val sshClientService = getSshClientService(deviceInformation)
sshClientService.startSessionNB()
diff --git a/ms/blueprintsprocessor/functions/cli-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/cli/executor/CliExecutorExtensions.kt b/ms/blueprintsprocessor/functions/cli-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/cli/executor/CliExecutorExtensions.kt
index bc9b7103c..ad95759a9 100644
--- a/ms/blueprintsprocessor/functions/cli-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/cli/executor/CliExecutorExtensions.kt
+++ b/ms/blueprintsprocessor/functions/cli-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/cli/executor/CliExecutorExtensions.kt
@@ -17,7 +17,20 @@
package org.onap.ccsdk.cds.blueprintsprocessor.functions.cli.executor
+import com.fasterxml.jackson.databind.JsonNode
+import org.onap.ccsdk.cds.blueprintsprocessor.services.execution.AbstractComponentFunction
+import org.onap.ccsdk.cds.blueprintsprocessor.ssh.service.BlueprintSshClientService
+import org.onap.ccsdk.cds.blueprintsprocessor.ssh.sshClientService
+import org.onap.ccsdk.cds.controllerblueprints.core.service.BluePrintDependencyService
+
/**
* Register the CLI module exposed dependency
*/
+fun AbstractComponentFunction.cliDeviceInfo(requirementName: String): JsonNode {
+ return bluePrintRuntimeService.resolveDSLExpression(requirementName)
+}
+
+fun AbstractComponentFunction.getSshClientService(cliDeviceInfo: JsonNode): BlueprintSshClientService {
+ return BluePrintDependencyService.sshClientService(cliDeviceInfo)
+}