2 * Copyright © 2019 IBM.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 package cba.scripts.capability.cli
19 import org.onap.ccsdk.cds.blueprintsprocessor.core.api.data.ExecutionServiceInput
20 import org.onap.ccsdk.cds.blueprintsprocessor.services.execution.AbstractScriptComponentFunction
21 import org.onap.ccsdk.cds.blueprintsprocessor.services.execution.ComponentScriptExecutor
22 import org.onap.ccsdk.cds.blueprintsprocessor.ssh.sshClientService
23 import org.onap.ccsdk.cds.controllerblueprints.core.*
24 import org.onap.ccsdk.cds.controllerblueprints.core.service.BluePrintDependencyService
27 open class Check : AbstractScriptComponentFunction() {
29 private val log = logger(Check::class)
31 override fun getName(): String {
35 override suspend fun processNB(executionRequest: ExecutionServiceInput) {
36 log.info("Executing process : ${executionRequest.payload}")
38 val data = executionRequest.payload.at("/check-request/data")
40 log.info("Data : ${data.asJsonString()}")
42 val checkCommands = mashTemplateNData("command-template", data.asJsonString())
44 log.info("Check Commands :$checkCommands")
46 // Get the Device Information from the DSL Model
47 val deviceInformation = bluePrintRuntimeService.resolveDSLExpression("device-properties")
49 log.info("Device Info :$deviceInformation")
51 // Get the Client Service
52 val sshClientService = BluePrintDependencyService.sshClientService(deviceInformation)
54 log.info("Client service is ready")
58 override suspend fun recoverNB(runtimeException: RuntimeException, executionRequest: ExecutionServiceInput) {
59 log.info("Executing Recovery")