Docker-compose up 33/94833/2
authorDominik Mizyn <d.mizyn@samsung.com>
Mon, 2 Sep 2019 11:37:43 +0000 (13:37 +0200)
committerDominik Mizyn <d.mizyn@samsung.com>
Tue, 10 Sep 2019 09:35:29 +0000 (11:35 +0200)
Docker-compose for Portal-APP and MaridDB

Signed-off-by: Dominik Mizyn <d.mizyn@samsung.com>
Change-Id: I5031c524ef109da044f484555fb1319f2ad7092f
Issue-ID: PORTAL-710
Signed-off-by: Dominik Mizyn <d.mizyn@samsung.com>
portal-BE/Dockerfile
portal-BE/build.sh [new file with mode: 0755]
portal-BE/docker-compose.yml [new file with mode: 0644]
portal-BE/dockerfile.mariadb [new file with mode: 0644]
portal-BE/my.cnf [new file with mode: 0644]
portal-BE/pom.xml
portal-BE/src/main/java/org/onap/portal/domain/db/fn/FnOrg.java
portal-BE/src/main/java/org/onap/portal/domain/db/fn/FnUser.java
portal-BE/src/main/java/org/onap/portal/domain/dto/DomainVo.java
portal-BE/src/main/resources/application.properties

index e69de29..99275dc 100644 (file)
@@ -0,0 +1,6 @@
+FROM openjdk:8-jdk-alpine
+VOLUME /tmp
+EXPOSE 8080
+ARG DEPENDENCY=target
+ADD ${DEPENDENCY}/portal-0.0.1-SNAPSHOT.jar portal-0.0.1-SNAPSHOT.jar
+ENTRYPOINT ["java","-jar","portal-0.0.1-SNAPSHOT.jar"]
\ No newline at end of file
diff --git a/portal-BE/build.sh b/portal-BE/build.sh
new file mode 100755 (executable)
index 0000000..5c94036
--- /dev/null
@@ -0,0 +1,6 @@
+#!/bin/bash
+
+mvn clean install
+docker build -t portal_mariadb -f dockerfile.mariadb .
+docker build -t portal_app .
+docker-compose up
diff --git a/portal-BE/docker-compose.yml b/portal-BE/docker-compose.yml
new file mode 100644 (file)
index 0000000..7c44e82
--- /dev/null
@@ -0,0 +1,36 @@
+# docker-compose for ONAP portal containers: database, microservice, portal apps.
+# Relies on .env file, which CANNOT be specified via command-line option
+# Works in multiple environments; does not pull from a Nexus registry.
+# Exposes the portal apps docker (but not DB nor WMS dockers) on the host network.
+# Images must be pulled from ONAP Nexus registry after logging in like this:
+# docker login -u USER -p PASS nexus3.onap.org:10001
+# Uses healthcheck feature added in docker-compose v2.1
+
+version: '2.1'
+
+services:
+  portal-db:
+    image: portal_mariadb
+    container_name: portal_mariaDB
+    environment:
+      MYSQL_DATABASE: testdb
+    healthcheck:
+      test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"]
+    networks:
+      - backend
+
+  portal-app:
+    image: portal_app
+    container_name: portal_APP
+    restart: on-failure
+    ports:
+      - 8080:8080
+    depends_on:
+      portal-db:
+        condition: service_healthy
+    networks:
+      - backend
+
+networks:
+  backend:
+    driver: bridge
diff --git a/portal-BE/dockerfile.mariadb b/portal-BE/dockerfile.mariadb
new file mode 100644 (file)
index 0000000..f8fb49f
--- /dev/null
@@ -0,0 +1,7 @@
+FROM mariadb:latest
+
+ADD my.cnf /etc/mysql/my.cnf
+ENV MYSQL_USER portal
+ENV MYSQL_PASSWORD Test123456
+ENV MYSQL_ROOT_PASSWORD klasjfhaskrigudsb
+EXPOSE 3306
\ No newline at end of file
diff --git a/portal-BE/my.cnf b/portal-BE/my.cnf
new file mode 100644 (file)
index 0000000..d58210f
--- /dev/null
@@ -0,0 +1,192 @@
+# MariaDB database server configuration file.
+#
+# You can copy this file to one of:
+# - "/etc/mysql/my.cnf" to set global options,
+# - "~/.my.cnf" to set user-specific options.
+#
+# One can use all long options that the program supports.
+# Run program with --help to get a list of available options and with
+# --print-defaults to see which it would actually understand and use.
+#
+# For explanations see
+# http://dev.mysql.com/doc/mysql/en/server-system-variables.html
+
+# This will be passed to all mysql clients
+# It has been reported that passwords should be enclosed with ticks/quotes
+# escpecially if they contain "#" chars...
+# Remember to edit /etc/mysql/debian.cnf when changing the socket location.
+[client]
+port            = 3306
+socket          = /var/run/mysqld/mysqld.sock
+
+# Here is entries for some specific programs
+# The following values assume you have at least 32M ram
+
+# This was formally known as [safe_mysqld]. Both versions are currently parsed.
+[mysqld_safe]
+socket          = /var/run/mysqld/mysqld.sock
+nice            = 0
+
+[mysqld]
+skip-host-cache
+skip-name-resolve
+#
+# * Basic Settings
+#
+#user           = mysql
+pid-file        = /var/run/mysqld/mysqld.pid
+socket          = /var/run/mysqld/mysqld.sock
+port            = 3306
+basedir         = /usr
+datadir         = /var/lib/mysql
+tmpdir          = /tmp
+lc_messages_dir = /usr/share/mysql
+lc_messages     = en_US
+lower_case_table_names = 1 
+skip-external-locking
+#
+# Instead of skip-networking the default is now to listen only on
+# localhost which is more compatible and is not less secure.
+bind-address           = 0.0.0.0
+#
+# * Fine Tuning
+#
+max_connections         = 100
+connect_timeout         = 5
+wait_timeout            = 600
+max_allowed_packet      = 16M
+thread_cache_size       = 128
+sort_buffer_size        = 4M
+bulk_insert_buffer_size = 16M
+tmp_table_size          = 32M
+max_heap_table_size     = 32M
+#
+# * MyISAM
+#
+# This replaces the startup script and checks MyISAM tables if needed
+# the first time they are touched. On error, make copy and try a repair.
+myisam_recover_options = BACKUP
+key_buffer_size         = 128M
+#open-files-limit       = 2000
+table_open_cache        = 400
+myisam_sort_buffer_size = 512M
+concurrent_insert       = 2
+read_buffer_size        = 2M
+read_rnd_buffer_size    = 1M
+#
+# * Query Cache Configuration
+#
+# Cache only tiny result sets, so we can fit more in the query cache.
+query_cache_limit               = 128K
+query_cache_size                = 64M
+# for more write intensive setups, set to DEMAND or OFF
+#query_cache_type               = DEMAND
+#
+# * Logging and Replication
+#
+# Both location gets rotated by the cronjob.
+# Be aware that this log type is a performance killer.
+# As of 5.1 you can enable the log at runtime!
+#general_log_file        = /var/log/mysql/mysql.log
+#general_log             = 1
+#
+# Error logging goes to syslog due to /etc/mysql/conf.d/mysqld_safe_syslog.cnf.
+#
+# we do want to know about network errors and such
+#log_warnings           = 2
+#
+# Enable the slow query log to see queries with especially long duration
+#slow_query_log[={0|1}]
+slow_query_log_file     = /var/log/mysql/mariadb-slow.log
+long_query_time = 10
+#log_slow_rate_limit    = 1000
+#log_slow_verbosity     = query_plan
+
+#log-queries-not-using-indexes
+#log_slow_admin_statements
+#
+# The following can be used as easy to replay backup logs or for replication.
+# note: if you are setting up a replication slave, see README.Debian about
+#       other settings you may need to change.
+#server-id              = 1
+#report_host            = master1
+#auto_increment_increment = 2
+#auto_increment_offset  = 1
+#log_bin                        = /var/log/mysql/mariadb-bin
+#log_bin_index          = /var/log/mysql/mariadb-bin.index
+# not fab for performance, but safer
+#sync_binlog            = 1
+expire_logs_days        = 10
+max_binlog_size         = 100M
+# slaves
+#relay_log              = /var/log/mysql/relay-bin
+#relay_log_index        = /var/log/mysql/relay-bin.index
+#relay_log_info_file    = /var/log/mysql/relay-bin.info
+#log_slave_updates
+#read_only
+#
+# If applications support it, this stricter sql_mode prevents some
+# mistakes like inserting invalid dates etc.
+#sql_mode               = NO_ENGINE_SUBSTITUTION,TRADITIONAL
+#
+# * InnoDB
+#
+# InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
+# Read the manual for more InnoDB related options. There are many!
+default_storage_engine  = InnoDB
+# you can't just change log file size, requires special procedure
+#innodb_log_file_size   = 50M
+innodb_buffer_pool_size = 256M
+innodb_log_buffer_size  = 8M
+innodb_file_per_table   = 1
+innodb_open_files       = 400
+innodb_io_capacity      = 400
+innodb_flush_method     = O_DIRECT
+#
+# * Security Features
+#
+# Read the manual, too, if you want chroot!
+# chroot = /var/lib/mysql/
+#
+# For generating SSL certificates I recommend the OpenSSL GUI "tinyca".
+#
+# ssl-ca=/etc/mysql/cacert.pem
+# ssl-cert=/etc/mysql/server-cert.pem
+# ssl-key=/etc/mysql/server-key.pem
+
+#
+# * Galera-related settings
+#
+[galera]
+# Mandatory settings
+#wsrep_on=ON
+#wsrep_provider=
+#wsrep_cluster_address=
+#binlog_format=row
+#default_storage_engine=InnoDB
+#innodb_autoinc_lock_mode=2
+#
+# Allow server to accept connections on all interfaces.
+#
+#bind-address=0.0.0.0
+#
+# Optional setting
+#wsrep_slave_threads=1
+#innodb_flush_log_at_trx_commit=0
+
+[mysqldump]
+quick
+quote-names
+max_allowed_packet      = 16M
+
+[mysql]
+#no-auto-rehash # faster start of mysql but no tab completion
+
+[isamchk]
+key_buffer              = 16M
+
+#
+# * IMPORTANT: Additional settings that can override those from this file!
+#   The files must end with '.cnf', otherwise they'll be ignored.
+#
+#!includedir /etc/mysql/conf.d/
index a63fb4c..c291c02 100644 (file)
 <?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"
 <?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/xsd/maven-4.0.0.xsd">
