diff options
Diffstat (limited to 'mod/runtimeapi')
12 files changed, 127 insertions, 57 deletions
diff --git a/mod/runtimeapi/pom.xml b/mod/runtimeapi/pom.xml index e951d94..f9919c5 100644 --- a/mod/runtimeapi/pom.xml +++ b/mod/runtimeapi/pom.xml @@ -16,7 +16,8 @@ See the License for the specific language governing permissions and limitations under the License. ============LICENSE_END========================================================= --> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" +<project xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <packaging>pom</packaging> @@ -31,36 +32,62 @@ limitations under the License. </parent> <groupId>org.onap.dcaegen2.platform.mod</groupId> <artifactId>runtimeapi</artifactId> - <version>1.0.0</version> + <version>1.0.1</version> <name>dcaegen2-platform-mod-runtimeapi</name> <description>MOD Runtime API</description> <properties> + <maven.compiler.source>1.8</maven.compiler.source> + <maven.compiler.target>1.8</maven.compiler.target> + <maven.deploy.skip>true</maven.deploy.skip> <java.version>1.8</java.version> <maven.build.timestamp.format>yyyyMMdd'T'HHmmss</maven.build.timestamp.format> <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml - </sonar.coverage.jacoco.xmlReportPaths> + </sonar.coverage.jacoco.xmlReportPaths> </properties> <build> - <plugins> - <!-- support sonar in multi-module project --> - <plugin> - <groupId>org.sonarsource.scanner.maven</groupId> - <artifactId>sonar-maven-plugin</artifactId> - <version>3.6.0.1398</version> - </plugin> - </plugins> + <plugins> + <!-- support sonar in multi-module project --> + <plugin> + <groupId>org.sonarsource.scanner.maven</groupId> + <artifactId>sonar-maven-plugin</artifactId> + <version>3.6.0.1398</version> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-enforcer-plugin</artifactId> + <version>1.4.1</version> + <executions> + <execution> + <id>enforce-no-snapshots</id> + <goals> + <goal>enforce</goal> + </goals> + <configuration> + <rules> + <requireReleaseDeps> + <message>No Snapshots Allowed!</message> + </requireReleaseDeps> + </rules> + <fail>false</fail> + </configuration> + </execution> + </executions> + </plugin> + + </plugins> </build> <dependencyManagement> - <dependencies> - <dependency> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-starter-parent</artifactId> - <version>2.1.7.RELEASE</version> - <type>pom</type> - <scope>import</scope> - </dependency> - </dependencies> + <dependencies> + <dependency> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-parent</artifactId> + <version>2.1.7.RELEASE</version> + <type>pom</type> + <scope>import</scope> + </dependency> + </dependencies> </dependencyManagement> </project> diff --git a/mod/runtimeapi/runtime-core/pom.xml b/mod/runtimeapi/runtime-core/pom.xml index dd5d10b..7add43b 100644 --- a/mod/runtimeapi/runtime-core/pom.xml +++ b/mod/runtimeapi/runtime-core/pom.xml @@ -23,11 +23,12 @@ limitations under the License. <parent> <artifactId>runtimeapi</artifactId> <groupId>org.onap.dcaegen2.platform.mod</groupId> - <version>1.0.0</version> + <version>1.0.1</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>runtime-core</artifactId> + <version>1.0.1</version> <dependencies> <dependency> @@ -41,9 +42,9 @@ limitations under the License. <version>28.0-jre</version> </dependency> <dependency> - <groupId>org.onap.dcaegen2.platform.cli</groupId> + <groupId>org.onap.dcaegen2.platform.mod</groupId> <artifactId>blueprint-generator</artifactId> - <version>1.0.0</version> + <version>1.3.1</version> </dependency> <dependency> <groupId>org.json</groupId> diff --git a/mod/runtimeapi/runtime-core/src/main/java/org/onap/dcae/runtime/core/blueprint_creator/BlueprintCreatorOnapDublin.java b/mod/runtimeapi/runtime-core/src/main/java/org/onap/dcae/runtime/core/blueprint_creator/BlueprintCreatorOnap.java index 2225971..7e11b10 100644 --- a/mod/runtimeapi/runtime-core/src/main/java/org/onap/dcae/runtime/core/blueprint_creator/BlueprintCreatorOnapDublin.java +++ b/mod/runtimeapi/runtime-core/src/main/java/org/onap/dcae/runtime/core/blueprint_creator/BlueprintCreatorOnap.java @@ -17,15 +17,17 @@ */ package org.onap.dcae.runtime.core.blueprint_creator; +import org.onap.blueprintgenerator.core.Fixes; import org.onap.dcae.runtime.core.Node; import org.onap.blueprintgenerator.models.blueprint.Blueprint; import org.onap.blueprintgenerator.models.componentspec.ComponentSpec; import org.yaml.snakeyaml.DumperOptions; import org.yaml.snakeyaml.Yaml; +import java.util.LinkedHashMap; import java.util.Map; -public class BlueprintCreatorOnapDublin implements BlueprintCreator{ +public class BlueprintCreatorOnap implements BlueprintCreator{ private String topicUrl; private String importFilePath; @@ -42,7 +44,7 @@ public class BlueprintCreatorOnapDublin implements BlueprintCreator{ public String createBlueprint(String componentSpecString) { ComponentSpec componentSpec = new ComponentSpec(); componentSpec.createComponentSpecFromString(componentSpecString); - Blueprint blueprint = new Blueprint().createBlueprint(componentSpec,"",'o',importFilePath); + Blueprint blueprint = new Blueprint().createBlueprint(componentSpec,"",'o',importFilePath,""); return blueprint.blueprintToString(); } @@ -57,12 +59,27 @@ public class BlueprintCreatorOnapDublin implements BlueprintCreator{ Map<String,Object> obj = yaml.load(blueprintContent); Map<String,Object> inputsObj = (Map<String, Object>) obj.get("inputs"); for(Map.Entry<String,Object> entry: inputsObj.entrySet()){ + LinkedHashMap<String, Object> modified = retainQuotesForDefault(entry.getValue()); + entry.setValue(modified); if(entry.getKey().matches(locationPort+".*url")) { Map<String,String> inputValue = (Map<String, String>) entry.getValue(); inputValue.put("default",topicUrl + "/" + dmaapEntityName); } } - node.getBlueprintData().setBlueprint_content(yaml.dump(obj)); + node.getBlueprintData().setBlueprint_content(Fixes.applyFixes(yaml.dump(obj))); + } + + private LinkedHashMap<String, Object> retainQuotesForDefault(Object valueOfInputObject) { + LinkedHashMap<String, Object> temp = (LinkedHashMap<String, Object>) valueOfInputObject; + if(temp.containsKey("type") && temp.get("type").equals("string")) { + String def = (String) temp.get("default"); + if(def != null){ + def = def.replaceAll("\"$", "").replaceAll("^\"", ""); + } + def = '"' + def + '"'; + temp.replace("default", def); + } + return temp; } private Yaml getYamlInstance() { diff --git a/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestFlowGraphParser.java b/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestFlowGraphParser.java index 8412133..25e3e54 100644 --- a/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestFlowGraphParser.java +++ b/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestFlowGraphParser.java @@ -26,7 +26,7 @@ import org.junit.Rule; import org.junit.rules.TemporaryFolder; import org.junit.Test; import static org.junit.Assert.assertEquals; -import org.onap.dcae.runtime.core.blueprint_creator.BlueprintCreatorOnapDublin; +import org.onap.dcae.runtime.core.blueprint_creator.BlueprintCreatorOnap; public class TestFlowGraphParser { @@ -47,7 +47,7 @@ public class TestFlowGraphParser { } FlowGraph<Node, Edge> mainFlowGraph = new FlowGraph<>("1234", "nifi-main", true, "mock graph"); mainFlowGraph.addNode(new Node("dummy_id", "dummy_name", "dummy_compspec")); - BlueprintCreatorOnapDublin bcod = new BlueprintCreatorOnapDublin(); + BlueprintCreatorOnap bcod = new BlueprintCreatorOnap(); bcod.setTopicUrl("u.r.l"); bcod.setImportFilePath(importsfile.getAbsolutePath()); FlowGraphParser flowGraphParser = new FlowGraphParser(bcod); diff --git a/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestIntegeration.java b/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestIntegeration.java index 612f9f0..615993a 100644 --- a/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestIntegeration.java +++ b/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestIntegeration.java @@ -21,7 +21,7 @@ import org.onap.dcae.runtime.core.blueprint_creator.BlueprintCreator; import org.junit.Before; import org.junit.Ignore; import org.junit.Test; -import org.onap.dcae.runtime.core.blueprint_creator.BlueprintCreatorOnapDublin; +import org.onap.dcae.runtime.core.blueprint_creator.BlueprintCreatorOnap; public class TestIntegeration { @@ -33,7 +33,7 @@ public class TestIntegeration { FlowGraph<Node, Edge> flowGraph = Helper.prepareFlowGraph(); //2. Inject graph in FlowGraphParser - BlueprintCreator blueprintCreator = new BlueprintCreatorOnapDublin(); + BlueprintCreator blueprintCreator = new BlueprintCreatorOnap(); flowGraphParser = new FlowGraphParser(blueprintCreator); flowGraphParser.parse(flowGraph); } diff --git a/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestOnapBpGen.java b/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestOnapBpGen.java index f717022..60ba323 100644 --- a/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestOnapBpGen.java +++ b/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestOnapBpGen.java @@ -29,7 +29,7 @@ public class TestOnapBpGen { componentSpec.createComponentSpecFromString(Helper.loadFileContent( "src/test/data/compspecs/componentSpec_hello_world_only_MR.json")); - Blueprint bp = new Blueprint().createBlueprint(componentSpec,"",'d',""); + Blueprint bp = new Blueprint().createBlueprint(componentSpec,"",'d',"",""); System.out.println(bp.getInputs()); } } diff --git a/mod/runtimeapi/runtime-web/data/imports/onapDublinImports.yaml b/mod/runtimeapi/runtime-web/data/imports/onapDublinImports.yaml deleted file mode 100644 index 9b9a203..0000000 --- a/mod/runtimeapi/runtime-web/data/imports/onapDublinImports.yaml +++ /dev/null @@ -1,2 +0,0 @@ -imports: ['http://www.getcloudify.org/spec/cloudify/3.4/types.yaml', 'https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R4/k8splugin/1.4.5/k8splugin_types.yaml', - 'https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R4/dcaepolicyplugin/2.3.0/dcaepolicyplugin_types.yaml'] diff --git a/mod/runtimeapi/runtime-web/data/imports/onapImports.yaml b/mod/runtimeapi/runtime-web/data/imports/onapImports.yaml new file mode 100644 index 0000000..b164a8d --- /dev/null +++ b/mod/runtimeapi/runtime-web/data/imports/onapImports.yaml @@ -0,0 +1,5 @@ +imports: ['https://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml', 'https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R6/k8splugin/1.7.2/k8splugin_types.yaml', + 'https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R6/dcaepolicyplugin/2.4.0/dcaepolicyplugin_types.yaml', + 'https://nexus.onap.org/service/local/repositories/raw/content/org.onap.ccsdk.platform.plugins/type_files/pgaas/1.1.0/pgaas_types.yaml', + 'https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R6/clamppolicyplugin/1.1.0/clamppolicyplugin_types.yaml', + 'https://nexus.onap.org/content/repositories/raw/org.onap.ccsdk.platform.plugins/type_files/dmaap/dmaap.yaml'] diff --git a/mod/runtimeapi/runtime-web/pom.xml b/mod/runtimeapi/runtime-web/pom.xml index 413ff9f..ff08ac1 100644 --- a/mod/runtimeapi/runtime-web/pom.xml +++ b/mod/runtimeapi/runtime-web/pom.xml @@ -22,10 +22,10 @@ limitations under the License. <parent> <groupId>org.onap.dcaegen2.platform.mod</groupId> <artifactId>runtimeapi</artifactId> - <version>1.0.0</version> + <version>1.0.1</version> </parent> <artifactId>runtime-web</artifactId> - <version>1.0.0</version> + <version>1.0.1</version> <packaging>jar</packaging> <name>runtime-web</name> <description>MOD Runtime Web Module</description> @@ -33,7 +33,7 @@ limitations under the License. <dependency> <groupId>org.onap.dcaegen2.platform.mod</groupId> <artifactId>runtime-core</artifactId> - <version>1.0.0</version> + <version>1.0.1</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> diff --git a/mod/runtimeapi/runtime-web/src/main/java/org/onap/dcae/runtime/web/configuration/BlueprintCreatorConfig.java b/mod/runtimeapi/runtime-web/src/main/java/org/onap/dcae/runtime/web/configuration/BlueprintCreatorConfig.java index 8c535c7..11622e6 100644 --- a/mod/runtimeapi/runtime-web/src/main/java/org/onap/dcae/runtime/web/configuration/BlueprintCreatorConfig.java +++ b/mod/runtimeapi/runtime-web/src/main/java/org/onap/dcae/runtime/web/configuration/BlueprintCreatorConfig.java @@ -18,7 +18,7 @@ package org.onap.dcae.runtime.web.configuration; import org.onap.dcae.runtime.core.FlowGraphParser; -import org.onap.dcae.runtime.core.blueprint_creator.BlueprintCreatorOnapDublin; +import org.onap.dcae.runtime.core.blueprint_creator.BlueprintCreatorOnap; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; @@ -43,28 +43,36 @@ public class BlueprintCreatorConfig { @Autowired Environment env; - - @Value("${onapDublin.topicUrl}") + + @Value("${onap.topicUrl}") String onapDublinTopicUrl; - @Value("${onapDublin.import.cloudifyPlugin}") + @Value("${onap.import.cloudifyPlugin}") String onapDublinImportCloudifyPlugin; - @Value("${onapDublin.import.k8sPlugin}") + @Value("${onap.import.k8sPlugin}") String onapDublinImportK8sPlugin; - @Value("${onapDublin.import.policyPlugin}") + @Value("${onap.import.policyPlugin}") String onapDublinImportPolicyPlugin; - - @Profile("onap_dublin") + @Value("${onap.import.postgresPlugin}") + String onapDublinImportPostgresPlugin; + + @Value("${onap.import.clampPlugin}") + String onapDublinImportClampPlugin; + + @Value("${onap.import.dmaapPlugin}") + String onapDublinImportDmaapPlugin; + + + @Profile("onap") @Primary @Bean public FlowGraphParser getFlowGraphParserForOnapDublin(){ - BlueprintCreatorOnapDublin blueprintCreatorOnapDublin = new BlueprintCreatorOnapDublin(); - blueprintCreatorOnapDublin.setTopicUrl(onapDublinTopicUrl); - blueprintCreatorOnapDublin.setImportFilePath(writeImportsTofile()); - FlowGraphParser flowGraphParser = new FlowGraphParser(blueprintCreatorOnapDublin); + BlueprintCreatorOnap blueprintCreatorOnap = new BlueprintCreatorOnap(); + blueprintCreatorOnap.setImportFilePath(writeImportsTofile()); + FlowGraphParser flowGraphParser = new FlowGraphParser(blueprintCreatorOnap); return flowGraphParser; } @@ -84,17 +92,17 @@ public class BlueprintCreatorConfig { private Path createDataImportDirAndImportFile() { Path importDirPath = Paths.get("./data/imports").toAbsolutePath().normalize(); - Path onapDublinImportFilePath = Paths.get("./data/imports/onapDublinImports.yaml").toAbsolutePath().normalize(); + Path onapImportFilePath = Paths.get("./data/imports/onapImports.yaml").toAbsolutePath().normalize(); try { Files.createDirectories(importDirPath); - Files.createFile(onapDublinImportFilePath); + Files.createFile(onapImportFilePath); } catch (FileAlreadyExistsException ignored){ } catch (IOException e) { e.printStackTrace(); } - return onapDublinImportFilePath; + return onapImportFilePath; } private String getContentToWrite() { @@ -103,6 +111,13 @@ public class BlueprintCreatorConfig { importList.add(onapDublinImportCloudifyPlugin); importList.add(onapDublinImportK8sPlugin); importList.add(onapDublinImportPolicyPlugin); + + importList.add(onapDublinImportPostgresPlugin); + importList.add(onapDublinImportClampPlugin); + importList.add(onapDublinImportDmaapPlugin); + + + result.put("imports",importList); return new Yaml().dump(result); } diff --git a/mod/runtimeapi/runtime-web/src/main/resources/application.properties b/mod/runtimeapi/runtime-web/src/main/resources/application.properties index 0cd7e03..dccce98 100644 --- a/mod/runtimeapi/runtime-web/src/main/resources/application.properties +++ b/mod/runtimeapi/runtime-web/src/main/resources/application.properties @@ -1,17 +1,24 @@ server.port=9090 #BlueprintGenerator profile -spring.profiles.active=onap_dublin +spring.profiles.active=onap #Dashboard/Inventory configs -dashboard.url=https://oom-dashboard/ccsdk-app/api-if +dashboard.url=https://dashboard/ccsdk-app/nb-api dashboard.username= dashboard.password= #Onap Dublin BlueprintGenerator configs -onapDublin.topicUrl=https://url:9999 +onap.topicUrl=https://url:9999 -onapDublin.import.cloudifyPlugin=http://www.getcloudify.org/spec/cloudify/3.4/types.yaml -onapDublin.import.k8sPlugin=https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R4/k8splugin/1.4.5/k8splugin_types.yaml -onapDublin.import.policyPlugin=https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R4/dcaepolicyplugin/2.3.0/dcaepolicyplugin_types.yaml +onap.import.cloudifyPlugin=https://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml +onap.import.k8sPlugin=https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R6/k8splugin/1.7.2/k8splugin_types.yaml + +onap.import.policyPlugin=https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R6/dcaepolicyplugin/2.4.0/dcaepolicyplugin_types.yaml + +onap.import.postgresPlugin=https://nexus.onap.org/service/local/repositories/raw/content/org.onap.ccsdk.platform.plugins/type_files/pgaas/1.1.0/pgaas_types.yaml + +onap.import.clampPlugin=https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R6/clamppolicyplugin/1.1.0/clamppolicyplugin_types.yaml + +onap.import.dmaapPlugin= https://nexus.onap.org/content/repositories/raw/org.onap.ccsdk.platform.plugins/type_files/dmaap/dmaap.yaml
\ No newline at end of file diff --git a/mod/runtimeapi/runtime-web/src/main/resources/imports/OnapDublinImports.yaml b/mod/runtimeapi/runtime-web/src/main/resources/imports/OnapImports.yaml index dc7c45c..dc7c45c 100644 --- a/mod/runtimeapi/runtime-web/src/main/resources/imports/OnapDublinImports.yaml +++ b/mod/runtimeapi/runtime-web/src/main/resources/imports/OnapImports.yaml |