First version of ThingsBoard IoT Platform - an Aether edge app

Change-Id: Ia94164fb6ec9b1f2a31668b0e419f05e72eac27c
diff --git a/apps/thingsboard-iot-platform/templates/configmap-postgres.yaml b/apps/thingsboard-iot-platform/templates/configmap-postgres.yaml
new file mode 100644
index 0000000..f3d605c
--- /dev/null
+++ b/apps/thingsboard-iot-platform/templates/configmap-postgres.yaml
@@ -0,0 +1,86 @@
+{{- /*
+
+# Copyright 2020-present Open Networking Foundation
+#
+# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+
+*/ -}}
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: postgres-conf
+  labels:
+    name: postgres-conf
+data:
+  config: |
+    listen_addresses = '*'
+    huge_pages = off
+
+
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: tb-node-db-config
+  labels:
+    name: tb-node-db-config
+data:
+  DATABASE_TS_TYPE: sql
+  SPRING_JPA_DATABASE_PLATFORM: org.hibernate.dialect.PostgreSQLDialect
+  SPRING_DRIVER_CLASS_NAME: org.postgresql.Driver
+  SPRING_DATASOURCE_URL: jdbc:postgresql://tb-database:5432/thingsboard
+  SPRING_DATASOURCE_USERNAME: postgres
+  SPRING_DATASOURCE_PASSWORD: postgres
+
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: tb-node-config
+  labels:
+    name: tb-node-config
+data:
+  conf: |
+    export JAVA_OPTS="$JAVA_OPTS -Dplatform=deb -Dinstall.data_dir=/usr/share/thingsboard/data"
+    export JAVA_OPTS="$JAVA_OPTS -Xloggc:/var/log/thingsboard/${TB_SERVICE_ID}/gc.log -XX:+IgnoreUnrecognizedVMOptions -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/var/log/thingsboard/${TB_SERVICE_ID}/heapdump.bin -XX:+PrintGCDetails -XX:+PrintGCDateStamps"
+    export JAVA_OPTS="$JAVA_OPTS -XX:+PrintHeapAtGC -XX:+PrintTenuringDistribution -XX:+PrintGCApplicationStoppedTime -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10"
+    export JAVA_OPTS="$JAVA_OPTS -XX:GCLogFileSize=10M -XX:-UseBiasedLocking -XX:+UseTLAB -XX:+ResizeTLAB -XX:+PerfDisableSharedMem -XX:+UseCondCardMark"
+    export JAVA_OPTS="$JAVA_OPTS -XX:CMSWaitDuration=10000 -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+CMSParallelInitialMarkEnabled"
+    export JAVA_OPTS="$JAVA_OPTS -XX:+CMSEdenChunksRecordAlways -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+ExitOnOutOfMemoryError"
+    export LOG_FILENAME=thingsboard.out
+    export LOADER_PATH=/usr/share/thingsboard/conf,/usr/share/thingsboard/extensions
+  logback: |
+    <!DOCTYPE configuration>
+    <configuration scan="true" scanPeriod="10 seconds">
+
+        <appender name="fileLogAppender"
+                  class="ch.qos.logback.core.rolling.RollingFileAppender">
+            <file>/var/log/thingsboard/${TB_SERVICE_ID}/thingsboard.log</file>
+            <rollingPolicy
+                    class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+                <fileNamePattern>/var/log/thingsboard/${TB_SERVICE_ID}/thingsboard.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+                <maxFileSize>100MB</maxFileSize>
+                <maxHistory>30</maxHistory>
+                <totalSizeCap>3GB</totalSizeCap>
+            </rollingPolicy>
+            <encoder>
+                <pattern>%d{ISO8601} [%thread] %-5level %logger{36} - %msg%n</pattern>
+            </encoder>
+        </appender>
+
+        <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+            <encoder>
+                <pattern>%d{ISO8601} [%thread] %-5level %logger{36} - %msg%n</pattern>
+            </encoder>
+        </appender>
+
+        <logger name="org.thingsboard.server" level="INFO" />
+        <logger name="com.google.common.util.concurrent.AggregateFuture" level="OFF" />
+
+        <root level="INFO">
+            <appender-ref ref="fileLogAppender"/>
+            <appender-ref ref="STDOUT"/>
+        </root>
+
+    </configuration>
\ No newline at end of file