-       <modelVersion>4.0.0</modelVersion>
-       <parent>
-               <groupId>org.springframework.boot</groupId>
-               <artifactId>spring-boot-starter-parent</artifactId>
-               <version>2.2.0.M4</version>
-               <relativePath/> <!-- lookup parent from repository -->
-       </parent>
-       <groupId>org.onap</groupId>
-       <artifactId>portal</artifactId>
-       <version>0.0.1-SNAPSHOT</version>
-       <name>portal-BE</name>
-       <description></description>
+  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.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-parent</artifactId>
+            <version>2.2.0.M4</version>
+            <relativePath/> <!-- lookup parent from repository -->
+      </parent>
+      <groupId>org.onap</groupId>
+      <artifactId>portal</artifactId>
+      <version>0.0.1-SNAPSHOT</version>
+      <name>portal-BE</name>
+      <packaging>jar</packaging>
+      <description></description>
 
 
-       <dependencies>
-               <dependency>
-                       <groupId>org.springframework.boot</groupId>
-                       <artifactId>spring-boot-starter-actuator</artifactId>
-               </dependency>
-               <dependency>
-                       <groupId>org.springframework.boot</groupId>
-                       <artifactId>spring-boot-starter-data-jpa</artifactId>
-               </dependency>
-               <dependency>
-                       <groupId>org.springframework.boot</groupId>
-                       <artifactId>spring-boot-starter-security</artifactId>
-               </dependency>
-               <dependency>
-                       <groupId>org.springframework.boot</groupId>
-                       <artifactId>spring-boot-starter-thymeleaf</artifactId>
-               </dependency>
-               <dependency>
-                       <groupId>org.springframework.boot</groupId>
-                       <artifactId>spring-boot-starter-web</artifactId>
-               </dependency>
-               <dependency>
-                       <groupId>org.springframework.session</groupId>
-                       <artifactId>spring-session-core</artifactId>
-               </dependency>
-               <dependency>
-                       <groupId>org.springframework.boot</groupId>
-                       <artifactId>spring-boot-devtools</artifactId>
-                       <scope>runtime</scope>
-                       <optional>true</optional>
-               </dependency>
-               <dependency>
-                       <groupId>org.springframework.boot</groupId>
-                       <artifactId>spring-boot-starter-aop</artifactId>
-                       <version>2.1.6.RELEASE</version>
-               </dependency>
-               <dependency>
-                       <groupId>com.h2database</groupId>
-                       <artifactId>h2</artifactId>
-                       <scope>runtime</scope>
-               </dependency>
-               <dependency>
-                       <groupId>mysql</groupId>
-                       <artifactId>mysql-connector-java</artifactId>
-                       <scope>runtime</scope>
-               </dependency>
-               <!-- https://mvnrepository.com/artifact/org.glassfish/javax.el -->
-               <dependency>
-                       <groupId>org.glassfish</groupId>
-                       <artifactId>javax.el</artifactId>
-                       <version>3.0.1-b11</version>
-               </dependency>
-               <!-- https://mvnrepository.com/artifact/javax.el/el-api -->
-               <dependency>
-                       <groupId>javax.el</groupId>
-                       <artifactId>el-api</artifactId>
-                       <version>2.2.1-b04</version>
-               </dependency>
-               <!-- https://mvnrepository.com/artifact/org.jsoup/jsoup -->
-               <dependency>
-                       <groupId>org.jsoup</groupId>
-                       <artifactId>jsoup</artifactId>
-                       <version>1.12.1</version>
-               </dependency>
-               <dependency>
-                       <groupId>org.projectlombok</groupId>
-                       <artifactId>lombok</artifactId>
-                       <optional>true</optional>
-               </dependency>
-               <dependency>
-                       <groupId>org.powermock</groupId>
-                       <artifactId>powermock-module-junit4</artifactId>
-                       <version>2.0.0</version>
-                       <scope>test</scope>
-               </dependency>
+      <dependencies>
+            <dependency>
+                  <groupId>org.springframework.boot</groupId>
+                  <artifactId>spring-boot-starter-actuator</artifactId>
+            </dependency>
+            <dependency>
+                  <groupId>org.springframework.boot</groupId>
+                  <artifactId>spring-boot-starter-data-jpa</artifactId>
+            </dependency>
+            <dependency>
+                  <groupId>org.springframework.boot</groupId>
+                  <artifactId>spring-boot-starter-security</artifactId>
+            </dependency>
+            <dependency>
+                  <groupId>org.springframework.boot</groupId>
+                  <artifactId>spring-boot-starter-thymeleaf</artifactId>
+            </dependency>
+            <dependency>
+                  <groupId>org.springframework.boot</groupId>
+                  <artifactId>spring-boot-starter-web</artifactId>
+            </dependency>
+            <dependency>
+                  <groupId>org.springframework.session</groupId>
+                  <artifactId>spring-session-core</artifactId>
+            </dependency>
+            <dependency>
+                  <groupId>org.springframework.boot</groupId>
+                  <artifactId>spring-boot-devtools</artifactId>
+                  <scope>runtime</scope>
+                  <optional>true</optional>
+            </dependency>
+            <dependency>
+                  <groupId>org.springframework.boot</groupId>
+                  <artifactId>spring-boot-starter-aop</artifactId>
+                  <version>2.1.6.RELEASE</version>
+            </dependency>
+            <dependency>
+                  <groupId>com.h2database</groupId>
+                  <artifactId>h2</artifactId>
+                  <scope>runtime</scope>
+            </dependency>
+            <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
+            <dependency>
+                  <groupId>mysql</groupId>
+                  <artifactId>mysql-connector-java</artifactId>
+                  <version>8.0.17</version>
+            </dependency>
+            <!-- https://mvnrepository.com/artifact/org.glassfish/javax.el -->
+            <dependency>
+                  <groupId>org.glassfish</groupId>
+                  <artifactId>javax.el</artifactId>
+                  <version>3.0.1-b11</version>
+            </dependency>
+            <!-- https://mvnrepository.com/artifact/javax.el/el-api -->
+            <dependency>
+                  <groupId>javax.el</groupId>
+                  <artifactId>el-api</artifactId>
+                  <version>2.2.1-b04</version>
+            </dependency>
+            <!-- https://mvnrepository.com/artifact/org.jsoup/jsoup -->
+            <dependency>
+                  <groupId>org.jsoup</groupId>
+                  <artifactId>jsoup</artifactId>
+                  <version>1.12.1</version>
+            </dependency>
+            <dependency>
+                  <groupId>org.projectlombok</groupId>
+                  <artifactId>lombok</artifactId>
+                  <optional>true</optional>
+            </dependency>
+            <dependency>
+                  <groupId>org.powermock</groupId>
+                  <artifactId>powermock-module-junit4</artifactId>
+                  <version>2.0.0</version>
+                  <scope>test</scope>
+            </dependency>
 
 
-               <dependency>
-                       <groupId>org.powermock</groupId>
-                       <artifactId>powermock-api-mockito2</artifactId>
-                       <version>2.0.0</version>
-                       <scope>test</scope>
-               </dependency>
-               <dependency>
-                       <groupId>org.onap.portal.sdk</groupId>
-                       <artifactId>epsdk-logger</artifactId>
-                       <version>2.6.0-SNAPSHOT</version>
-               </dependency>
-               <dependency>
-                       <groupId>org.onap.portal.sdk</groupId>
-                       <artifactId>epsdk-core</artifactId>
-                       <version>2.6.0-SNAPSHOT</version>
-               </dependency>
-               <dependency>
-                       <groupId>org.springframework.boot</groupId>
-                       <artifactId>spring-boot-starter-test</artifactId>
-                       <scope>test</scope>
-                       <exclusions>
-                               <exclusion>
-                                       <groupId>org.junit.vintage</groupId>
-                                       <artifactId>junit-vintage-engine</artifactId>
-                               </exclusion>
-                               <exclusion>
-                                       <groupId>junit</groupId>
-                                       <artifactId>junit</artifactId>
-                               </exclusion>
-                       </exclusions>
-               </dependency>
-               <dependency>
-                       <groupId>org.springframework.security</groupId>
-                       <artifactId>spring-security-test</artifactId>
-                       <scope>test</scope>
-               </dependency>
+            <dependency>
+                  <groupId>org.powermock</groupId>
+                  <artifactId>powermock-api-mockito2</artifactId>
+                  <version>2.0.0</version>
+                  <scope>test</scope>
+            </dependency>
+            <dependency>
+                  <groupId>org.onap.portal.sdk</groupId>
+                  <artifactId>epsdk-logger</artifactId>
+                  <version>2.6.0-SNAPSHOT</version>
+            </dependency>
+            <dependency>
+                  <groupId>org.onap.portal.sdk</groupId>
+                  <artifactId>epsdk-core</artifactId>
+                  <version>2.6.0-SNAPSHOT</version>
+            </dependency>
+            <dependency>
+                  <groupId>org.springframework.boot</groupId>
+                  <artifactId>spring-boot-starter-test</artifactId>
+                  <scope>test</scope>
+                  <exclusions>
+                        <exclusion>
+                              <groupId>org.junit.vintage</groupId>
+                              <artifactId>junit-vintage-engine</artifactId>
+                        </exclusion>
+                        <exclusion>
+                              <groupId>junit</groupId>
+                              <artifactId>junit</artifactId>
+                        </exclusion>
+                  </exclusions>
+            </dependency>
+            <dependency>
+                  <groupId>org.springframework.security</groupId>
+                  <artifactId>spring-security-test</artifactId>
+                  <scope>test</scope>
+            </dependency>
             <dependency>
                   <groupId>javax.servlet</groupId>
                   <artifactId>javax.servlet-api</artifactId>
             <dependency>
                   <groupId>javax.servlet</groupId>
                   <artifactId>javax.servlet-api</artifactId>
