Merge "Migrate from mysql to postgres"
authorMurali Mohan Murthy Potham <murali.p@huawei.com>
Mon, 11 Sep 2017 10:11:43 +0000 (10:11 +0000)
committerGerrit Code Review <gerrit@onap.org>
Mon, 11 Sep 2017 10:11:43 +0000 (10:11 +0000)
vnfmarket-be/deployment/docker-postgres/Dockerfile [new file with mode: 0644]
vnfmarket-be/deployment/docker-postgres/marketplace_tables_postgres.sql [new file with mode: 0644]
vnfmarket-be/deployment/docker-postgres/pom.xml [new file with mode: 0644]
vnfmarket-be/deployment/docker/src/main/docker/docker-entrypoint.sh
vnfmarket-be/deployment/docker/src/main/docker/instance-init.sh
vnfmarket-be/deployment/pom.xml

diff --git a/vnfmarket-be/deployment/docker-postgres/Dockerfile b/vnfmarket-be/deployment/docker-postgres/Dockerfile
new file mode 100644 (file)
index 0000000..704d08c
--- /dev/null
@@ -0,0 +1,13 @@
+#
+# This file was auto-generated by gen-all-dockerfiles.sh; do not modify manually.
+#
+# vnf-sdk-marketplace/target/Dockerfile
+#
+
+# 10-basebuild.txt
+
+FROM postgres:9.4
+ENV POSTGRES_USER postgres
+ENV POSTGRES_PASSWORD postgres
+ADD marketplace_tables_postgres.sql  /docker-entrypoint-initdb.d
+
diff --git a/vnfmarket-be/deployment/docker-postgres/marketplace_tables_postgres.sql b/vnfmarket-be/deployment/docker-postgres/marketplace_tables_postgres.sql
new file mode 100644 (file)
index 0000000..edd6681
--- /dev/null
@@ -0,0 +1,24 @@
+CREATE DATABASE "marketplaceDB";
+
+\c marketplaceDB;
+
+DROP TABLE IF EXISTS CSAR_PACKAGE_TABLE;
+
+CREATE TABLE CSAR_PACKAGE_TABLE (
+       CSARID                   VARCHAR(200)       NOT NULL,
+       DOWNLOADURI              VARCHAR(200)       NULL,
+       REPORT                       VARCHAR(200)       NULL,
+       SIZE                     VARCHAR(100)       NULL,
+       FORMAT                   VARCHAR(100)       NULL,
+       CREATETIME               VARCHAR(100)       NULL,
+       DELETIONPENDING          VARCHAR(100)       NULL,
+       MODIFYTIME               VARCHAR(100)       NULL,
+       SHORTDESC                    TEXT                       NULL,
+       NAME                     VARCHAR(100)       NULL,
+       VERSION                  VARCHAR(20)        NULL,
+       PROVIDER                 VARCHAR(300)       NULL,
+       TYPE                     VARCHAR(300)       NULL,
+       DETAILS                      TEXT                           NULL,
+       REMARKS                      TEXT                           NULL,
+       DOWNLOADCOUNT            INT                NULL
+);
diff --git a/vnfmarket-be/deployment/docker-postgres/pom.xml b/vnfmarket-be/deployment/docker-postgres/pom.xml
new file mode 100644 (file)
index 0000000..953ef8c
--- /dev/null
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+    Copyright 2017 Huawei Technologies Co., Ltd.
+
+    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.
+ -->
+<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>
+
+    <parent>
+        <groupId>org.onap.vnfsdk.refrepo</groupId>
+        <artifactId>vnf-sdk-marketplace-core-parent</artifactId>
+        <version>1.0.0-SNAPSHOT</version>
+        <relativePath>../../pom.xml</relativePath>
+    </parent>
+
+    <artifactId>refrepo-docker-postgres</artifactId>
+    <name>refrepo/deployment/docker/postgres</name>
+    <packaging>pom</packaging>
+
+  <properties>
+        <docker.image.name>onap/refrepo/postgres</docker.image.name>
+        <maven.build.timestamp.format>yyyyMMdd-HHmm</maven.build.timestamp.format>
+        <docker.push.registry></docker.push.registry>
+        <skip.docker.build>true</skip.docker.build>
+        <skip.docker.tag>true</skip.docker.tag>
+        <skip.docker.push>true</skip.docker.push>
+  </properties>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>com.spotify</groupId>
+                <artifactId>docker-maven-plugin</artifactId>
+                <version>0.4.11</version>
+                <configuration>
+                    <verbose>true</verbose>
+                    <imageName>${docker.image.name}</imageName>
+                    <serverId>docker-hub</serverId>
+                    <dockerDirectory>${basedir}/</dockerDirectory>                    
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>build-image</id>
+                        <phase>package</phase>
+                        <goals>
+                            <goal>build</goal>
+                        </goals>
+                        <configuration>
+                            <skipDockerBuild>${skip.docker.build}</skipDockerBuild>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>tag-image-timestamped-version</id>
+                        <phase>deploy</phase>
+                        <goals>
+                            <goal>tag</goal>
+                        </goals>
+                        <configuration>
+                            <image>${docker.image.name}</image>
+                            <newName>${docker.push.registry}/${docker.image.name}:${project.version}-${maven.build.timestamp}</newName>
+                            <pushImage>${skip.docker.push}</pushImage>
+                            <skipDockerTag>${skip.docker.tag}</skipDockerTag>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>tag-image-latest-version</id>
+                        <phase>deploy</phase>
+                        <goals>
+                            <goal>tag</goal>
+                        </goals>
+                        <configuration>
+                            <image>${docker.image.name}</image>
+                            <newName>${docker.push.registry}/${docker.image.name}:latest</newName>
+                            <pushImage>${skip.docker.push}</pushImage>
+                            <skipDockerTag>${skip.docker.tag}</skipDockerTag>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>
index a4527bb..4dba1a4 100755 (executable)
 if [ -z "$SERVICE_IP" ]; then
     export SERVICE_IP=`hostname -i`
 fi
+if [ -z "$POSTGRES_IP" ]; then
+    export POSTGRES_IP=127.0.0.1
+fi
+
 echo
 echo Environment Variables:
 echo "SERVICE_IP=$SERVICE_IP"
@@ -38,6 +42,7 @@ chown -R mysql /var/lib/mysql
 chgrp -R mysql /var/lib/mysql
 su mysql -c /usr/bin/mysqld_safe &
 
+
 # Perform one-time config
 if [ ! -e init.log ]; then
     # Perform workarounds due to defects in release binary
index a7d5bb3..25a2258 100755 (executable)
@@ -20,3 +20,7 @@ mysql -uroot -prootpass < init/marketplace_tables_mysql.sql
 
 # Set mysql password
 sed -i 's|Changeme_123|rootpass|' webapps/ROOT/WEB-INF/classes/mybatis/configuration/configuration.xml
+
+#Set postgres instance IP
+sed -i 's|$POSTGRES_IP|127.0.0.1|' webapps/ROOT/WEB-INF/classes/mybatis/configuration/configuration.xml
+
index 430b4e8..1397d38 100644 (file)
@@ -35,6 +35,7 @@
     <modules>
         <module>zip</module>
         <module>docker</module>
+        <module>docker-postgres</module>
     </modules>
 
 </project>