install controlloop drools applications 59/45959/5
authorJorge Hernandez <jh1730@att.com>
Thu, 3 May 2018 19:08:42 +0000 (14:08 -0500)
committerJorge Hernandez <jh1730@att.com>
Tue, 8 May 2018 00:48:32 +0000 (19:48 -0500)
it will get the proper control loop application  on the fly
to minimize space used in configmaps.

upgrades mariadb to latest stable version (previous one
used by policy was outdated).

fixes pessimistic lock DB problems on PE side

fixes outdated policy-keystore overriding the image one

Change-Id: Ia78d23b57b4e314c44c97912d544b85d0d6c9c5e
Issue-ID: POLICY-766
Signed-off-by: Jorge Hernandez <jh1730@att.com>
kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/drools-preinstall.sh [new file with mode: 0644]
kubernetes/policy/charts/drools/resources/scripts/do-start.sh [deleted file]
kubernetes/policy/charts/drools/templates/configmap.yaml
kubernetes/policy/charts/drools/templates/statefulset.yaml
kubernetes/policy/charts/mariadb/templates/deployment.yaml
kubernetes/policy/charts/mariadb/values.yaml
kubernetes/policy/charts/policy-common/resources/config/pe/base.conf

diff --git a/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/drools-preinstall.sh b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/drools-preinstall.sh
new file mode 100644 (file)
index 0000000..8b29012
--- /dev/null
@@ -0,0 +1,52 @@
+#!/bin/bash
+#
+# ============LICENSE_START=======================================================
+# ONAP
+# ================================================================================
+# Copyright (C) 2018 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=========================================================
+#
+
+# #################################
+# Usage
+# #################################
+
+function usage {
+    echo
+    echo "Usage: $(basename $0)"
+    echo
+}
+
+if [[ ${DEBUG} == y ]]; then
+    set -x
+fi
+
+if [[ -z ${BUILD_VERSION} ]]; then
+    echo "no BUILD_VERSION available as environment variable""
+    usage
+    exit 1
+fi
+
+if [[ -z ${POLICY_INSTALL} ]]; then
+    echo "no POLICY_INSTALL available as environment variable""
+    usage
+    exit 2
+fi
+
+CONFIG_DIR=$(dirname "$0")
+echo "invoking ${CONFIG_DIR}/apps-install.sh for controlloop ${BUILD_VERSION} at ${POLICY_INSTALL}"
+export DEBUG=y
+bash ${CONFIG_DIR}/apps-install.sh controlloop ${BUILD_VERSION} ${POLICY_INSTALL}
+unzip -o ${POLICY_INSTALL}/app*.zip -d ${POLICY_INSTALL}
diff --git a/kubernetes/policy/charts/drools/resources/scripts/do-start.sh b/kubernetes/policy/charts/drools/resources/scripts/do-start.sh
deleted file mode 100644 (file)
index 1c40e11..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada, AT&T
-#
-# 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.
-
-#!/bin/bash
-
-# skip installation if build.info file is present (restarting an existing container)
-if [[ -f /opt/app/policy/etc/build.info ]]; then
-       echo "Found existing installation, will not reinstall"
-       . /opt/app/policy/etc/profile.d/env.sh
-else 
-       # replace conf files from installer with environment-specific files
-       # mounted from the hosting VM
-       if [[ -d config ]]; then
-               cp config/*.conf .
-       fi
-
-       ./docker-install.sh
-
-       . /opt/app/policy/etc/profile.d/env.sh
-
-       # install policy keystore
-       mkdir -p $POLICY_HOME/etc/ssl
-       cp config/policy-keystore $POLICY_HOME/etc/ssl
-
-       if [[ -x config/drools-tweaks.sh ]] ; then
-               echo "Executing tweaks"
-               # file may not be executable; running it as an
-               # argument to bash avoids needing execute perms.
-               bash config/drools-tweaks.sh
-       fi
-
-       # sql provisioning scripts should be invoked here.
-fi
-
-echo "Starting processes"
-
-policy start
-
-sleep 1000d
index 36f458f..29b1c56 100644 (file)
@@ -30,14 +30,6 @@ data:
 ---
 apiVersion: v1
 kind: ConfigMap
-metadata:
-  name: {{ include "common.fullname" . }}-script-configmap
-  namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/scripts/do-start.sh*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-log-configmap
   namespace: {{ include "common.namespace" . }}
index 5dd49ed..e492760 100644 (file)
@@ -85,9 +85,6 @@ spec:
           - mountPath: /etc/localtime
             name: localtime
             readOnly: true
-          - mountPath: /tmp/policy-install/config/policy-keystore
-            name: drools-secret
-            subPath: policy-keystore
           - mountPath: /tmp/policy-install/config/feature-healthcheck.conf
             name: drools-secret
             subPath: feature-healthcheck.conf
@@ -103,6 +100,9 @@ spec:
           - mountPath: /tmp/policy-install/config/apps-install.sh
             name: drools-config
             subPath: apps-install.sh
+          - mountPath: /tmp/policy-install/config/drools-preinstall.sh
+            name: drools-config
+            subPath: drools-preinstall.sh
           - mountPath: /usr/share/maven/conf/settings.xml
             name: drools-settingsxml
             subPath: settings.xml
@@ -111,9 +111,6 @@ spec:
           - mountPath: /tmp/logback.xml
             name: policy-logback
             subPath: logback.xml
-          - mountPath: /tmp/policy-install/do-start.sh
-            name: pe-scripts
-            subPath: do-start.sh
           lifecycle:
             postStart:
               exec:
@@ -169,19 +166,18 @@ spec:
             - key: drools-tweaks.sh
               path: drools-tweaks.sh
               mode: 0755
+            - key: apps-install.sh
+              path: apps-install.sh
+              mode: 0755
+            - key: drools-preinstall.sh
+              path: drools-preinstall.sh
+              mode: 0755
         - name: drools-secret
           secret:
             secretName: {{ include "common.fullname" . }}-secret
             items:
-            - key: policy-keystore
-              path: policy-keystore
-              mode: 0644
             - key: feature-healthcheck.conf
               path: feature-healthcheck.conf
               mode: 0644
-        - name: pe-scripts
-          configMap:
-            name: {{ include "common.fullname" . }}-script-configmap
-            defaultMode: 0777
       imagePullSecrets:
       - name: "{{ include "common.namespace" . }}-docker-registry-key"
index 1709af7..248d35b 100644 (file)
@@ -41,6 +41,7 @@ spec:
           {{- if eq .Values.liveness.enabled true }}
           args:
           - --lower-case-table-names=1
+          - --wait_timeout=28800
           livenessProbe:
             tcpSocket:
               port: {{ .Values.service.internalPort }}
index eb62715..ea79ba6 100644 (file)
@@ -25,7 +25,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: mariadb:10.0.34
+image: mariadb:10.2.14
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index ce8a030..c5dd8ca 100644 (file)
@@ -18,8 +18,8 @@ POLICY_LOGS=/var/log/onap
 KEYSTORE_PASSWD=Pol1cy_0nap
 
 JDBC_DRIVER=org.mariadb.jdbc.Driver
-JDBC_URL=jdbc:mariadb://{{ .Values.global.mariadb.nameOverride }}:{{.Values.config.mariadbPort}}/onap_sdk?failOverReadOnly=false&autoReconnect=true
-JDBC_LOG_URL=jdbc:mariadb://{{ .Values.global.mariadb.nameOverride }}:{{.Values.config.mariadbPort}}/log?failOverReadOnly=false&autoReconnect=true
+JDBC_URL=jdbc:mariadb://{{ .Values.global.mariadb.nameOverride }}:{{.Values.config.mariadbPort}}/onap_sdk?connectTimeout=30000&socketTimeout=60000&log=true&sessionVariables=max_statement_time=30
+JDBC_LOG_URL=jdbc:mariadb://{{ .Values.global.mariadb.nameOverride }}:{{.Values.config.mariadbPort}}/log?connectTimeout=30000&socketTimeout=60000&log=true&sessionVariables=max_statement_time=30
 JDBC_USER=policy_user
 JDBC_PASSWORD=policy_user