@@ -133,34 +135,82 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xs
                   <scope>compile</scope>
             </dependency>
       </dependencies>
                   <scope>compile</scope>
             </dependency>
       </dependencies>
+      <properties>
+            <docker.image.prefix>portal</docker.image.prefix>
+      </properties>
+      <build>
+            <plugins>
+                  <plugin>
+                        <groupId>org.springframework.boot</groupId>
+                        <artifactId>spring-boot-maven-plugin</artifactId>
+                  </plugin>
+                  <plugin>
+                        <groupId>com.spotify</groupId>
+                        <artifactId>dockerfile-maven-plugin</artifactId>
+                        <version>1.4.9</version>
+                        <configuration>
+                              <repository>${docker.image.prefix}/${project.version}</repository>
+                        </configuration>
+                  </plugin>
+                  <plugin>
+                        <groupId>org.apache.maven.plugins</groupId>
+                        <artifactId>maven-jar-plugin</artifactId>
+                        <configuration>
+                              <!-- DO NOT include log4j.properties file in your Jar -->
+                              <excludes>
+                                    <exclude>**/log4j.properties</exclude>
+                              </excludes>
+                              <archive>
+                                    <manifest>
+                                          <!-- Jar file entry point -->
+                                          <mainClass>org.onap.portal.PortalApplication</mainClass>
+                                    </manifest>
+                              </archive>
+                        </configuration>
+                  </plugin>
+                  <plugin>
+                        <groupId>org.apache.maven.plugins</groupId>
+                        <artifactId>maven-dependency-plugin</artifactId>
+                        <executions>
+                              <execution>
+                                    <id>unpack</id>
+                                    <phase>package</phase>
+                                    <goals>
+                                          <goal>unpack</goal>
+                                    </goals>
+                                    <configuration>
+                                          <artifactItems>
+                                                <artifactItem>
+                                                      <groupId>${project.groupId}</groupId>
+                                                      <artifactId>${project.artifactId}</artifactId>
+                                                      <version>${project.version}</version>
+                                                </artifactItem>
+                                          </artifactItems>
+                                    </configuration>
+                              </execution>
+                        </executions>
+                  </plugin>
+            </plugins>
+            <resources>
+                  <resource>
+                        <directory>src/main/resources</directory>
+                  </resource>
+            </resources>
+      </build>
 
 
-       <build>
-               <plugins>
-                       <plugin>
-                               <groupId>org.springframework.boot</groupId>
-                               <artifactId>spring-boot-maven-plugin</artifactId>
-                       </plugin>
-               </plugins>
-               <resources>
-                       <resource>
-                               <directory>src/main/resources</directory>
-                       </resource>
-               </resources>
-       </build>
-
-       <repositories>
-               <repository>
-                       <id>spring-milestones</id>
-                       <name>Spring Milestones</name>
-                       <url>https://repo.spring.io/milestone</url>
-               </repository>
-       </repositories>
-       <pluginRepositories>
-               <pluginRepository>
-                       <id>spring-milestones</id>
-                       <name>Spring Milestones</name>
-                       <url>https://repo.spring.io/milestone</url>
-               </pluginRepository>
-       </pluginRepositories>
+      <repositories>
+            <repository>
+                  <id>spring-milestones</id>
+                  <name>Spring Milestones</name>
+                  <url>https://repo.spring.io/milestone</url>
+            </repository>
+      </repositories>
+      <pluginRepositories>
+            <pluginRepository>
+                  <id>spring-milestones</id>
+                  <name>Spring Milestones</name>
+                  <url>https://repo.spring.io/milestone</url>
+            </pluginRepository>
+      </pluginRepositories>
 
 </project>
 
 </project>
