diff options
author | Alexis de Talhouët <adetalhouet89@gmail.com> | 2019-04-19 09:16:26 -0400 |
---|---|---|
committer | Alexis de Talhouët <adetalhouet89@gmail.com> | 2019-04-22 14:23:09 +0000 |
commit | f6c08adeb3ec6af94fc75eb4e8f0853ce5f38c97 (patch) | |
tree | fac61fc7e86343e6c1afb0d9f63c974a9c0538e4 /ms/blueprintsprocessor | |
parent | f332e6ecd2c0a9f26451f977c941f03ed8ab84dc (diff) |
Update package type name
- split log output: prepare-env and exec-cmd
- fix proxy support when not provided
Change-Id: I40cdf90e7e3ebe31b0152923f8b6a38f6b6e9ca0
Issue-ID: CCCSDK-125
Signed-off-by: Alexis de Talhouët <adetalhouet89@gmail.com>
Diffstat (limited to 'ms/blueprintsprocessor')
2 files changed, 8 insertions, 17 deletions
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 17d5fc76d..488e0d054 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 @@ -22,9 +22,8 @@ import org.onap.ccsdk.cds.blueprintsprocessor.core.api.data.* import org.onap.ccsdk.cds.blueprintsprocessor.services.execution.AbstractComponentFunction import org.onap.ccsdk.cds.blueprintsprocessor.services.execution.ExecutionServiceConstant import org.onap.ccsdk.cds.blueprintsprocessor.services.execution.RemoteScriptExecutionService -import org.onap.ccsdk.cds.controllerblueprints.command.api.ResponseStatus import org.onap.ccsdk.cds.controllerblueprints.core.BluePrintProcessorException -import org.onap.ccsdk.cds.controllerblueprints.core.asJsonNode +import org.onap.ccsdk.cds.controllerblueprints.core.asJsonPrimitive import org.onap.ccsdk.cds.controllerblueprints.core.checkFileExists import org.onap.ccsdk.cds.controllerblueprints.core.checkNotBlank import org.onap.ccsdk.cds.controllerblueprints.core.data.OperationAssignment @@ -50,6 +49,9 @@ open class ComponentRemotePythonExecutor(private val remoteScriptExecutionServic const val INPUT_DYNAMIC_PROPERTIES = "dynamic-properties" const val INPUT_COMMAND = "command" const val INPUT_PACKAGES = "packages" + + const val ATTRIBUTE_PREPARE_ENV_LOG = "prepare-environment-logs" + const val ATTRIBUTE_EXEC_CMD_LOG = "execute-command-logs" } override suspend fun processNB(executionRequest: ExecutionServiceInput) { @@ -83,14 +85,10 @@ open class ComponentRemotePythonExecutor(private val remoteScriptExecutionServic // TODO("Python execution command and Resolve some expressions with dynamic properties") val scriptCommand = command.replace(pythonScript.name, pythonScript.absolutePath) -// val dependencies = operationAssignment.implementation?.dependencies - try { // Open GRPC Connection remoteScriptExecutionService.init(endPointSelector.asText()) - var executionLogs = "" - // If packages are defined, then install in remote server if (packages !is MissingNode && packages !is NullNode) { val prepareEnvInput = PrepareRemoteEnvInput(requestId = processId, @@ -99,8 +97,7 @@ open class ComponentRemotePythonExecutor(private val remoteScriptExecutionServic packages = packages ) val prepareEnvOutput = remoteScriptExecutionService.prepareEnv(prepareEnvInput) - executionLogs = prepareEnvOutput.response - setOutput(executionLogs) + setAttribute(ATTRIBUTE_PREPARE_ENV_LOG, prepareEnvOutput.response.asJsonPrimitive()) check(prepareEnvOutput.status == StatusType.SUCCESS) { "failed to get prepare remote env response status for requestId(${prepareEnvInput.requestId})" } @@ -111,24 +108,18 @@ open class ComponentRemotePythonExecutor(private val remoteScriptExecutionServic remoteIdentifier = RemoteIdentifier(blueprintName = blueprintName, blueprintVersion = blueprintVersion), command = scriptCommand) val remoteExecutionOutput = remoteScriptExecutionService.executeCommand(remoteExecutionInput) - executionLogs += remoteExecutionOutput.response - setOutput(executionLogs) + setAttribute(ATTRIBUTE_EXEC_CMD_LOG, remoteExecutionOutput.response.asJsonPrimitive()) check(remoteExecutionOutput.status == StatusType.SUCCESS) { "failed to get prepare remote command response status for requestId(${remoteExecutionOutput.requestId})" } } catch (e: Exception) { - log.error("", e) + log.error("Failed to process on remote executor", e) } finally { remoteScriptExecutionService.close() } } - private fun setOutput(executionLogs: String) { - bluePrintRuntimeService.setNodeTemplateAttributeValue(nodeTemplateName, - "execution-logs", JacksonUtils.jsonNodeFromObject(executionLogs)) - } - override suspend fun recoverNB(runtimeException: RuntimeException, executionRequest: ExecutionServiceInput) { bluePrintRuntimeService.getBluePrintError() .addError("Failed in ComponentJythonExecutor : ${runtimeException.message}") diff --git a/ms/blueprintsprocessor/modules/services/execution-service/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/services/execution/RemoteScriptExecutionService.kt b/ms/blueprintsprocessor/modules/services/execution-service/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/services/execution/RemoteScriptExecutionService.kt index 99d4f8c24..7aee95e11 100644 --- a/ms/blueprintsprocessor/modules/services/execution-service/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/services/execution/RemoteScriptExecutionService.kt +++ b/ms/blueprintsprocessor/modules/services/execution-service/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/services/execution/RemoteScriptExecutionService.kt @@ -107,7 +107,7 @@ class GrpcRemoteScriptExecutionService(private val bluePrintGrpcLibPropertyServi val pckage = Packages.newBuilder() JsonFormat.parser().merge(it.toString(), pckage) packageList.add(pckage.build()) - } + } return PrepareEnvInput.newBuilder() .setIdentifiers(this.remoteIdentifier!!.asGrpcData()) |