[POLICY-66] self-contained features support 01/5901/1
authorJorge Hernandez <jh1730@att.com>
Tue, 18 Jul 2017 06:26:12 +0000 (01:26 -0500)
committerJorge Hernandez <jh1730@att.com>
Tue, 18 Jul 2017 06:26:12 +0000 (01:26 -0500)
feature unpackaging in feature directory structure

Change-Id: Ifc2ef8a061ff2348d5ad7ddc98a183b7d31159e8
Signed-off-by: Jorge Hernandez <jh1730@att.com>
policy-drools/docker-install.sh

index a19fbdc..8bc85c8 100644 (file)
@@ -331,7 +331,6 @@ function configure_base() {
                echo "${PROFILE_LINE}" >> "${HOME}/.profile"
        fi
 
-       
        . "${POLICY_HOME}/etc/profile.d/env.sh"
        
        cat "${POLICY_HOME}"/etc/cron.d/* | crontab
@@ -459,6 +458,8 @@ function install_base() {
        
        configure_base
        
+       cp "${BASE_CONF}" "${POLICY_HOME}"/etc/profile.d
+       
 #      if ! create_keystore; then
 #              echo "error: aborting base installation: creating keystore"
 #              exit 1
@@ -797,6 +798,31 @@ function installArtifacts
        fi
 }
 
+function installFeatures
+{
+       if [[ $DEBUG == y ]]; then
+               echo "-- ${FUNCNAME[0]} $@ --"
+               set -x
+       fi
+       
+       FEATURES_HOME="${POLICY_HOME}/features"
+       mkdir -p "${FEATURES_HOME}" > /dev/null 2>&1
+       if [[ -d "${FEATURES_HOME}" && -x "${FEATURES_HOME}" ]]; then
+               SOURCE_DIR=$PWD
+               for feature in feature-*.zip ; do
+                       name="${feature#feature-}"
+                       name="${name%-[0-9]*\.zip}"
+                       mkdir -p "${FEATURES_HOME}/${name}" > /dev/null 2>&1
+                       (cd "${FEATURES_HOME}/${name}"; jar xf ${SOURCE_DIR}/${feature})
+               done
+               
+               configure_component "${BASE_CONF}" "${FEATURES_HOME}"
+       else
+               echo "error: aborting ${FEATURES_HOME} is not accessible"
+               exit 1
+       fi
+}
+
 function do_install()
 {
        if [[ $DEBUG == y ]]; then
@@ -815,21 +841,15 @@ function do_install()
        COMPONENT_TYPE=policy-management
        install_controller
        
-       # install features
-       SOURCE_DIR=$PWD
-       cd $POLICY_HOME
-       jar xf ${SOURCE_DIR}/feature-healthcheck-*.zip
-       cd ${SOURCE_DIR}
-
+       installFeatures
        installArtifacts
-
+       
        echo
        echo "Installation complete"
        echo "Please logoff and login again to update shell environment"
        
 }
 
-DEBUG=n
 export POLICY_USER=$(/usr/bin/id -un)
 export POLICY_GROUP=$POLICY_USER