index 310c361..9dea65e 100644 (file)
@@ -76,7 +76,6 @@ CREATE TABLE `fn_org` (
 })
 @NoArgsConstructor
 @AllArgsConstructor
 })
 @NoArgsConstructor
 @AllArgsConstructor
-
 @Getter
 @Setter
 @Entity
 @Getter
 @Setter
 @Entity
@@ -91,7 +90,7 @@ public class FnOrg implements Serializable {
        @SafeHtml
        @NotNull
        private String orgName;
        @SafeHtml
        @NotNull
        private String orgName;
-       @Column(name = "access_cd", length = 10, columnDefinition = "varchar(10) DEFAULT NULL")
+       @Column(name = "access_cd", length = 10)
        @Size(max = 10)
        @SafeHtml
        private String accessCd;
        @Size(max = 10)
        @SafeHtml
        private String accessCd;
index 029420d..afd70b0 100644 (file)
@@ -190,70 +190,70 @@ public class FnUser extends DomainVo implements UserDetails, Serializable {
        @Digits(integer = 11, fraction = 0)
        private Long userId;
        @ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
        @Digits(integer = 11, fraction = 0)
        private Long userId;
        @ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
-       @JoinColumn(name = "org_id", columnDefinition = "int(11) DEFAULT NULL")
+       @JoinColumn(name = "org_id")
        private FnOrg orgId;
        @ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
        @JoinColumn(name = "manager_id")
        private FnUser managerId;
        private FnOrg orgId;
        @ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
        @JoinColumn(name = "manager_id")
        private FnUser managerId;
-       @Column(name = "first_name", length = 50, columnDefinition = "varchar(50) DEFAULT NULL")
+       @Column(name = "first_name", length = 50)
        @Size(max = 50)
        @SafeHtml
        private String firstName;
        @Size(max = 50)
        @SafeHtml
        private String firstName;
-       @Column(name = "middle_name", length = 50, columnDefinition = "varchar(50) DEFAULT NULL")
+       @Column(name = "middle_name", length = 50)
        @Size(max = 50)
        @SafeHtml
        private String middleName;
        @Size(max = 50)
        @SafeHtml
        private String middleName;
-       @Column(name = "last_name", length = 50, columnDefinition = "varchar(50) DEFAULT NULL")
+       @Column(name = "last_name", length = 50)
        @Size(max = 50)
        @SafeHtml
        private String lastName;
        @Size(max = 50)
        @SafeHtml
        private String lastName;
-       @Column(name = "phone", length = 25, columnDefinition = "varchar(25) DEFAULT NULL")
+       @Column(name = "phone", length = 25)
        @Size(max = 25)
        @SafeHtml
        private String phone;
        @Size(max = 25)
        @SafeHtml
        private String phone;
-       @Column(name = "fax", length = 25, columnDefinition = "varchar(25) DEFAULT NULL")
+       @Column(name = "fax", length = 25)
        @Size(max = 25)
        @SafeHtml
        private String fax;
        @Size(max = 25)
        @SafeHtml
        private String fax;
-       @Column(name = "cellular", length = 25, columnDefinition = "varchar(25) DEFAULT NULL")
+       @Column(name = "cellular", length = 25)
        @Size(max = 25)
        @SafeHtml
        private String cellular;
        @Size(max = 25)
        @SafeHtml
        private String cellular;
-       @Column(name = "email", length = 50, columnDefinition = "varchar(50) DEFAULT NULL")
+       @Column(name = "email", length = 50)
        @Size(max = 50)
        @Email
        @SafeHtml
        private String email;
        @Size(max = 50)
        @Email
        @SafeHtml
        private String email;
-       @Column(name = "address_id", columnDefinition = "decimal(11,0) DEFAULT NULL")
+       @Column(name = "address_id")
        @Digits(integer = 11, fraction = 0)
        private Long addressId;
        @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
        @Digits(integer = 11, fraction = 0)
        private Long addressId;
        @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
-       @JoinColumn(name = "alert_method_cd", columnDefinition = "varchar(10) DEFAULT NULL")
+       @JoinColumn(name = "alert_method_cd")
        private FnLuAlertMethod alertMethodCd;
        private FnLuAlertMethod alertMethodCd;
-       @Column(name = "hrid", length = 20, columnDefinition = "varchar(20) DEFAULT NULL")
+       @Column(name = "hrid", length = 20)
        @Size(max = 20)
        @SafeHtml
        private String hrid;
        @Size(max = 20)
        @SafeHtml
        private String hrid;
-       @Column(name = "org_user_id", length = 20, columnDefinition = "varchar(20) DEFAULT NULL")
+       @Column(name = "org_user_id", length = 20)
        @Size(max = 20)
        @SafeHtml
        private String orgUserId;
        @Size(max = 20)
        @SafeHtml
        private String orgUserId;
-       @Column(name = "org_code", length = 30, columnDefinition = "varchar(30) DEFAULT NULL")
+       @Column(name = "org_code", length = 30)
        @Size(max = 30)
        @SafeHtml
        private String org_code;
        @Size(max = 30)
        @SafeHtml
        private String org_code;
-       @Column(name = "login_id", length = 25, columnDefinition = "varchar(25) DEFAULT NULL")
+       @Column(name = "login_id", length = 25)
        @Size(max = 25)
        @SafeHtml
        private String loginId;
        @Size(max = 25)
        @SafeHtml
        private String loginId;
-       @Column(name = "login_pwd", length = 100, columnDefinition = "varchar(100) DEFAULT NULL")
+       @Column(name = "login_pwd", length = 100)
        @Size(max = 100)
        @SafeHtml
        private String loginPwd;
        @Column(name = "last_login_date", nullable = false, columnDefinition = "datetime DEFAULT current_timestamp() ON UPDATE current_timestamp()")
        @PastOrPresent
        protected LocalDateTime lastLoginDate;
        @Size(max = 100)
        @SafeHtml
        private String loginPwd;
        @Column(name = "last_login_date", nullable = false, columnDefinition = "datetime DEFAULT current_timestamp() ON UPDATE current_timestamp()")
        @PastOrPresent
        protected LocalDateTime lastLoginDate;
-       @Column(name = "active_yn", length = 1, columnDefinition = "character varying(1) default 'y'", nullable = false)
+       @Column(name = "active_yn", length = 1, nullable = false)
        @Size(max = 1)
        @SafeHtml
        @NotNull(message = "activeYn must not be null")
        @Size(max = 1)
        @SafeHtml
        @NotNull(message = "activeYn must not be null")
@@ -275,74 +275,74 @@ public class FnUser extends DomainVo implements UserDetails, Serializable {
        @SafeHtml
        @NotNull(message = "isInternalYn must not be null")
        private String isInternalYn;
        @SafeHtml
        @NotNull(message = "isInternalYn must not be null")
        private String isInternalYn;
-       @Column(name = "address_line_1", length = 100, columnDefinition = "varchar(100) DEFAULT NULL")
+       @Column(name = "address_line_1", length = 100)
        @Size(max = 100)
        @SafeHtml
        private String addressLine1;
        @Size(max = 100)
        @SafeHtml
        private String addressLine1;
-       @Column(name = "address_line_2", length = 100, columnDefinition = "varchar(100) DEFAULT NULL")
+       @Column(name = "address_line_2", length = 100)
        @Size(max = 100)
        @SafeHtml
        private String addressLine2;
        @Size(max = 100)
        @SafeHtml
        private String addressLine2;
-       @Column(name = "city", length = 50, columnDefinition = "varchar(50) DEFAULT NULL")
+       @Column(name = "city", length = 50)
        @Size(max = 50)
        @SafeHtml
        private String city;
        @Size(max = 50)
        @SafeHtml
        private String city;
-       @Column(name = "state_cd", length = 3, columnDefinition = "varchar(3) DEFAULT NULL")
+       @Column(name = "state_cd", length = 3)
        @Size(max = 3)
        @SafeHtml
        private String stateCd;
        @Size(max = 3)
        @SafeHtml
        private String stateCd;
-       @Column(name = "zip_code", length = 11, columnDefinition = "varchar(11) DEFAULT NULL")
+       @Column(name = "zip_code", length = 11)
        @Size(max = 11)
        @SafeHtml
        private String zipCode;
        @Size(max = 11)
        @SafeHtml
        private String zipCode;
-       @Column(name = "country_cd", length = 3, columnDefinition = "varchar(3) DEFAULT NULL")
+       @Column(name = "country_cd", length = 3)
        @Size(max = 3)
        @SafeHtml
        private String countryCd;
        @Size(max = 3)
        @SafeHtml
        private String countryCd;
-       @Column(name = "location_clli", length = 8, columnDefinition = "varchar(8) DEFAULT NULL")
+       @Column(name = "location_clli", length = 8)
        @Size(max = 8)
        @SafeHtml
        private String locationClli;
        @Size(max = 8)
        @SafeHtml
        private String locationClli;
-       @Column(name = "org_manager_userid", length = 20, columnDefinition = "varchar(20) DEFAULT NULL")
+       @Column(name = "org_manager_userid", length = 20)
        @Size(max = 20)
        @SafeHtml
        private String orgManagerUserId;
        @Size(max = 20)
        @SafeHtml
        private String orgManagerUserId;
-       @Column(name = "company", length = 100, columnDefinition = "varchar(100) DEFAULT NULL")
+       @Column(name = "company", length = 100)
        @Size(max = 100)
        @SafeHtml
        private String company;
        @Size(max = 100)
        @SafeHtml
        private String company;
-       @Column(name = "department_name", length = 200, columnDefinition = "varchar(100) DEFAULT NULL")
+       @Column(name = "department_name", length = 200)
        @Size(max = 200)
        @SafeHtml
        private String departmentName;
        @Size(max = 200)
        @SafeHtml
        private String departmentName;
-       @Column(name = "job_title", length = 100, columnDefinition = "varchar(100) DEFAULT NULL")
+       @Column(name = "job_title", length = 100)
        @Size(max = 100)
        @SafeHtml
        private String jobTitle;
        @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
        @Size(max = 100)
        @SafeHtml
        private String jobTitle;
        @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
-       @JoinColumn(name = "timezone", columnDefinition = "int(11) DEFAULT NULL")
+       @JoinColumn(name = "timezone")
        private FnLuTimezone timezone;
        private FnLuTimezone timezone;
-       @Column(name = "department", length = 25, columnDefinition = "varchar(25) DEFAULT NULL")
+       @Column(name = "department", length = 25)
        @Size(max = 25)
        @SafeHtml
        private String department;
        @Size(max = 25)
        @SafeHtml
        private String department;
-       @Column(name = "business_unit", length = 25, columnDefinition = "varchar(25) DEFAULT NULL")
+       @Column(name = "business_unit", length = 25)
        @Size(max = 25)
        @SafeHtml
        private String businessUnit;
        @Size(max = 25)
        @SafeHtml
        private String businessUnit;
-       @Column(name = "business_unit_name", length = 100, columnDefinition = "varchar(100) DEFAULT NULL")
+       @Column(name = "business_unit_name", length = 100)
        @Size(max = 100)
        @SafeHtml
        private String businessUnitName;
        @Size(max = 100)
        @SafeHtml
        private String businessUnitName;
-       @Column(name = "cost_center", length = 25, columnDefinition = "varchar(25) DEFAULT NULL")
+       @Column(name = "cost_center", length = 25)
        @Size(max = 25)
        @SafeHtml
        private String cost_center;
        @Size(max = 25)
        @SafeHtml
        private String cost_center;
-       @Column(name = "fin_loc_code", length = 10, columnDefinition = "varchar(10) DEFAULT NULL")
+       @Column(name = "fin_loc_code", length = 10)
        @Size(max = 10)
        @SafeHtml
        private String finLocCode;
        @Size(max = 10)
        @SafeHtml
        private String finLocCode;
-       @Column(name = "silo_status", length = 10, columnDefinition = "varchar(10) DEFAULT NULL")
+       @Column(name = "silo_status", length = 10)
        @Size(max = 10)
        @SafeHtml
        private String siloStatus;
        @Size(max = 10)
        @SafeHtml
        private String siloStatus;
index 98a0d05..6901aee 100644 (file)
@@ -45,7 +45,7 @@ import java.io.ByteArrayOutputStream;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
 import java.io.Serializable;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
 import java.io.Serializable;
-import java.util.Date;
+import java.time.LocalDateTime;
 import java.util.Set;
 import javax.persistence.Inheritance;
 import javax.persistence.InheritanceType;
 import java.util.Set;
 import javax.persistence.Inheritance;
 import javax.persistence.InheritanceType;
@@ -66,8 +66,8 @@ public class DomainVo extends FusionVo implements Serializable, Cloneable, Compa
        private static final long serialVersionUID = 1L;
 
        protected Long id;
        private static final long serialVersionUID = 1L;
 
        protected Long id;
-       protected Date created;
-       protected Date modified;
+       protected LocalDateTime created;
+       protected LocalDateTime modified;
        protected FnUser createdId;
        protected FnUser modifiedId;
        protected Long rowNum;
        protected FnUser createdId;
        protected FnUser modifiedId;
        protected Long rowNum;
index e31dcc3..30c0bee 100644 (file)
@@ -1,16 +1,21 @@
 server.port=8080
 
 server.port=8080
 
-spring.datasource.url=jdbc:mysql://localhost:3306/testdb?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
+spring.datasource.url=jdbc:mysql://portal-db:3306/testdb?createDatabaseIfNotExist=true&useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
 spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver
 spring.datasource.initialization-mode=always
 spring.session.jdbc.initialize-schema=always
 spring.datasource.continueOnError=true
 spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver
 spring.datasource.initialization-mode=always
 spring.session.jdbc.initialize-schema=always
 spring.datasource.continueOnError=true
-spring.datasource.username=root
-spring.datasource.password=root
+spring.datasource.username=portal
+spring.datasource.password=Test123456
+log4j.logger.org.hibernate=info
+
+#H2 config
+spring.h2.console.settings.web-allow-others=true
+spring.h2.console.enabled=true
 
 spring.jpa.database-platform=org.hibernate.dialect.MariaDBDialect
 spring.jpa.hibernate.ddl-auto=update
 spring.jpa.database=mysql
 spring.jpa.show-sql=true
 
 
 spring.jpa.database-platform=org.hibernate.dialect.MariaDBDialect
 spring.jpa.hibernate.ddl-auto=update
 spring.jpa.database=mysql
 spring.jpa.show-sql=true
 
-spring.jooq.sql-dialect=MARIADB
+spring.jooq.sql-dialect=MARIADB
\ No newline at end of file