From a630b5cdb3bab6d80703a4c1843058b11b977fb5 Mon Sep 17 00:00:00 2001 From: "Muthuramalingam, Brinda Santh" Date: Mon, 14 Jan 2019 17:08:01 -0500 Subject: Add velocity engine template service Change-Id: Idde39b587b41328e5a5e2e32ab32c29cd27d4855 Issue-ID: CCSDK-941 Signed-off-by: Muthuramalingam, Brinda Santh --- .../core/service/BluePrintTemplateServiceTest.kt | 35 +++++++++++++ .../test/resources/templates/base-config-data.json | 36 +++++++++++++ .../resources/templates/base-config-template.vtl | 61 ++++++++++++++++++++++ 3 files changed, 132 insertions(+) create mode 100644 components/core/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintTemplateServiceTest.kt create mode 100755 components/core/src/test/resources/templates/base-config-data.json create mode 100755 components/core/src/test/resources/templates/base-config-template.vtl (limited to 'components/core/src/test') diff --git a/components/core/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintTemplateServiceTest.kt b/components/core/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintTemplateServiceTest.kt new file mode 100644 index 00000000..663a3751 --- /dev/null +++ b/components/core/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintTemplateServiceTest.kt @@ -0,0 +1,35 @@ +/* + * Copyright © 2017-2018 AT&T Intellectual Property. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * 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. + */ + +package org.onap.ccsdk.apps.controllerblueprints.core.service + +import org.junit.Test +import org.onap.ccsdk.apps.controllerblueprints.core.utils.JacksonUtils +import kotlin.test.assertNotNull + +class BluePrintTemplateServiceTest { + + @Test + fun testGenerateContent() { + + val template = JacksonUtils.getClassPathFileContent("templates/base-config-template.vtl") + val json = JacksonUtils.getClassPathFileContent("templates/base-config-data.json") + + val content = BluePrintTemplateService.generateContent(template, json) + assertNotNull(content, "failed to generate content for velocity template") + + } +} \ No newline at end of file diff --git a/components/core/src/test/resources/templates/base-config-data.json b/components/core/src/test/resources/templates/base-config-data.json new file mode 100755 index 00000000..2acc6fcd --- /dev/null +++ b/components/core/src/test/resources/templates/base-config-data.json @@ -0,0 +1,36 @@ +{ + "node0_hostname": "sdnc-host", + "node0_backup_router_address": "2001:1890:1253::192:168:100:1", + "servers": [ + "Server1", + "Server2", + "Server3" + ], + "tacplus-servers": [ + { + "tacplus-server-name": "tacplus-server-name1", + "tacplus-server-source-address": "enc-dsdsasa1" + }, + { + "tacplus-server-name": "tacplus-server-name2", + "tacplus-server-source-address": "enc-dsdsasa2" + } + ], + "classes": [ + { + "name": "superuser-class", + "idle-timeout": 5, + "permissions": "all" + }, + { + "name": "tacacs-adv-class", + "idle-timeout": 5 + }, + { + "name": "tacacs-base-class", + "idle-timeout": 5 + } + ], + "system-password": "teamops-system-password", + "root-password": "teamops-root-password" +} diff --git a/components/core/src/test/resources/templates/base-config-template.vtl b/components/core/src/test/resources/templates/base-config-template.vtl new file mode 100755 index 00000000..f7b1269b --- /dev/null +++ b/components/core/src/test/resources/templates/base-config-template.vtl @@ -0,0 +1,61 @@ + + 15.1X49-D50.3 + + node0 + + #foreach($server in ${servers}) + $StringUtils.upperCase("$server") + #end + + + ${node0_hostname} + +
${node0_backup_router_address}
+ $node0_backup_router_address +
+ #foreach($tacplus-server in ${tacplus-servers}) + + $tacplus-server.tacplus-server-name + $tacplus-server.tacplus-server-source-address + + #end + + ONAP information assets + #foreach($class in ${classes}) + + $class.name + $class.idle-timeout + #if ($class.permissions) + $class.permissions + #end + + #end + + readonly + Read Only Account Access + 1001 + tacacs-base-class + + + readwrite + Read - Write Account Access + 1002 + tacacs-adv-class + + ${system-password} + + + + readwrite + Emergency Access Only + 1000 + superuser-class + + ${root-password} + + + +
+
+
\ No newline at end of file -- cgit 1.2.3-korg