From 01cbd5c7ea7b554f229ff3735d5352038f8b4419 Mon Sep 17 00:00:00 2001 From: Alexis de Talhouët Date: Tue, 16 Apr 2019 12:13:32 -0400 Subject: Add support to command to execute for remote python MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I043ea301faf87fb487204180a3294de0a76d3543 Issue-ID: CCSDK-1164 Signed-off-by: Alexis de Talhouët --- .../test-blueprint/remote_scripts/Definitions/node_types.json | 5 +++++ .../test-blueprint/remote_scripts/Definitions/remote_scripts.json | 3 +++ .../test-blueprint/remote_scripts/Scripts/python/SamplePython.py | 5 +++++ .../starter-type/node_type/component-remote-python-executor.json | 5 +++++ .../functions/python/executor/ComponentRemotePythonExecutor.kt | 4 +++- 5 files changed, 21 insertions(+), 1 deletion(-) diff --git a/components/model-catalog/blueprint-model/test-blueprint/remote_scripts/Definitions/node_types.json b/components/model-catalog/blueprint-model/test-blueprint/remote_scripts/Definitions/node_types.json index d7002cdea..cd63f0091 100644 --- a/components/model-catalog/blueprint-model/test-blueprint/remote_scripts/Definitions/node_types.json +++ b/components/model-catalog/blueprint-model/test-blueprint/remote_scripts/Definitions/node_types.json @@ -29,6 +29,11 @@ "description": "Dynamic Json Content or DSL Json reference.", "required": false, "type": "json" + }, + "command": { + "description": "Command to execute.", + "required": true, + "type": "string" } } } diff --git a/components/model-catalog/blueprint-model/test-blueprint/remote_scripts/Definitions/remote_scripts.json b/components/model-catalog/blueprint-model/test-blueprint/remote_scripts/Definitions/remote_scripts.json index 7c279010d..464911478 100644 --- a/components/model-catalog/blueprint-model/test-blueprint/remote_scripts/Definitions/remote_scripts.json +++ b/components/model-catalog/blueprint-model/test-blueprint/remote_scripts/Definitions/remote_scripts.json @@ -65,6 +65,9 @@ "dependencies": [ "pyaml" ] + }, + "inputs": { + "command": "python SamplePython.py blah" } } } diff --git a/components/model-catalog/blueprint-model/test-blueprint/remote_scripts/Scripts/python/SamplePython.py b/components/model-catalog/blueprint-model/test-blueprint/remote_scripts/Scripts/python/SamplePython.py index e69de29bb..5e20e2291 100644 --- a/components/model-catalog/blueprint-model/test-blueprint/remote_scripts/Scripts/python/SamplePython.py +++ b/components/model-catalog/blueprint-model/test-blueprint/remote_scripts/Scripts/python/SamplePython.py @@ -0,0 +1,5 @@ +#!/usr/bin/python + +import sys + +print(sys.argv[1]) \ No newline at end of file diff --git a/components/model-catalog/definition-type/starter-type/node_type/component-remote-python-executor.json b/components/model-catalog/definition-type/starter-type/node_type/component-remote-python-executor.json index 9c3c90ba8..99a4dd8dc 100644 --- a/components/model-catalog/definition-type/starter-type/node_type/component-remote-python-executor.json +++ b/components/model-catalog/definition-type/starter-type/node_type/component-remote-python-executor.json @@ -27,6 +27,11 @@ "description": "Dynamic Json Content or DSL Json reference.", "required": false, "type": "json" + }, + "command": { + "description": "Command to execute.", + "required": true, + "type": "string" } } } diff --git a/ms/blueprintsprocessor/functions/python-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/python/executor/ComponentRemotePythonExecutor.kt b/ms/blueprintsprocessor/functions/python-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/python/executor/ComponentRemotePythonExecutor.kt index a243f44bf..6437cdf03 100644 --- a/ms/blueprintsprocessor/functions/python-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/python/executor/ComponentRemotePythonExecutor.kt +++ b/ms/blueprintsprocessor/functions/python-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/python/executor/ComponentRemotePythonExecutor.kt @@ -46,6 +46,7 @@ open class ComponentRemotePythonExecutor(private val remoteScriptExecutionServic companion object { const val INPUT_ENDPOINT_SELECTOR = "endpoint-selector" const val INPUT_DYNAMIC_PROPERTIES = "dynamic-properties" + const val INPUT_COMMAND = "command" } override suspend fun processNB(executionRequest: ExecutionServiceInput) { @@ -73,9 +74,10 @@ open class ComponentRemotePythonExecutor(private val remoteScriptExecutionServic val endPointSelector = getOperationInput(INPUT_ENDPOINT_SELECTOR) val dynamicProperties = getOperationInput(INPUT_DYNAMIC_PROPERTIES) + val command = getOperationInput(INPUT_COMMAND).asText() // TODO("Python execution command and Resolve some expressions with dynamic properties") - val scriptCommand = pythonScript.absolutePath + val scriptCommand = command.replace(pythonScript.name, pythonScript.absolutePath) val dependencies = operationAssignment.implementation?.dependencies -- cgit 1.2.3-korg