diff options
author | 2019-11-28 11:26:39 +0100 | |
---|---|---|
committer | 2019-11-29 15:08:18 +0000 | |
commit | 0551898080e85a2af6bb9442459ee548e58bd21b (patch) | |
tree | 0bde2d833c576e968bf990f65b198f33e0bf1bf6 /docs/guides/onap-user/design/parameter_resolution/freeradius_example/before_enrichment/CBA_freeradius/Scripts/kotlin/kotlin.kt | |
parent | 4de8b081b1d461e5435fea66705789d141d93ad4 (diff) |
major update for simplest and working example
Issue-ID: DOC-569
with Andreas remarks
modify parameter mapping image
rst correction
Signed-off-by: Rene_Robert <rene.robert@orange.com>
Change-Id: I852c75c6dd4619bb1c2e96ea9e257a5319917dad
Diffstat (limited to 'docs/guides/onap-user/design/parameter_resolution/freeradius_example/before_enrichment/CBA_freeradius/Scripts/kotlin/kotlin.kt')
-rwxr-xr-x | docs/guides/onap-user/design/parameter_resolution/freeradius_example/before_enrichment/CBA_freeradius/Scripts/kotlin/kotlin.kt | 82 |
1 files changed, 0 insertions, 82 deletions
diff --git a/docs/guides/onap-user/design/parameter_resolution/freeradius_example/before_enrichment/CBA_freeradius/Scripts/kotlin/kotlin.kt b/docs/guides/onap-user/design/parameter_resolution/freeradius_example/before_enrichment/CBA_freeradius/Scripts/kotlin/kotlin.kt deleted file mode 100755 index e0d36ca17..000000000 --- a/docs/guides/onap-user/design/parameter_resolution/freeradius_example/before_enrichment/CBA_freeradius/Scripts/kotlin/kotlin.kt +++ /dev/null @@ -1,82 +0,0 @@ -package org.onap.ccsdk.cds.blueprintsprocessor.services.execution.scripts
-
-import com.fasterxml.jackson.databind.node.ObjectNode
-import org.onap.ccsdk.cds.blueprintsprocessor.core.api.data.ExecutionServiceInput
-import org.onap.ccsdk.cds.blueprintsprocessor.services.execution.AbstractComponentFunction
-import org.onap.ccsdk.cds.blueprintsprocessor.services.execution.AbstractScriptComponentFunction
-import org.onap.ccsdk.cds.blueprintsprocessor.services.execution.ComponentFunctionScriptingService
-
-import java.io.ByteArrayInputStream
-import java.io.IOException
-import java.io.InputStream
-import org.apache.sshd.client.SshClient
-import org.apache.sshd.client.channel.ClientChannel
-import org.apache.sshd.client.future.AuthFuture
-import org.apache.sshd.client.future.ConnectFuture
-import org.apache.sshd.client.session.ClientSession
-import org.apache.sshd.common.future.SshFutureListener
-import org.apache.sshd.common.util.io.NoCloseInputStream
-import org.apache.sshd.common.util.io.NoCloseOutputStream
-import org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.storedContentFromResolvedArtifactNB
-import org.onap.ccsdk.cds.controllerblueprints.core.BluePrintProcessorException
-import org.onap.ccsdk.cds.controllerblueprints.core.asListOfString
-import org.onap.ccsdk.cds.controllerblueprints.core.utils.JacksonUtils
-import org.slf4j.LoggerFactory
-import java.io.ByteArrayOutputStream
-import java.util.*
-
-open class SampleScriptComponent : AbstractScriptComponentFunction() {
-
- private val log = LoggerFactory.getLogger(SampleScriptComponent::class.java)!!
-
- override suspend fun processNB(executionRequest: ExecutionServiceInput) {
- log.info("Hello Kotlin!")
- val resolution_key = getDynamicProperties("resolution-key").asText()
- log.info("resolution_key: $resolution_key")
- val payload = storedContentFromResolvedArtifactNB(resolution_key, "userconfig")
- val payloadObject = JacksonUtils.jsonNode(payload) as ObjectNode
- val freeradius_ip: String = payloadObject.get("freeradius_ip").asText()
- log.info("freeradius_ip: $freeradius_ip")
- val user_config: String = payloadObject.get("user_config").asText()
- log.info("user_config: $user_config")
- log.info("Waiting 2 minutes for VM to initialize")
- Thread.sleep(120000)
- val client = SshClient.setUpDefaultClient()
- client.start()
- log.info("SSH Client Service started successfully")
- val session = client.connect("cloud", freeradius_ip, 22).verify(3000).session
- session.addPasswordIdentity("password")
- log.info("SSH Client authenticating...")
- val authFuture = session.auth().verify(3000)
- log.info("SSH client session($session) created")
- log.info("SSH Authenticated: $authFuture.isSuccess()")
- val command="echo '$user_config' | sudo tee -a /etc/freeradius/users"
- log.info("Executing host($session) command($command)")
- val channel = session.createExecChannel(command)
- val outputStream = ByteArrayOutputStream()
- channel!!.out = outputStream
- channel!!.err = outputStream
- channel!!.open().await()
- //val waitMask = channel!!.waitFor(Collections.unmodifiableSet(EnumSet.of(ClientChannelEvent.CLOSED)), 3000)
- //if (waitMask.contains(ClientChannelEvent.TIMEOUT)) {
- // throw BluePrintProcessorException("Failed to retrieve command result in time: $command")
- //}
- Thread.sleep(3000)
- val exitStatus = channel!!.exitStatus
- //ClientChannel. .validateCommandExitStatusCode(command, exitStatus!!)
- if (channel != null) {
- channel!!.close()
- }
- if (client.isOpen) {
- client.stop()
- }
- log.info(outputStream.toString())
- log.info("SSH Client Service stopped successfully")
-
-
- }
-
-
- override suspend fun recoverNB(runtimeException: RuntimeException, executionRequest: ExecutionServiceInput) {
- }
-}
\ No newline at end of file |