Merge "Add platform DGs to distribution"
diff --git a/opendaylight/pom.xml b/opendaylight/pom.xml
index c35546d..9de65fd 100644
--- a/opendaylight/pom.xml
+++ b/opendaylight/pom.xml
@@ -5,13 +5,13 @@
<parent>
<groupId>org.onap.ccsdk.distribution</groupId>
<artifactId>distribution-root</artifactId>
- <version>0.0.1-SNAPSHOT</version>
+ <version>0.1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<packaging>pom</packaging>
<artifactId>distribution-opendaylight</artifactId>
- <version>0.0.1-SNAPSHOT</version>
+ <version>0.1.0-SNAPSHOT</version>
<name>Distribution - opendaylight</name>
<description>Creates OpenDaylight container</description>
diff --git a/platform-logic/.gitignore b/platform-logic/.gitignore
new file mode 100644
index 0000000..1b8a6ba
--- /dev/null
+++ b/platform-logic/.gitignore
@@ -0,0 +1,12 @@
+org.eclipse.core.resources.prefs
+.classpath
+.project
+.settings
+.idea
+.externalToolBuilders
+maven-eclipse.xml
+*.class
+target/
+MANIFEST.MF
+.DS_STORE
+.metadata
diff --git a/platform-logic/asdc-api/pom.xml b/platform-logic/asdc-api/pom.xml
new file mode 100644
index 0000000..9457d34
--- /dev/null
+++ b/platform-logic/asdc-api/pom.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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/maven-v4_0_0.xsd">
+
+ <parent>
+ <groupId>org.onap.ccsdk.distribution</groupId>
+ <artifactId>distribution-platform-logic</artifactId>
+ <version>0.1.0-SNAPSHOT</version>
+ </parent>
+
+ <modelVersion>4.0.0</modelVersion>
+ <packaging>pom</packaging>
+ <artifactId>platform-logic-asdcapi</artifactId>
+ <version>0.1.0-SNAPSHOT</version>
+
+ <name>Platform Logic : ASDC-API</name>
+ <description>Contains platform-level service logic for the ASDC-API</description>
+
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-resources-plugin</artifactId>
+ <version>2.6</version>
+ <executions>
+ <execution>
+ <id>copy-version</id>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals><!-- here the phase you need -->
+ <phase>validate</phase>
+ <configuration>
+ <outputDirectory>../target/graphs/asdcapi</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/xml</directory>
+ <includes>
+ <include>*.xml</include>
+ </includes>
+ <filtering>true</filtering>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ <includes>
+ <include>graph.versions</include>
+ </includes>
+ <filtering>true</filtering>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
diff --git a/platform-logic/asdc-api/src/main/json/ASDC-API_vf-license-model-update.json b/platform-logic/asdc-api/src/main/json/ASDC-API_vf-license-model-update.json
new file mode 100644
index 0000000..de6d6a0
--- /dev/null
+++ b/platform-logic/asdc-api/src/main/json/ASDC-API_vf-license-model-update.json
@@ -0,0 +1,346 @@
+
+
+
+[
+ {
+ "id": "c7f3b902.c0fcc8",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 148,
+ "y": 123,
+ "z": "b94f5cde.40937",
+ "wires": [
+ [
+ "72236e27.a51f78"
+ ]
+ ]
+ },
+ {
+ "id": "612aaed1.f30978",
+ "type": "comment",
+ "name": "ASDC update to VF license model",
+ "info": "",
+ "comments": "",
+ "x": 550,
+ "y": 45,
+ "z": "b94f5cde.40937",
+ "wires": []
+ },
+ {
+ "id": "72236e27.a51f78",
+ "type": "service-logic",
+ "name": "ASDC-API 1.0.0",
+ "module": "ASDC-API",
+ "version": "${project.version}",
+ "comments": "",
+ "xml": "<service-logic xmlns='http://www.att.com/sdnctl/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.att.com/sdnctl/svclogic ./svclogic.xsd' module='ASDC-API' version='${project.version}'>",
+ "outputs": 1,
+ "x": 340,
+ "y": 124,
+ "z": "b94f5cde.40937",
+ "wires": [
+ [
+ "e6c56f71.e6a96"
+ ]
+ ]
+ },
+ {
+ "id": "e6c56f71.e6a96",
+ "type": "method",
+ "name": "method vf-license-model-update",
+ "xml": "<method rpc='vf-license-model-update' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 588,
+ "y": 124,
+ "z": "b94f5cde.40937",
+ "wires": [
+ [
+ "90b82ce5.7ff2a"
+ ]
+ ]
+ },
+ {
+ "id": "90b82ce5.7ff2a",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 222,
+ "y": 230,
+ "z": "b94f5cde.40937",
+ "wires": [
+ [
+ "6a527c25.be62c4",
+ "b37c86cb.130b8",
+ "1c4b640e.56b174"
+ ]
+ ]
+ },
+ {
+ "id": "6a527c25.be62c4",
+ "type": "GenericXML",
+ "name": "record",
+ "xml": "<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder\">\n<parameter name=\"file\" value=\"/opt/opendaylight/current/data/log/svclogic.log\"/>\n<parameter name=\"field1\" value=\"__TIMESTAMP__\"/>\n<parameter name=\"field2\" value=\"vf-license-model\"/>",
+ "comments": "",
+ "outputs": 1,
+ "x": 374,
+ "y": 230,
+ "z": "b94f5cde.40937",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "b37c86cb.130b8",
+ "type": "set",
+ "name": "set resource-plugin",
+ "xml": "<set>\n<parameter name='resource-plugin' value='com.att.sdnctl.sli.resource.gamma.GammaResource' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 410,
+ "y": 281,
+ "z": "b94f5cde.40937",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "1c4b640e.56b174",
+ "type": "switchNode",
+ "name": "switch: length of feature-group list > 0",
+ "xml": "<switch test='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group_length > 0`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 459,
+ "y": 344,
+ "z": "b94f5cde.40937",
+ "wires": [
+ [
+ "1b40f4f1.7134f3"
+ ]
+ ]
+ },
+ {
+ "id": "1b40f4f1.7134f3",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 695,
+ "y": 343,
+ "z": "b94f5cde.40937",
+ "wires": [
+ [
+ "9b76ec90.614c08"
+ ]
+ ]
+ },
+ {
+ "id": "9b76ec90.614c08",
+ "type": "for",
+ "name": "for: feature groups",
+ "xml": "<for index='i' start='0' end='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 855,
+ "y": 343,
+ "z": "b94f5cde.40937",
+ "wires": [
+ [
+ "3dbfa83c.5d206"
+ ]
+ ]
+ },
+ {
+ "id": "44241b8a.fe4ddc",
+ "type": "save",
+ "name": "save VNF_MODEL_LICENSES",
+ "xml": "<save plugin='`$resource-plugin`' resource='vnf-model-licenses' key='att-part-number = $vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].att-part-number and license-assignment-group = $tmp-license-group' force='true'>\n<parameter name='att-part-number' value='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].att-part-number`' />\n<parameter name='license-assignment-group' value='`$tmp-license-group`'/>\n<parameter name='license-required' value='`$tmp-license-required`'/>\n<parameter name='entitlement-assignment-group' value='`$tmp-entitlement-group`'/>\n<parameter name='entitlement-required' value='`$tmp-entitlement-required`'/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1254,
+ "y": 544,
+ "z": "b94f5cde.40937",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "90633ed7.848e18",
+ "type": "switchNode",
+ "name": "switch: length of license key groups == 0",
+ "xml": "<switch test='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].license-key-group-list.license-key-group_length == 0`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1275,
+ "y": 294,
+ "z": "b94f5cde.40937",
+ "wires": [
+ [
+ "a36e3c96.3c6238",
+ "fb2fe0dd.5e4d38"
+ ]
+ ]
+ },
+ {
+ "id": "a36e3c96.3c6238",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1523,
+ "y": 293,
+ "z": "b94f5cde.40937",
+ "wires": [
+ [
+ "fc3c75a8.272ad"
+ ]
+ ]
+ },
+ {
+ "id": "fc3c75a8.272ad",
+ "type": "set",
+ "name": "set license required to 0",
+ "xml": "<set>\n<parameter name='tmp-license-required' value='0' />\n<parameter name='tmp-license-group' value='NONE' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1737,
+ "y": 293,
+ "z": "b94f5cde.40937",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "fb2fe0dd.5e4d38",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1521,
+ "y": 346,
+ "z": "b94f5cde.40937",
+ "wires": [
+ [
+ "2d606ecc.b12bba"
+ ]
+ ]
+ },
+ {
+ "id": "2d606ecc.b12bba",
+ "type": "set",
+ "name": "set license required to 1",
+ "xml": "<set>\n<parameter name='tmp-license-required' value='1' />\n<parameter name='tmp-license-group' value='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].license-key-group-list.license-key-group[0].license-key-group-uuid`' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1732,
+ "y": 348,
+ "z": "b94f5cde.40937",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "64fd0671.15f188",
+ "type": "switchNode",
+ "name": "switch: length of entitlement pool == 0",
+ "xml": "<switch test='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].entitlement-pool-list.entitlement-pool_length == 0`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1277,
+ "y": 405,
+ "z": "b94f5cde.40937",
+ "wires": [
+ [
+ "7ebbe15a.bb3988",
+ "9213bc2a.81103"
+ ]
+ ]
+ },
+ {
+ "id": "7ebbe15a.bb3988",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1525,
+ "y": 404,
+ "z": "b94f5cde.40937",
+ "wires": [
+ [
+ "eb5a3c7b.4c3dc"
+ ]
+ ]
+ },
+ {
+ "id": "eb5a3c7b.4c3dc",
+ "type": "set",
+ "name": "set entitlement required to 0",
+ "xml": "<set>\n<parameter name='tmp-entitlement-required' value='0' />\n<parameter name='tmp-entitlement-group' value='NONE' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1739,
+ "y": 404,
+ "z": "b94f5cde.40937",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "9213bc2a.81103",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1523,
+ "y": 457,
+ "z": "b94f5cde.40937",
+ "wires": [
+ [
+ "b64ce482.a1f508"
+ ]
+ ]
+ },
+ {
+ "id": "b64ce482.a1f508",
+ "type": "set",
+ "name": "set entitlement required to 1",
+ "xml": "<set>\n<parameter name='tmp-entitlement-required' value='1' />\n<parameter name='tmp-entitlement-group' value='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].entitlement-pool-list.entitlement-pool[0].entitlement-pool-uuid`' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1734,
+ "y": 459,
+ "z": "b94f5cde.40937",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "3dbfa83c.5d206",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1022,
+ "y": 344,
+ "z": "b94f5cde.40937",
+ "wires": [
+ [
+ "90633ed7.848e18",
+ "64fd0671.15f188",
+ "44241b8a.fe4ddc"
+ ]
+ ]
+ }
+]
diff --git a/platform-logic/asdc-api/src/main/resources/graph.versions b/platform-logic/asdc-api/src/main/resources/graph.versions
new file mode 100644
index 0000000..4327161
--- /dev/null
+++ b/platform-logic/asdc-api/src/main/resources/graph.versions
@@ -0,0 +1 @@
+ASDC-API vf-license-model-update ${project.version} sync
diff --git a/platform-logic/asdc-api/src/main/xml/ASDC-API_vf-license-model-update.xml b/platform-logic/asdc-api/src/main/xml/ASDC-API_vf-license-model-update.xml
new file mode 100644
index 0000000..c6d079c
--- /dev/null
+++ b/platform-logic/asdc-api/src/main/xml/ASDC-API_vf-license-model-update.xml
@@ -0,0 +1,78 @@
+<!--
+ ============LICENSE_START=======================================================
+ openECOMP : SDN-C
+ ================================================================================
+ Copyright (C) 2017 AT&T Intellectual Property. All rights
+ reserved.
+ ================================================================================
+ 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.
+ ============LICENSE_END=========================================================
+ -->
+
+<service-logic xmlns="http://www.onap.org/sdnc/svclogic"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.onap.org/sdnc/svclogic ./svclogic.xsd" module='ASDC-API' version='${project.version}'>
+ <method rpc='vf-license-model-update' mode='sync'>
+ <block>
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
+ <parameter name="file" value="/opt/opendaylight/current/data/log/svclogic.log"/>
+ <parameter name="field1" value="__TIMESTAMP__"/>
+ <parameter name="field2" value="vf-license-model"/>
+ </record>
+ <set>
+ <parameter name='resource-plugin' value='org.onap.ccsdk.sli.adaptors.gamma.GammaResource' />
+ </set>
+ <switch test='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group_length > 0`'>
+ <outcome value='true'>
+ <for index='i' start='0' end='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group_length`' >
+ <block>
+ <switch test='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].license-key-group-list.license-key-group_length == 0`'>
+ <outcome value='true'>
+ <set>
+ <parameter name='tmp-license-required' value='0' />
+ <parameter name='tmp-license-group' value='NONE' />
+ </set>
+ </outcome>
+ <outcome value='false'>
+ <set>
+ <parameter name='tmp-license-required' value='1' />
+ <parameter name='tmp-license-group' value='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].license-key-group-list.license-key-group[0].license-key-group-uuid`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].entitlement-pool-list.entitlement-pool_length == 0`'>
+ <outcome value='true'>
+ <set>
+ <parameter name='tmp-entitlement-required' value='0' />
+ <parameter name='tmp-entitlement-group' value='NONE' />
+ </set>
+ </outcome>
+ <outcome value='false'>
+ <set>
+ <parameter name='tmp-entitlement-required' value='1' />
+ <parameter name='tmp-entitlement-group' value='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].entitlement-pool-list.entitlement-pool[0].entitlement-pool-uuid`' />
+ </set>
+ </outcome>
+ </switch>
+ <save plugin='`$resource-plugin`' resource='vnf-model-licenses' key='att-part-number = $vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].att-part-number and license-assignment-group = $tmp-license-group' force='true'>
+ <parameter name='att-part-number' value='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].att-part-number`' />
+ <parameter name='license-assignment-group' value='`$tmp-license-group`'/>
+ <parameter name='license-required' value='`$tmp-license-required`'/>
+ <parameter name='entitlement-assignment-group' value='`$tmp-entitlement-group`'/>
+ <parameter name='entitlement-required' value='`$tmp-entitlement-required`'/>
+ </save>
+ </block>
+ </for>
+ </outcome>
+ </switch>
+ </block>
+ </method>
+</service-logic>
diff --git a/platform-logic/installer/pom.xml b/platform-logic/installer/pom.xml
new file mode 100644
index 0000000..f6b8578
--- /dev/null
+++ b/platform-logic/installer/pom.xml
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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/maven-v4_0_0.xsd">
+
+ <parent>
+ <groupId>org.onap.ccsdk.distribution</groupId>
+ <artifactId>distribution-platform-logic</artifactId>
+ <version>0.1.0-SNAPSHOT</version>
+ </parent>
+
+ <modelVersion>4.0.0</modelVersion>
+ <packaging>pom</packaging>
+ <artifactId>platform-logic-installer</artifactId>
+ <version>0.1.0-SNAPSHOT</version>
+
+ <name>Platform Logic Installer</name>
+ <description>Contains platform-level service logic installer</description>
+
+
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-resources-plugin</artifactId>
+ <version>2.6</version>
+ <executions>
+ <execution>
+ <id>copy-version</id>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals><!-- here the phase you need -->
+ <phase>validate</phase>
+ <configuration>
+ <outputDirectory>target/resources</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <includes>
+ <include>*</include>
+ </includes>
+ <filtering>true</filtering>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <version>2.6</version>
+ <executions>
+ <execution>
+ <id>create-zip</id>
+ <goals>
+ <goal>single</goal>
+ </goals>
+ <phase>package</phase>
+ <configuration>
+ <attach>true</attach>
+ <descriptors>
+ <descriptor>src/assembly/assemble_zip.xml</descriptor>
+ </descriptors>
+ <appendAssemblyId>false</appendAssemblyId>
+ </configuration>
+ </execution>
+
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>copy-dependencies</id>
+ <goals>
+ <goal>copy-dependencies</goal>
+ </goals>
+ <phase>prepare-package</phase>
+ <configuration>
+ <transitive>false</transitive>
+ <outputDirectory>${project.build.directory}/lib</outputDirectory>
+ <overWriteReleases>false</overWriteReleases>
+ <overWriteSnapshots>true</overWriteSnapshots>
+ <overWriteIfNewer>true</overWriteIfNewer>
+ <useRepositoryLayout>false</useRepositoryLayout>
+ <addParentPoms>false</addParentPoms>
+ <copyPom>false</copyPom>
+ <scope>provided</scope>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+
+ </build>
+ <dependencies>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ <version>${slf4j.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-simple</artifactId>
+ <version>1.7.5</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.onap.ccsdk.sli.core</groupId>
+ <artifactId>sli-common</artifactId>
+ <version>${sdnctl.sli.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.antlr</groupId>
+ <artifactId>antlr4</artifactId>
+ <version>${antlr.version}</version>
+ <type>jar</type>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>mysql</groupId>
+ <artifactId>mysql-connector-java</artifactId>
+ <version>${mysql.connector.version}</version>
+ <type>jar</type>
+ <scope>compile</scope>
+ </dependency>
+ </dependencies>
+
+</project>
diff --git a/platform-logic/installer/src/assembly/assemble_zip.xml b/platform-logic/installer/src/assembly/assemble_zip.xml
new file mode 100644
index 0000000..46a8b61
--- /dev/null
+++ b/platform-logic/installer/src/assembly/assemble_zip.xml
@@ -0,0 +1,71 @@
+<!--
+ ============LICENSE_START=======================================================
+ openECOMP : SDN-C
+ ================================================================================
+ Copyright (C) 2017 AT&T Intellectual Property. All rights
+ reserved.
+ ================================================================================
+ 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.
+ ============LICENSE_END=========================================================
+ -->
+
+<!-- Defines how we build the .zip file which is our distribution. -->
+
+<assembly
+ xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
+ <id>bin</id>
+ <formats>
+ <format>zip</format>
+ </formats>
+
+ <includeBaseDirectory>false</includeBaseDirectory>
+
+ <fileSets>
+ <fileSet>
+ <directory>../target/graphs</directory>
+ <outputDirectory>svclogic/graphs</outputDirectory>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/graph.versions</include>
+ </includes>
+ </fileSet>
+
+ <fileSet>
+ <directory>src/main/scripts</directory>
+ <outputDirectory>svclogic/bin</outputDirectory>
+ <includes>
+ <include>*.sh</include>
+ </includes>
+ <fileMode>0755</fileMode>
+ </fileSet>
+ <fileSet>
+ <directory>target/resources</directory>
+ <outputDirectory>svclogic/config</outputDirectory>
+ <includes>
+ <include>*</include>
+ </includes>
+ </fileSet>
+ <fileSet>
+ <directory>target/lib</directory>
+ <outputDirectory>svclogic/lib</outputDirectory>
+ <includes>
+ <include>*.jar</include>
+ </includes>
+ </fileSet>
+ </fileSets>
+
+
+
+</assembly>
diff --git a/platform-logic/installer/src/main/resources/svclogic.properties b/platform-logic/installer/src/main/resources/svclogic.properties
new file mode 100644
index 0000000..9ffc298
--- /dev/null
+++ b/platform-logic/installer/src/main/resources/svclogic.properties
@@ -0,0 +1,26 @@
+###
+# ============LICENSE_START=======================================================
+# openECOMP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights
+# reserved.
+# ================================================================================
+# 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.
+# ============LICENSE_END=========================================================
+###
+
+org.onap.ccsdk.sli.dbtype = jdbc
+org.onap.ccsdk.sli.jdbc.url = jdbc:mysql://sdnctldb01:3306/sdnctl
+org.onap.ccsdk.sli.jdbc.database = sdnctl
+org.onap.ccsdk.sli.jdbc.user = sdnctl
+org.onap.ccsdk.sli.jdbc.password = gamma
diff --git a/platform-logic/installer/src/main/scripts/install.sh b/platform-logic/installer/src/main/scripts/install.sh
new file mode 100644
index 0000000..2c32e93
--- /dev/null
+++ b/platform-logic/installer/src/main/scripts/install.sh
@@ -0,0 +1,54 @@
+#!/bin/bash
+
+###
+# ============LICENSE_START=======================================================
+# openECOMP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights
+# reserved.
+# ================================================================================
+# 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.
+# ============LICENSE_END=========================================================
+###
+
+BASEDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )/.." && pwd )"
+
+
+# Load directed graphs
+
+
+for graphlist in $(find $BASEDIR/graphs -name graph.versions -print)
+do
+ curdir=$(dirname $graphlist)
+
+ # Load files from directory containing graph.versions file
+ echo "Loading graphs from $curdir"
+ for file in $(ls $curdir/*.xml)
+ do
+ echo "Loading $file ..."
+ $BASEDIR/bin/svclogic.sh load $file $BASEDIR/config/svclogic.properties
+ done
+
+ # Activate directed graphs
+ while read module rpc version mode
+ do
+ echo "Activating $module $rpc $version $mode"
+ $BASEDIR/bin/svclogic.sh activate $module $rpc $version $mode $BASEDIR/config/svclogic.properties
+ done < $graphlist
+done
+
+
+
+
+
+
diff --git a/platform-logic/installer/src/main/scripts/setenv.sh b/platform-logic/installer/src/main/scripts/setenv.sh
new file mode 100644
index 0000000..c5e520f
--- /dev/null
+++ b/platform-logic/installer/src/main/scripts/setenv.sh
@@ -0,0 +1,45 @@
+#!/bin/bash
+
+###
+# ============LICENSE_START=======================================================
+# openECOMP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights
+# reserved.
+# ================================================================================
+# 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.
+# ============LICENSE_END=========================================================
+###
+
+SDNC_CONFIG_DIR=${SDNC_CONFIG_DIR:-/opt/sdnc/data/properties}
+
+AAIURI=$(grep org.onap.ccsdk.sli.aai.uri ${SDNC_CONFIG_DIR}/aaiclient.properties | grep -v '#' | cut -d'=' -f2)
+
+MYSQL_USER=$(grep org.onap.ccsdk.sli.jdbc.user ${SDNC_CONFIG_DIR}/dblib.properties | grep -v '#' | cut -d'=' -f2)
+MYSQL_PWD=$(grep org.onap.ccsdk.sli.jdbc.password ${SDNC_CONFIG_DIR}/dblib.properties | grep -v '#' | cut -d'=' -f2)
+MYSQL_DB=$(grep org.onap.ccsdk.sli.jdbc.database ${SDNC_CONFIG_DIR}/dblib.properties | grep -v '#' | cut -d'=' -f2)
+MYSQL_SERVER=$(grep org.onap.ccsdk.sli.jdbc.hosts ${SDNC_CONFIG_DIR}/dblib.properties | grep -v '#' | cut -d'=' -f2 | cut -d',' -f1)
+
+ODLUSER=$(grep controllerUser ${SDNC_CONFIG_DIR}/backup.properties | grep -v '#' | cut -d'=' -f2)
+ODLPWD=$(grep controllerPass ${SDNC_CONFIG_DIR}/backup.properties | grep -v '#' | cut -d'=' -f2)
+
+ODLHOST=$(grep odlNodes ${SDNC_CONFIG_DIR}/backup.properties | grep -v '#' | cut -d'=' -f2|cut -d',' -f1)
+ODLPORT=$(grep controllerPort ${SDNC_CONFIG_DIR}/backup.properties | grep -v '#' | cut -d'=' -f2)
+if [ $ODLPORT = 8443 ]
+then
+ ODLPROTO=https
+else
+ ODLPROTO=http
+fi
+
+unset HTTP_PROXY HTTPS_PROXY http_proxy https_proxy
diff --git a/platform-logic/installer/src/main/scripts/showActiveGraphs.sh b/platform-logic/installer/src/main/scripts/showActiveGraphs.sh
new file mode 100644
index 0000000..9b89e9c
--- /dev/null
+++ b/platform-logic/installer/src/main/scripts/showActiveGraphs.sh
@@ -0,0 +1,29 @@
+###
+# ============LICENSE_START=======================================================
+# openECOMP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights
+# reserved.
+# ================================================================================
+# 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.
+# ============LICENSE_END=========================================================
+###
+
+MYSQL_USER=${MYSQL_USER:-sdnctl}
+MYSQL_PWD=${MYSQL_PWD:-gamma}
+MYSQL_DB=${MYSQL_DB:-sdnctl}
+MYSQL_HOST=${MYSQL_HOST:-dbhost}
+
+mysql --user=${MYSQL_USER} --password=${MYSQL_PWD} --host=${MYSQL_HOST} ${MYSQL_DB} <<-END
+SELECT module, rpc, version, mode from SVC_LOGIC where active='Y';
+END
diff --git a/platform-logic/installer/src/main/scripts/svclogic.sh b/platform-logic/installer/src/main/scripts/svclogic.sh
new file mode 100644
index 0000000..1d6dd2d
--- /dev/null
+++ b/platform-logic/installer/src/main/scripts/svclogic.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+
+###
+# ============LICENSE_START=======================================================
+# openECOMP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights
+# reserved.
+# ================================================================================
+# 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.
+# ============LICENSE_END=========================================================
+###
+
+BASEDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )/.." && pwd )"
+JARDIR=${BASEDIR}/lib
+
+for jar in $JARDIR/*.jar
+do
+ CLASSPATH=$CLASSPATH:${jar}
+done
+
+java -cp ${CLASSPATH}:${MYSQL_JDBC_DRIVER} org.onap.ccsdk.sli.core.sli.SvcLogicParser $*
diff --git a/platform-logic/pom.xml b/platform-logic/pom.xml
new file mode 100644
index 0000000..3ce0b57
--- /dev/null
+++ b/platform-logic/pom.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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/maven-v4_0_0.xsd">
+
+ <parent>
+ <groupId>org.onap.ccsdk.distribution</groupId>
+ <artifactId>distribution-root</artifactId>
+ <version>0.1.0-SNAPSHOT</version>
+ </parent>
+
+ <modelVersion>4.0.0</modelVersion>
+ <packaging>pom</packaging>
+ <artifactId>distribution-platform-logic</artifactId>
+ <version>0.1.0-SNAPSHOT</version>
+
+ <name>Platform Logic </name>
+ <description>Contains platform-level service logic</description>
+
+ <properties>
+ <application.name>platform-logic</application.name>
+
+ <maven.build.timestamp.format>yyMMdd-HHmmss</maven.build.timestamp.format>
+ <build.number>${maven.build.timestamp}</build.number>
+ </properties>
+
+ <modules>
+ <module>asdc-api</module>
+ <module>sliapi</module>
+ <module>installer</module>
+ </modules>
+ <organization>
+ <name>openECOMP</name>
+ </organization>
+</project>
diff --git a/platform-logic/sliapi/pom.xml b/platform-logic/sliapi/pom.xml
new file mode 100644
index 0000000..ef047a8
--- /dev/null
+++ b/platform-logic/sliapi/pom.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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/maven-v4_0_0.xsd">
+
+ <parent>
+ <groupId>org.onap.ccsdk.distribution</groupId>
+ <artifactId>distribution-platform-logic</artifactId>
+ <version>0.1.0-SNAPSHOT</version>
+ </parent>
+
+ <modelVersion>4.0.0</modelVersion>
+ <packaging>pom</packaging>
+ <artifactId>platform-logic-sliapi</artifactId>
+ <version>0.1.0-SNAPSHOT</version>
+
+ <name>Platform Logic : SLI-API</name>
+ <description>Contains platform-level service logic for the SLI-API</description>
+
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-resources-plugin</artifactId>
+ <version>2.6</version>
+ <executions>
+ <execution>
+ <id>copy-version</id>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals><!-- here the phase you need -->
+ <phase>validate</phase>
+ <configuration>
+ <outputDirectory>../target/graphs/sliapi</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/xml</directory>
+ <includes>
+ <include>*.xml</include>
+ </includes>
+ <filtering>true</filtering>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ <includes>
+ <include>graph.versions</include>
+ </includes>
+ <filtering>true</filtering>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
diff --git a/platform-logic/sliapi/src/main/json/sli_healthcheck.json b/platform-logic/sliapi/src/main/json/sli_healthcheck.json
new file mode 100644
index 0000000..e939467
--- /dev/null
+++ b/platform-logic/sliapi/src/main/json/sli_healthcheck.json
@@ -0,0 +1,4 @@
+
+
+
+[{"id":"dbe3f1ee.ed5bb8","type":"dgstart","name":"DGSTART","outputs":1,"x":130,"y":52,"z":"95339741.be0da","wires":[["e5677e2c.75636"]]},{"id":"e5677e2c.75636","type":"service-logic","name":"sli ${project.version}","module":"sli","version":"${project.version}","comments":"","xml":"<service-logic xmlns='http://www.att.com/sdnctl/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.att.com/sdnctl/svclogic ./svclogic.xsd' module='sli' version='${project.version}'>","outputs":1,"x":169,"y":117,"z":"95339741.be0da","wires":[["2abd790.d32b188"]]},{"id":"2abd790.d32b188","type":"method","name":"method healthcheck","xml":"<method rpc='healthcheck' mode='sync'>\n","comments":"","outputs":1,"x":212,"y":184,"z":"95339741.be0da","wires":[["33013f8c.9c1dc8"]]},{"id":"33013f8c.9c1dc8","type":"set","name":"set return message","xml":"<set>\n<parameter name='error-code' value='200' />\n<parameter name='error-message' value='SDN-C is healthy'/>\n<parameter name='ack-final' value='Y'/>\n","comments":"","x":263,"y":264,"z":"95339741.be0da","wires":[]}]
diff --git a/platform-logic/sliapi/src/main/resources/graph.versions b/platform-logic/sliapi/src/main/resources/graph.versions
new file mode 100644
index 0000000..d0cdbdc
--- /dev/null
+++ b/platform-logic/sliapi/src/main/resources/graph.versions
@@ -0,0 +1 @@
+sli healthcheck ${project.version} sync
diff --git a/platform-logic/sliapi/src/main/xml/sli_healthcheck.xml b/platform-logic/sliapi/src/main/xml/sli_healthcheck.xml
new file mode 100644
index 0000000..c176767
--- /dev/null
+++ b/platform-logic/sliapi/src/main/xml/sli_healthcheck.xml
@@ -0,0 +1,27 @@
+<!--
+ ============LICENSE_START=======================================================
+ openECOMP : SDN-C
+ ================================================================================
+ Copyright (C) 2017 AT&T Intellectual Property. All rights
+ reserved.
+ ================================================================================
+ 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.
+ ============LICENSE_END=========================================================
+ -->
+
+<service-logic xmlns="http://www.openecomp.org/sdnc/svclogic"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.openecomp.org/sdnc/svclogic ./svclogic.xsd" module='sli' version='${project.version}'><method rpc='healthcheck' mode='sync'>
+<set>
+<parameter name='error-code' value='200' />
+<parameter name='error-message' value='SDN-C is healthy'/>
+<parameter name='ack-final' value='Y'/>
+</set></method></service-logic>
diff --git a/pom.xml b/pom.xml
index 7ed792e..0b67762 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,32 +1,33 @@
<?xml version="1.0" encoding="UTF-8"?>
<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/maven-v4_0_0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <groupId>org.onap.ccsdk.parent</groupId>
- <artifactId>odlparent-boron-sr3</artifactId>
- <version>0.0.1-SNAPSHOT</version>
- </parent>
+ <parent>
+ <groupId>org.onap.ccsdk.parent</groupId>
+ <artifactId>odlparent-carbon-sr1</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ </parent>
- <modelVersion>4.0.0</modelVersion>
- <packaging>pom</packaging>
- <groupId>org.onap.ccsdk.distribution</groupId>
- <artifactId>distribution-root</artifactId>
- <version>0.0.1-SNAPSHOT</version>
+ <modelVersion>4.0.0</modelVersion>
+ <packaging>pom</packaging>
+ <groupId>org.onap.ccsdk.distribution</groupId>
+ <artifactId>distribution-root</artifactId>
+ <version>0.1.0-SNAPSHOT</version>
- <name>Distribution</name>
- <description>Creates distributuon bundles for CCSDK</description>
+ <name>Distribution</name>
+ <description>Creates distributuon bundles for CCSDK</description>
- <properties>
- <application.name>distribution</application.name>
+ <properties>
+ <application.name>distribution</application.name>
- <maven.build.timestamp.format>yyMMdd-HHmmss</maven.build.timestamp.format>
- <build.number>${maven.build.timestamp}</build.number>
- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
- </properties>
+ <maven.build.timestamp.format>yyMMdd-HHmmss</maven.build.timestamp.format>
+ <build.number>${maven.build.timestamp}</build.number>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+ </properties>
<modules>
+ <module>platform-logic</module>
<module>ubuntu</module>
<module>opendaylight</module>
</modules>
diff --git a/ubuntu/pom.xml b/ubuntu/pom.xml
index 504d673..f74058b 100644
--- a/ubuntu/pom.xml
+++ b/ubuntu/pom.xml
@@ -5,13 +5,13 @@
<parent>
<groupId>org.onap.ccsdk.distribution</groupId>
<artifactId>distribution-root</artifactId>
- <version>0.0.1-SNAPSHOT</version>
+ <version>0.1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<packaging>pom</packaging>
<artifactId>distribution-ubuntu</artifactId>
- <version>0.0.1-SNAPSHOT</version>
+ <version>0.1.0-SNAPSHOT</version>
<name>Distribution - ubuntu</name>
<description>Creates base ubuntu Docker container</description>