Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
GRP-3102: add verbose starting output to container
mchyzer committed Jan 28, 2021
1 parent 3ddf473 commit 9b56c85
Showing 14 changed files with 472 additions and 136 deletions.
@@ -54,7 +54,7 @@ testContainerUiSubimageNonroot() {
assertEnvVar GROUPER_APACHE_AJP_TIMEOUT_SECONDS "3600"
assertEnvVar GROUPER_APACHE_NONSSL_PORT "80"
assertEnvVar GROUPER_APACHE_SSL_PORT "443"
assertEnvVar GROUPER_CHOWN_DIRS "true"
assertEnvVarNot GROUPER_CHOWN_DIRS "true"
assertEnvVar GROUPER_CONTAINER_VERSION "$containerVersion"
assertEnvVar GROUPER_DAEMON "false"
assertEnvVar GROUPER_GSH_CHECK_USER "true"
4 changes: 2 additions & 2 deletions container_files/tier-support/test/testContainer.Dockerfile
@@ -1,8 +1,8 @@
# this matches the version you decided on from release notes
ARG GROUPER_VERSION=2.5.XX
ARG GROUPER_VERSION=2.5.40

# --build-arg GROUPER_VERSION=${VARIABLE_NAME} i2incommon/grouper:${GROUPER_VERSION}
FROM __BASE_CONTAINER__
FROM i2incommon/grouper:2.5.40

# this will overlay all the files from /opt/grouperContainer/slashRoot on to /
COPY slashRoot /
4 changes: 2 additions & 2 deletions container_files/usr-local-bin/changeGid.sh
@@ -13,6 +13,6 @@ newGid=$2
getentOutput="$(getent group "$groupname")"
oldGid="$( echo "$getentOutput" |cut -d\: -f3 )"
groupmod -g "$newGid" "$groupname"
echo "grouperContainer; INFO: (changeGid.sh) groupmod -g $newGid $groupname , result: $?"
echo "grouperContainer; INFO: (changeGid.sh) groupmod -g \"$newGid\" \"$groupname\" , result: $?"
find / -xdev -type d -group "$oldGid" -exec chgrp -h "$groupname" {} \;
echo "grouperContainer; INFO: (changeGid.sh) find / -xdev -type d -group $oldGid -exec chgrp -h $groupname {} \; , result: $?"
echo "grouperContainer; INFO: (changeGid.sh) find / -xdev -type d -group \"$oldGid\" -exec chgrp -h \"$groupname\" {} \; , result: $?"
4 changes: 2 additions & 2 deletions container_files/usr-local-bin/changeUid.sh
@@ -12,6 +12,6 @@ username=$1
newUid=$2
oldUid="$(id -u "$username")"
usermod -u "$newUid" "$username"
echo "grouperContainer; INFO: (changeUid.sh) usermod -u $newUid $username , result: $?"
echo "grouperContainer; INFO: (changeUid.sh) usermod -u \"$newUid\" \"$username\" , result: $?"
find / -xdev -type d -user "$oldUid" -exec chown -h "$username" {} \;
echo "grouperContainer; INFO: (changeUid.sh) find / -xdev -type d -user $oldUid -exec chown -h $username {} \; , result: $?"
echo "grouperContainer; INFO: (changeUid.sh) find / -xdev -type d -user \"$oldUid\" -exec chown -h \"$username\" {} \; , result: $?"
3 changes: 2 additions & 1 deletion container_files/usr-local-bin/gsh
@@ -10,9 +10,10 @@ export GSH_JVMARGS="$GSH_JVMARGS -DENV=$ENV -DUSERTOKEN=$USERTOKEN"
# openshift cannot do whoami
if [ "$GROUPER_GSH_CHECK_USER" = "true" ] && [ "$GROUPER_GSH_USER" != "$(whoami)" ]
then
echo "grouperContainer; INFO: (gsh file) sudo --preserve-env -u tomcat bin/gsh.sh \"$@\" | tee /tmp/loggrouper"
sudo --preserve-env -u tomcat bin/gsh.sh "$@" | tee /tmp/loggrouper
else
echo "grouperContainer; INFO: (gsh file) bin/gsh.sh \"$@\" | tee /tmp/loggrouper"
exec bin/gsh.sh "$@" | tee /tmp/loggrouper

fi

4 changes: 3 additions & 1 deletion container_files/usr-local-bin/library.sh
@@ -27,7 +27,9 @@ echo "grouperContainer; INFO: (library.sh) Start loading library.sh"
# need this before the copy happens
if [ -f /opt/grouper/slashRoot/usr/local/bin/grouperScriptHooks.sh ] ; then
cp /opt/grouper/slashRoot/usr/local/bin/grouperScriptHooks.sh /usr/local/bin/grouperScriptHooks.sh
echo "grouperContainer; INFO: (library.sh) cp /opt/grouper/slashRoot/usr/local/bin/grouperScriptHooks.sh /usr/local/bin/grouperScriptHooks.sh, result=$?"
returnCode=$?
echo "grouperContainer; INFO: (library.sh) cp /opt/grouper/slashRoot/usr/local/bin/grouperScriptHooks.sh /usr/local/bin/grouperScriptHooks.sh, result=$returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi
# implementations of custom hooks
. /usr/local/bin/grouperScriptHooks.sh
214 changes: 173 additions & 41 deletions container_files/usr-local-bin/libraryPrep.sh

Large diffs are not rendered by default.

60 changes: 48 additions & 12 deletions container_files/usr-local-bin/libraryPrepOnly.sh
@@ -3,56 +3,92 @@
prepOnly_component() {
if [ "$GROUPER_WS" = "true" ] && [ "$GROUPER_UI" != "true" ] && [ "$GROUPER_SCIM" != "true" ] && [ "$GROUPER_DAEMON" != "true" ]
then
if [ -z "$GROUPER_WS_ONLY" ] ; then export GROUPER_WS_ONLY=true; fi
if [ -z "$GROUPER_WS_ONLY" ] ; then
echo "grouperContainer; INFO: (libraryPrep.sh-prepOnly_component) export GROUPER_WS_ONLY=true"
export GROUPER_WS_ONLY=true
fi
fi

if [ "$GROUPER_WS" != "true" ] && [ "$GROUPER_UI" != "true" ] && [ "$GROUPER_SCIM" = "true" ] && [ "$GROUPER_DAEMON" != "true" ]
then
if [ -z "$GROUPER_SCIM_ONLY" ] ; then export GROUPER_SCIM_ONLY=true; fi
if [ -z "$GROUPER_SCIM_ONLY" ] ; then
echo "grouperContainer; INFO: (libraryPrep.sh-prepOnly_component) export GROUPER_SCIM_ONLY=true"
export GROUPER_SCIM_ONLY=true
fi
fi

if [ "$GROUPER_WS" != "true" ] && [ "$GROUPER_UI" = "true" ] && [ "$GROUPER_SCIM" != "true" ] && [ "$GROUPER_DAEMON" != "true" ]
then
if [ -z "$GROUPER_UI_ONLY" ] ; then export GROUPER_UI_ONLY=true; fi
if [ -z "$GROUPER_UI_ONLY" ] ; then
echo "grouperContainer; INFO: (libraryPrep.sh-prepOnly_component) export GROUPER_UI_ONLY=true"
export GROUPER_UI_ONLY=true
fi
fi

if [ "$GROUPER_WS" != "true" ] && [ "$GROUPER_UI" != "true" ] && [ "$GROUPER_SCIM" != "true" ] && [ "$GROUPER_DAEMON" = "true" ]
then
if [ -z "$GROUPER_DAEMON_ONLY" ] ; then export GROUPER_DAEMON_ONLY=true; fi
if [ -z "$GROUPER_DAEMON_ONLY" ] ; then
echo "grouperContainer; INFO: (libraryPrep.sh-prepOnly_component) export GROUPER_DAEMON_ONLY=true"
export GROUPER_DAEMON_ONLY=true
fi
fi
}

prepOnly_ui() {
if [ "$GROUPER_UI_ONLY" = "true" ]
then
if [ -z "$GROUPER_LOG_PREFIX" ]; then export GROUPER_LOG_PREFIX=grouper-ui; fi
if [ -z "$GROUPER_LOG_PREFIX" ]; then
echo "grouperContainer; INFO: (libraryPrep.sh-prepOnly_ui) export GROUPER_LOG_PREFIX=grouper-ui"
export GROUPER_LOG_PREFIX=grouper-ui
fi
fi
}

prepOnly_ws() {
if [ "$GROUPER_WS_ONLY" = "true" ]
then
if [ -z "$GROUPER_LOG_PREFIX" ]; then export GROUPER_LOG_PREFIX=grouper-ws; fi
if [ -z "$GROUPER_CONTEXT_COOKIES" ]; then export GROUPER_CONTEXT_COOKIES=false; fi
if [ -z "$GROUPER_LOG_PREFIX" ]; then export
echo "grouperContainer; INFO: (libraryPrep.sh-prepOnly_ui) export GROUPER_LOG_PREFIX=grouper-ws"
GROUPER_LOG_PREFIX=grouper-ws
fi
if [ -z "$GROUPER_CONTEXT_COOKIES" ]; then
echo "grouperContainer; INFO: (libraryPrep.sh-prepOnly_ui) export GROUPER_CONTEXT_COOKIES=false"
export GROUPER_CONTEXT_COOKIES=false
fi
# default to whatever ws context is
if [ -z "$GROUPER_TOMCAT_CONTEXT" ] ; then export GROUPER_TOMCAT_CONTEXT="$GROUPERWS_URL_CONTEXT"; fi
if [ -z "$GROUPER_TOMCAT_CONTEXT" ] ; then
echo "grouperContainer; INFO: (libraryPrep.sh-prepOnly_ui) GROUPER_TOMCAT_CONTEXT=$GROUPERWS_URL_CONTEXT"
export GROUPER_TOMCAT_CONTEXT="$GROUPERWS_URL_CONTEXT"
fi
fi
}

prepOnly_scim() {
if [ "$GROUPER_SCIM_ONLY" = "true" ]
then
if [ -z "$GROUPER_LOG_PREFIX" ]; then export GROUPER_LOG_PREFIX=grouper-scim; fi
if [ -z "$GROUPER_CONTEXT_COOKIES" ]; then export GROUPER_CONTEXT_COOKIES=false; fi
if [ -z "$GROUPER_LOG_PREFIX" ]; then
echo "grouperContainer; INFO: (libraryPrep.sh-prepOnly_scim) GROUPER_LOG_PREFIX=grouper-scim"
export GROUPER_LOG_PREFIX=grouper-scim
fi
if [ -z "$GROUPER_CONTEXT_COOKIES" ]; then
echo "grouperContainer; INFO: (libraryPrep.sh-prepOnly_scim) GROUPER_CONTEXT_COOKIES=false"
export GROUPER_CONTEXT_COOKIES=false
fi
# default to whatever scim context is
if [ -z "$GROUPER_TOMCAT_CONTEXT" ] ; then export GROUPER_TOMCAT_CONTEXT="$GROUPERSCIM_URL_CONTEXT"; fi
if [ -z "$GROUPER_TOMCAT_CONTEXT" ] ; then
echo "grouperContainer; INFO: (libraryPrep.sh-prepOnly_scim) GROUPER_TOMCAT_CONTEXT=$GROUPERSCIM_URL_CONTEXT"
export GROUPER_TOMCAT_CONTEXT="$GROUPERSCIM_URL_CONTEXT"
fi
fi
}

prepOnly_daemon() {
if [ "$GROUPER_DAEMON_ONLY" = "true" ]
then
if [ -z "$GROUPER_LOG_PREFIX" ]; then export GROUPER_LOG_PREFIX=grouper-daemon; fi
if [ -z "$GROUPER_LOG_PREFIX" ]; then
echo "grouperContainer; INFO: (libraryPrep.sh-prepOnly_daemon) GROUPER_LOG_PREFIX=grouper-daemon"
export GROUPER_LOG_PREFIX=grouper-daemon
fi
fi
}

130 changes: 104 additions & 26 deletions container_files/usr-local-bin/librarySetupFiles.sh
@@ -7,12 +7,24 @@ setupFiles_linkGrouperSecrets() {

if [[ $label_file == grouper_* ]]; then
ln -sf /run/secrets/$label_file /opt/grouper/grouperWebapp/WEB-INF/classes/$file
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_linkGrouperSecrets) ln -sf /run/secrets/$label_file /opt/grouper/grouperWebapp/WEB-INF/classes/$file, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
elif [[ $label_file == shib_* ]]; then
ln -sf /run/secrets/$label_file /etc/shibboleth/$file
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_linkGrouperSecrets) ln -sf /run/secrets/$label_file /etc/shibboleth/$file, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
elif [[ $label_file == httpd_* ]]; then
ln -sf /run/secrets/$label_file /etc/httpd/conf.d/$file
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_linkGrouperSecrets) ln -sf /run/secrets/$label_file /etc/httpd/conf.d/$file, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
elif [ "$label_file" == "host-key.pem" ]; then
ln -sf /run/secrets/host-key.pem /etc/pki/tls/private/host-key.pem
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_linkGrouperSecrets) ln -sf /run/secrets/host-key.pem /etc/pki/tls/private/host-key.pem, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi
done
}
@@ -21,8 +33,10 @@ setupFiles_rsyncSlashRoot() {
if [ -d "/opt/grouper/slashRoot" ]; then
# Copy any files into the root filesystem
rsync -l -r -v /opt/grouper/slashRoot/ /
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_rsyncSlashRoot) rsync -l -r -v /opt/grouper/slashRoot/ /, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi

}

setupFiles_localLogging() {
@@ -47,10 +61,10 @@ setupFiles_chownDirs() {
# do this last
if [ "$GROUPER_CHOWN_DIRS" = "true" ]
then
chown -R tomcat:tomcat /opt/grouper/grouperWebapp
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_chownDirs) chown -R tomcat:tomcat /opt/grouper/grouperWebapp, result: $?"
chown -R tomcat:tomcat /opt/tomee
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_chownDirs) chown -R tomcat:tomcat /opt/tomee, result: $?"
chown -R tomcat:tomcat /opt/grouper/grouperWebapp /opt/tomee
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_chownDirs) chown -R tomcat:tomcat /opt/grouper/grouperWebapp /opt/tomee, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi
}

@@ -64,18 +78,25 @@ setupFiles_storeEnvVars() {
# go through env vars, should start with GROUPER and have an equals sign in there
env | grep "^GROUPER" | grep "=" | sort >> /opt/grouper/grouperEnv.sh

returnCode=$?
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_storeEnvVars) env | grep \"^GROUPER\" | grep \"=\" | sort >> /opt/grouper/grouperEnv.sh, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi

sed -i "s|^GROUPER|export GROUPER|g" /opt/grouper/grouperEnv.sh

if [ ! -f /home/tomcat/.bashrc ]
then
echo "grouperContainer; ERROR: (librarySetupFiles.sh-setupFiles_storeEnvVars) Why doesnt /home/tomcat/.bashrc exist????"
exit 1
fi
fi
if ! grep -q grouperEnv /home/tomcat/.bashrc
then
echo "" >> /home/tomcat/.bashrc
echo "" >> /home/tomcat/.bashrc
echo ". /opt/grouper/grouperEnv.sh" >> /home/tomcat/.bashrc
echo "" >> /home/tomcat/.bashrc
echo "" >> /home/tomcat/.bashrc
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_storeEnvVars) echo \". /opt/grouper/grouperEnv.sh\" >> /home/tomcat/.bashrc , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi

# if we own this file (i.e. running as root)
@@ -94,6 +115,9 @@ setupFiles_storeEnvVars() {
echo "export JAVA_HOME=$JAVA_HOME" >> /etc/bashrc
echo "export PATH=$JAVA_HOME/bin:\$PATH" >> /etc/bashrc
echo "" >> /etc/bashrc
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_storeEnvVars) echo env var script to /etc/bashrc, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi
fi
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_storeEnvVars) End store env vars in /opt/grouper/grouperEnv.sh"
@@ -128,56 +152,110 @@ setupFiles_analyzeOriginalFiles() {
setupFiles_originalFile /opt/tomee/conf/Catalina/localhost/grouper.xml
original_file=$?
if [ -z "$GROUPER_ORIGFILE_GROUPER_XML" ] && [[ $original_file -eq 0 ]]
then export GROUPER_ORIGFILE_GROUPER_XML=true; fi
if [ -z "$GROUPER_ORIGFILE_GROUPER_XML" ] ; then export GROUPER_ORIGFILE_GROUPER_XML=false; fi
then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_GROUPER_XML=true"
export GROUPER_ORIGFILE_GROUPER_XML=true
fi
if [ -z "$GROUPER_ORIGFILE_GROUPER_XML" ] ; then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_GROUPER_XML=false"
export GROUPER_ORIGFILE_GROUPER_XML=false
fi

setupFiles_originalFile /opt/tomee/conf/server.xml
original_file=$?
if [ -z "$GROUPER_ORIGFILE_SERVER_XML" ] && [[ $original_file -eq 0 ]]
then export GROUPER_ORIGFILE_SERVER_XML=true; fi
if [ -z "$GROUPER_ORIGFILE_SERVER_XML" ] ; then export GROUPER_ORIGFILE_SERVER_XML=false; fi
then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_SERVER_XML=true"
export GROUPER_ORIGFILE_SERVER_XML=true
fi
if [ -z "$GROUPER_ORIGFILE_SERVER_XML" ] ; then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_SERVER_XML=false"
export GROUPER_ORIGFILE_SERVER_XML=false
fi

setupFiles_originalFile /opt/grouper/grouperWebapp/WEB-INF/classes/log4j.properties
original_file=$?
if [ -z "$GROUPER_ORIGFILE_LOG4J_PROPERTIES" ] && [[ $original_file -eq 0 ]]
then export GROUPER_ORIGFILE_LOG4J_PROPERTIES=true; fi
if [ -z "$GROUPER_ORIGFILE_LOG4J_PROPERTIES" ] ; then export GROUPER_ORIGFILE_LOG4J_PROPERTIES=false; fi
then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_LOG4J_PROPERTIES=true"
export GROUPER_ORIGFILE_LOG4J_PROPERTIES=true
fi
if [ -z "$GROUPER_ORIGFILE_LOG4J_PROPERTIES" ] ; then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_LOG4J_PROPERTIES=false"
export GROUPER_ORIGFILE_LOG4J_PROPERTIES=false
fi

setupFiles_originalFile /etc/httpd/conf/httpd.conf
original_file=$?
if [ -z "$GROUPER_ORIGFILE_HTTPD_CONF" ] && [[ $original_file -eq 0 ]]
then export GROUPER_ORIGFILE_HTTPD_CONF=true; fi
if [ -z "$GROUPER_ORIGFILE_HTTPD_CONF" ] ; then export GROUPER_ORIGFILE_HTTPD_CONF=false; fi
then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_HTTPD_CONF=true"
export GROUPER_ORIGFILE_HTTPD_CONF=true
fi
if [ -z "$GROUPER_ORIGFILE_HTTPD_CONF" ] ; then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_HTTPD_CONF=false"
export GROUPER_ORIGFILE_HTTPD_CONF=false
fi

setupFiles_originalFile /etc/httpd/conf.d/ssl-enabled.conf
original_file=$?
if [ -z "$GROUPER_ORIGFILE_SSL_ENABLED_CONF" ] && [[ $original_file -eq 0 ]]
then export GROUPER_ORIGFILE_SSL_ENABLED_CONF=true; fi
if [ -z "$GROUPER_ORIGFILE_SSL_ENABLED_CONF" ] ; then export GROUPER_ORIGFILE_SSL_ENABLED_CONF=false; fi
then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_SSL_ENABLED_CONF=true"
export GROUPER_ORIGFILE_SSL_ENABLED_CONF=true
fi
if [ -z "$GROUPER_ORIGFILE_SSL_ENABLED_CONF" ] ; then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_SSL_ENABLED_CONF=false"
export GROUPER_ORIGFILE_SSL_ENABLED_CONF=false
fi

setupFiles_originalFile /etc/httpd/conf.d/httpd-shib.conf
original_file=$?
if [ -z "$GROUPER_ORIGFILE_HTTPD_SHIB_CONF" ] && [[ $original_file -eq 0 ]]
then export GROUPER_ORIGFILE_HTTPD_SHIB_CONF=true; fi
if [ -z "$GROUPER_ORIGFILE_HTTPD_SHIB_CONF" ] ; then export GROUPER_ORIGFILE_HTTPD_SHIB_CONF=false; fi
then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_HTTPD_SHIB_CONF=true"
export GROUPER_ORIGFILE_HTTPD_SHIB_CONF=true
fi
if [ -z "$GROUPER_ORIGFILE_HTTPD_SHIB_CONF" ] ; then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_HTTPD_SHIB_CONF=false"
export GROUPER_ORIGFILE_HTTPD_SHIB_CONF=false
fi

setupFiles_originalFile /etc/httpd/conf.d/shib.conf
original_file=$?
if [ -z "$GROUPER_ORIGFILE_SHIB_CONF" ] && [[ $original_file -eq 0 ]]
then export GROUPER_ORIGFILE_SHIB_CONF=true; fi
if [ -z "$GROUPER_ORIGFILE_SHIB_CONF" ] ; then export GROUPER_ORIGFILE_SHIB_CONF=false; fi
then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_SHIB_CONF=true"
export GROUPER_ORIGFILE_SHIB_CONF=true
fi
if [ -z "$GROUPER_ORIGFILE_SHIB_CONF" ] ; then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_SHIB_CONF=false"
export GROUPER_ORIGFILE_SHIB_CONF=false
fi

setupFiles_originalFile /opt/tomee/conf/Catalina/localhost/grouper.xml
original_file=$?
if [ -z "$GROUPER_ORIGFILE_GROUPER_XML" ] && [[ $original_file -eq 0 ]]
then export GROUPER_ORIGFILE_GROUPER_XML=true; fi
if [ -z "$GROUPER_ORIGFILE_GROUPER_XML" ] ; then export GROUPER_ORIGFILE_GROUPER_XML=false; fi
then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_GROUPER_XML=true"
export GROUPER_ORIGFILE_GROUPER_XML=true
fi
if [ -z "$GROUPER_ORIGFILE_GROUPER_XML" ] ; then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_GROUPER_XML=false"
export GROUPER_ORIGFILE_GROUPER_XML=false
fi

setupFiles_originalFile /opt/grouper/grouperWebapp/WEB-INF/web.xml
original_file=$?
if [ -z "$GROUPER_ORIGFILE_WEBAPP_WEB_XML" ] && [[ $original_file -eq 0 ]]
then export GROUPER_ORIGFILE_WEBAPP_WEB_XML=true; fi
if [ -z "$GROUPER_ORIGFILE_WEBAPP_WEB_XML" ] ; then export GROUPER_ORIGFILE_WEBAPP_WEB_XML=false; fi
then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_WEBAPP_WEB_XML=true"
export GROUPER_ORIGFILE_WEBAPP_WEB_XML=true
fi
if [ -z "$GROUPER_ORIGFILE_WEBAPP_WEB_XML" ] ; then
echo "grouperContainer; INFO: (librarySetupFiles.sh-setupFiles_analyzeOriginalFiles) export GROUPER_ORIGFILE_WEBAPP_WEB_XML=false"
export GROUPER_ORIGFILE_WEBAPP_WEB_XML=false
fi

}

32 changes: 26 additions & 6 deletions container_files/usr-local-bin/librarySetupFilesApache.sh
@@ -1,14 +1,19 @@
#!/bin/bash

setupFilesApache_indexes() {
if [ "$GROUPER_APACHE_DIRECTORY_INDEXES" = "false" ]
if [ "$GROUPER_RUN_APACHE" = "true" ] && [ "$GROUPER_APACHE_DIRECTORY_INDEXES" = "false" ]
then
if [ "$GROUPER_ORIGFILE_HTTPD_CONF" = "true" ]; then
# take out the directory indexes from the docroot
cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.pre_noindexes
echo "grouperContainer; INFO: (librarySetupFilesApache.sh-setupFilesApache_indexes) cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.pre_noindexes , result=$?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesApache.sh-setupFilesApache_indexes) cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.pre_noindexes, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi

patch /etc/httpd/conf/httpd.conf /etc/httpd/conf.d/httpd.conf.noindexes.patch
echo "grouperContainer; INFO: (librarySetupFilesApache.sh-setupFilesApache_indexes) Patch httpd.conf to turn off indexes 'patch /etc/httpd/conf/httpd.conf /etc/httpd/conf.d/httpd.conf.noindexes.patch' result=$?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesApache.sh-setupFilesApache_indexes) Patch httpd.conf to turn off indexes 'patch /etc/httpd/conf/httpd.conf /etc/httpd/conf.d/httpd.conf.noindexes.patch' result=$returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
else
echo "grouperContainer; INFO: (librarySetupFilesApache.sh-setupFilesApache_indexes) /etc/httpd/conf/httpd.conf is not the original file so will not be changed"
fi
@@ -21,7 +26,9 @@ setupFilesApache_selfSignedCert() {
then
if [ "$GROUPER_ORIGFILE_SSL_ENABLED_CONF" = "true" ]; then
cp /opt/tier-support/ssl-enabled.conf /etc/httpd/conf.d/
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesApache.sh-setupFilesApache_selfSignedCert) cp /opt/tier-support/ssl-enabled.conf /etc/httpd/conf.d/ , result: $?"
if [ $returnCode != 0 ]; then exit $returnCode; fi
else
echo "grouperContainer; INFO: (librarySetupFilesApache.sh-setupFilesApache_selfSignedCert) /opt/tier-support/ssl-enabled.conf is not the original file so will not be edited"
fi
@@ -34,12 +41,16 @@ setupFilesApache_ssl() {
if [ -f /etc/httpd/conf.d/ssl.conf ]
then
mv /etc/httpd/conf.d/ssl.conf /etc/httpd/conf.d/ssl.conf.dontuse
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesApache.sh-setupFilesApache_ssl) mv /etc/httpd/conf.d/ssl.conf /etc/httpd/conf.d/ssl.conf.dontuse , result: $?"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi
if [ -f /etc/httpd/conf.d/ssl-enabled.conf ]
then
mv -v /etc/httpd/conf.d/ssl-enabled.conf /etc/httpd/conf.d/ssl-enabled.conf.dontuse
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesApache.sh-setupFilesApache_ssl) mv -v /etc/httpd/conf.d/ssl-enabled.conf /etc/httpd/conf.d/ssl-enabled.conf.dontuse , result: $?"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi
fi
}
@@ -54,6 +65,9 @@ setupFilesApache_serverName() {
echo "ServerName $GROUPER_APACHE_SERVER_NAME" >> /etc/httpd/conf.d/grouper-www.conf
echo "UseCanonicalName On" >> /etc/httpd/conf.d/grouper-www.conf
echo >> /etc/httpd/conf.d/grouper-www.conf
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesApache.sh-setupFilesApache_serverName) Setup ServerName $GROUPER_APACHE_SERVER_NAME in /etc/httpd/conf.d/grouper-www.conf , result: $?"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi

}
@@ -62,8 +76,10 @@ setupFilesApache_serverName() {
setupFilesApache_supervisor() {
if [ "$GROUPER_RUN_APACHE" = "true" ]
then
echo "grouperContainer; INFO: (librarySetupFilesApache.sh-setupFilesApache_supervisor) Appending supervisord-httpd.conf to supervisord.conf"
cat /opt/tier-support/supervisord-httpd.conf >> /opt/tier-support/supervisord.conf
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesApache.sh-setupFilesApache_supervisor) cat /opt/tier-support/supervisord-httpd.conf >> /opt/tier-support/supervisord.conf , result: $?"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi

}
@@ -75,13 +91,17 @@ setupFilesApache_ports() {
if [ "$GROUPER_RUN_APACHE" = "true" ] && [ -f /etc/httpd/conf.d/ssl-enabled.conf ]
then
sed -i "s|__GROUPER_APACHE_SSL_PORT__|$GROUPER_APACHE_SSL_PORT|g" /etc/httpd/conf.d/ssl-enabled.conf
echo "grouperContainer; INFO: (librarySetupFilesApache.sh-setupFilesApache_ports) Replace apache ssl port in ssl-enabled.conf', result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesApache.sh-setupFilesApache_ports) sed -i \"s|__GROUPER_APACHE_SSL_PORT__|$GROUPER_APACHE_SSL_PORT|g\" /etc/httpd/conf.d/ssl-enabled.conf , result: $?"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi

if [ "$GROUPER_RUN_APACHE" = "true" ] && [ "$GROUPER_APACHE_NONSSL_PORT" != "80" ]
then
sed -i "s|Listen 80|Listen $GROUPER_APACHE_NONSSL_PORT|g" /etc/httpd/conf/httpd.conf
echo "grouperContainer; INFO: (librarySetupFilesApache.sh-setupFilesApache_ports) Replace apache non-ssl port in httpd.conf', result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesApache.sh-setupFilesApache_ports) Replace apache non-ssl port in httpd.conf, sed -i \"s|Listen 80|Listen $GROUPER_APACHE_NONSSL_PORT|g\" /etc/httpd/conf/httpd.conf , result: $?"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi

}
20 changes: 15 additions & 5 deletions container_files/usr-local-bin/librarySetupFilesForComponent.sh
@@ -6,7 +6,9 @@ setupFilesForComponent_ws() {
if [ "$GROUPER_WS" = "true" ]
then
cp -r /opt/grouper/grouperWebapp/WEB-INF/libWs/* /opt/grouper/grouperWebapp/WEB-INF/lib/
echo "grouperContainer; INFO: (librarySetupFilesForComponent.sh-setupFilesForComponent_ws) cp -r /opt/grouper/grouperWebapp/WEB-INF/libWs/* /opt/grouper/grouperWebapp/WEB-INF/lib/ , result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesForComponent.sh-setupFilesForComponent_ws) cp -r /opt/grouper/grouperWebapp/WEB-INF/libWs/* /opt/grouper/grouperWebapp/WEB-INF/lib/ , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi

}
@@ -16,7 +18,9 @@ setupFilesForComponent_scim() {
if [ "$GROUPER_SCIM" = "true" ]
then
cp -r /opt/grouper/grouperWebapp/WEB-INF/libScim/* /opt/grouper/grouperWebapp/WEB-INF/lib/
echo "grouperContainer; INFO: (librarySetupFilesForComponent.sh-setupFilesForComponent_scim) cp -r /opt/grouper/grouperWebapp/WEB-INF/libScim/* /opt/grouper/grouperWebapp/WEB-INF/lib/ , result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesForComponent.sh-setupFilesForComponent_scim) cp -r /opt/grouper/grouperWebapp/WEB-INF/libScim/* /opt/grouper/grouperWebapp/WEB-INF/lib/ , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi

}
@@ -26,7 +30,9 @@ setupFilesForComponent_ui() {
if [ "$GROUPER_UI" = "true" ] || [ "$GROUPER_DAEMON" = "true" ]
then
cp -r /opt/grouper/grouperWebapp/WEB-INF/libUiAndDaemon/* /opt/grouper/grouperWebapp/WEB-INF/lib/
echo "grouperContainer; INFO: (librarySetupFilesForComponent.sh-setupFilesForComponent_ui) cp -r /opt/grouper/grouperWebapp/WEB-INF/libUiAndDaemon/* /opt/grouper/grouperWebapp/WEB-INF/lib/ , result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesForComponent.sh-setupFilesForComponent_ui) cp -r /opt/grouper/grouperWebapp/WEB-INF/libUiAndDaemon/* /opt/grouper/grouperWebapp/WEB-INF/lib/ , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi

}
@@ -39,13 +45,17 @@ setupFilesForComponent_quickstart() {
then
echo '' >> /opt/grouper/grouperWebapp/WEB-INF/classes/grouper.hibernate.base.properties
echo 'grouperPasswordConfigOverride_UI_GrouperSystem_pass.elConfig = ${elUtils.processEnvVarOrFile('"'"'GROUPERSYSTEM_QUICKSTART_PASS'"'"')}' >> /opt/grouper/grouperWebapp/WEB-INF/classes/grouper.hibernate.properties
echo "grouperContainer; INFO: (librarySetupFilesForComponent.sh-setupFilesForComponent_quickstart) edit grouper.hibernate.base.properties with UI GrouperSystem password for quick start, result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesForComponent.sh-setupFilesForComponent_quickstart) edit grouper.hibernate.base.properties with UI GrouperSystem password for quick start, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi
if [ "$GROUPER_WS_GROUPER_AUTH" = 'true' ]
then
echo '' >> /opt/grouper/grouperWebapp/WEB-INF/classes/grouper.hibernate.base.properties
echo 'grouperPasswordConfigOverride_WS_GrouperSystem_pass.elConfig = ${elUtils.processEnvVarOrFile('"'"'GROUPERSYSTEM_QUICKSTART_PASS'"'"')}' >> /opt/grouper/grouperWebapp/WEB-INF/classes/grouper.hibernate.properties
echo "grouperContainer; INFO: (librarySetupFilesForComponent.sh-setupFilesForComponent_quickstart) edit grouper.hibernate.base.properties with WS GrouperSystem password for quick start, result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesForComponent.sh-setupFilesForComponent_quickstart) edit grouper.hibernate.base.properties with WS GrouperSystem password for quick start, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi
fi

40 changes: 28 additions & 12 deletions container_files/usr-local-bin/librarySetupFilesForProcess.sh
@@ -2,31 +2,35 @@

setupFilesForProcess_hsqldb() {
# construct the supervisord file based on FLAGS passed in or what was in CMD

if [ "$GROUPER_RUN_HSQLDB" = "true" ]
then
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_hsqldb) Appending supervisord-hsqldb.conf to supervisord.conf"
cat /opt/tier-support/supervisord-hsqldb.conf >> /opt/tier-support/supervisord.conf
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_hsqldb) cat /opt/tier-support/supervisord-hsqldb.conf >> /opt/tier-support/supervisord.conf , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi

}

setupFilesForProcess_hsqldbVersions() {

# tomee hsql must match the grouper one, and the version cannot be 2.3.2 since it is query bugs (unit tests fail)
rm -f /opt/tomee/lib/hsqldb-*.jar
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_hsqldbVersions) rm -f /opt/tomee/lib/hsqldb-*.jar , result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_hsqldbVersions) rm -f /opt/tomee/lib/hsqldb-*.jar , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
cp /opt/grouper/grouperWebapp/WEB-INF/lib/hsqldb-*.jar /opt/tomee/lib/
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_hsqldbVersions) cp /opt/grouper/grouperWebapp/WEB-INF/lib/hsqldb-*.jar /opt/tomee/lib/ , result: $?"

returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_hsqldbVersions) cp /opt/grouper/grouperWebapp/WEB-INF/lib/hsqldb-*.jar /opt/tomee/lib/ , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
}

setupFilesForProcess_supervisor() {

if [ "$GROUPER_RUN_TOMCAT_NOT_SUPERVISOR" != "true" ]; then
# clear out existing supervisord config
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_supervisor) Clear out supervisor.conf"
cat /opt/tier-support/supervisord-base.conf > /opt/tier-support/supervisord.conf
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_supervisor) Clear out supervisor.conf , result: $returnCode"
returnCode=$?
fi
}

@@ -47,11 +51,15 @@ setupFilesForProcess_supervisorFinal() {
then
# let these lines live
sed -i "s|__GROUPER_RUN_PROCESSES_AS_USERS__||g" /opt/tier-support/supervisord.conf
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_supervisorFinal) Running processes as users in supervisord.conf, result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_supervisorFinal) Running processes as users in supervisord.conf, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
else
# comment out these lines
sed -i "s|__GROUPER_RUN_PROCESSES_AS_USERS__|;|g" /opt/tier-support/supervisord.conf
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_supervisorFinal) Commenting out running processes as users in supervisord.conf, result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_supervisorFinal) Commenting out running processes as users in supervisord.conf, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi
fi
}
@@ -62,7 +70,9 @@ setupFilesForProcess_shib() {
if [ -f /etc/httpd/conf.d/shib.conf ]
then
mv /etc/httpd/conf.d/shib.conf /etc/httpd/conf.d/shib.conf.dontuse
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_shib) mv /etc/httpd/conf.d/shib.conf /etc/httpd/conf.d/shib.conf.dontuse , result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_shib) mv /etc/httpd/conf.d/shib.conf /etc/httpd/conf.d/shib.conf.dontuse , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi

fi

@@ -71,15 +81,21 @@ setupFilesForProcess_shib() {
export LD_LIBRARY_PATH=/opt/shibboleth/lib64:$LD_LIBRARY_PATH
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_shib) Appending supervisord-shibsp.conf to supervisord.conf"
cat /opt/tier-support/supervisord-shibsp.conf >> /opt/tier-support/supervisord.conf
returnCode=$?
if [ $returnCode != 0 ]; then exit $returnCode; fi
if [ "$GROUPER_ORIGFILE_HTTPD_SHIB_CONF" = "true" ]; then
cp /opt/tier-support/httpd-shib.conf /etc/httpd/conf.d/
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_shib) cp /opt/tier-support/httpd-shib.conf /etc/httpd/conf.d/ , result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_shib) cp /opt/tier-support/httpd-shib.conf /etc/httpd/conf.d/ , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
else
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_shib) /etc/httpd/conf.d/httpd-shib.conf is not the original file so will not be edited"
fi
if [ "$GROUPER_ORIGFILE_SHIB_CONF" = "true" ]; then
mv /etc/httpd/conf.d/shib.conf.dontuse /etc/httpd/conf.d/shib.conf
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_shib) mv /etc/httpd/conf.d/shib.conf.dontuse /etc/httpd/conf.d/shib.conf , result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_shib) mv /etc/httpd/conf.d/shib.conf.dontuse /etc/httpd/conf.d/shib.conf , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
else
echo "grouperContainer; INFO: (librarySetupFilesForProcess.sh-setupFilesForProcess_shib) /etc/httpd/conf.d/shib.conf is not the original file so will not be edited"
fi
89 changes: 64 additions & 25 deletions container_files/usr-local-bin/librarySetupFilesTomcat.sh
@@ -12,14 +12,18 @@ setupFilesTomcat() {
}



setupFilesTomcat_turnOnAjp() {

if [ "$GROUPER_ORIGFILE_SERVER_XML" = "true" ]; then
cp /opt/tomee/conf/server.xml /opt/tomee/conf/server.xml.currentOriginalInContainer
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_turnOnAjp) cp /opt/tomee/conf/server.xml /opt/tomee/conf/server.xml.currentOriginalInContainer , result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_turnOnAjp) cp /opt/tomee/conf/server.xml /opt/tomee/conf/server.xml.currentOriginalInContainer , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi

patch /opt/tomee/conf/server.xml /opt/tomee/conf/server.xml.turnOnAjp.patch
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_turnOnAjp) Patch server.xml to turn on ajp, result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_turnOnAjp) Patch server.xml to turn on ajp: patch /opt/tomee/conf/server.xml /opt/tomee/conf/server.xml.turnOnAjp.patch, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
else
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_turnOnAjp) /opt/tomee/conf/server.xml is not the original file so will not be edited"
fi
@@ -31,14 +35,18 @@ setupFilesTomcat_accessLogs() {
if [ "$GROUPER_ORIGFILE_SERVER_XML" = "true" ]; then
if [ "$GROUPER_TOMCAT_LOG_ACCESS" = "true" ]; then

# this patch happens after the last patch
patch /opt/tomee/conf/server.xml /opt/tomee/conf/server.xml.loggingpipe.patch
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_accessLogs) Patch server.xml to log access, result: $?"
# this patch happens after the last patch
patch /opt/tomee/conf/server.xml /opt/tomee/conf/server.xml.loggingpipe.patch
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_accessLogs) Patch server.xml to log access: patch /opt/tomee/conf/server.xml /opt/tomee/conf/server.xml.loggingpipe.patch , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi

else

patch /opt/tomee/conf/server.xml /opt/tomee/conf/server.xml.nologging.patch
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_accessLogs) Patch server.xml to not log access, result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_accessLogs) Patch server.xml to not log access: patch /opt/tomee/conf/server.xml /opt/tomee/conf/server.xml.nologging.patch , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi

fi
else
@@ -51,17 +59,23 @@ setupFilesTomcat_ports() {

if [ "$GROUPER_TOMCAT_HTTP_PORT" != "8080" ]; then
sed -i "s|8080|$GROUPER_TOMCAT_HTTP_PORT|g" /opt/tomee/conf/server.xml
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_ports) update server.xml to change http port, result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_ports) update server.xml to change http port: sed -i \"s|8080|$GROUPER_TOMCAT_HTTP_PORT|g\" /opt/tomee/conf/server.xml, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi

if [ "$GROUPER_TOMCAT_AJP_PORT" != "8009" ]; then
sed -i "s|8009|$GROUPER_TOMCAT_AJP_PORT|g" /opt/tomee/conf/server.xml
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_ports) update server.xml to change ajp port, result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_ports) update server.xml to change ajp port: sed -i \"s|8009|$GROUPER_TOMCAT_AJP_PORT|g\" /opt/tomee/conf/server.xml, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi

if [ "$GROUPER_TOMCAT_SHUTDOWN_PORT" != "8005" ]; then
sed -i "s|8005|$GROUPER_TOMCAT_SHUTDOWN_PORT|g" /opt/tomee/conf/server.xml
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_ports) update server.xml to change shutdown port, result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_ports) update server.xml to change shutdown port: sed -i \"s|8005|$GROUPER_TOMCAT_SHUTDOWN_PORT|g\" /opt/tomee/conf/server.xml , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi
}

@@ -72,17 +86,23 @@ setupFilesTomcat_context() {
if [ "$GROUPER_ORIGFILE_GROUPER_XML" = "true" ]; then
# ws only and scim only dont have cookies
sed -i "s|__GROUPER_CONTEXT_COOKIES__|$GROUPER_CONTEXT_COOKIES|g" /opt/tomee/conf/Catalina/localhost/grouper.xml
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_context) Replace context cookies in grouper.xml, result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_context) Replace context cookies in grouper.xml: sed -i \"s|__GROUPER_CONTEXT_COOKIES__|$GROUPER_CONTEXT_COOKIES|g\" /opt/tomee/conf/Catalina/localhost/grouper.xml , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi

# setup context
sed -i "s|__GROUPER_TOMCAT_CONTEXT__|$GROUPER_TOMCAT_CONTEXT|g" /opt/tomee/conf/Catalina/localhost/grouper.xml
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_context) Replace tomcat context in grouper.xml, result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_context) Replace tomcat context in grouper.xml: sed -i \"s|__GROUPER_TOMCAT_CONTEXT__|$GROUPER_TOMCAT_CONTEXT|g\" /opt/tomee/conf/Catalina/localhost/grouper.xml, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi

# rename file if needed since that can matter with tomcat
if [ "$GROUPER_TOMCAT_CONTEXT" != "grouper" ]
then
mv -v /opt/tomee/conf/Catalina/localhost/grouper.xml "/opt/tomee/conf/Catalina/localhost/$GROUPER_TOMCAT_CONTEXT.xml"
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_context) mv -v /opt/tomee/conf/Catalina/localhost/grouper.xml /opt/tomee/conf/Catalina/localhost/$GROUPER_TOMCAT_CONTEXT.xml , result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_context) mv -v /opt/tomee/conf/Catalina/localhost/grouper.xml \"/opt/tomee/conf/Catalina/localhost/$GROUPER_TOMCAT_CONTEXT.xml\" , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi
else
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_context) /opt/tomee/conf/Catalina/localhost/grouper.xml is not the original file so will not be edited"
@@ -111,12 +131,14 @@ setupFilesTomcat_context() {
sed -i "s|__GROUPERSCIM_PROXY_PASS__|$GROUPERSCIM_PROXY_PASS|g" /etc/httpd/conf.d/grouper-www.conf
results="$results $?"
sed -i "s|__GROUPERWS_PROXY_PASS__|$GROUPERWS_PROXY_PASS|g" /etc/httpd/conf.d/grouper-www.conf
results="$results $?"
returnCode=$?
results="$results $returnCode"
if [ "$GROUPER_TOMCAT_AJP_PORT" != "8009" ]; then
sed -i "s|:8009/|:$GROUPER_TOMCAT_AJP_PORT/|g" /etc/httpd/conf.d/grouper-www.conf
results="$results $?"
fi
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_context) Set contexts in grouper-www.conf and other files, results: $results"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi

}
@@ -128,32 +150,45 @@ setupFilesTomcat_authn() {

if [ "$GROUPER_ORIGFILE_WEBAPP_WEB_XML" = "true" ]; then
cp /opt/tier-support/web.wsTomcatAuthn.xml /opt/grouper/grouperWebapp/WEB-INF/web.xml
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_authn) cp /opt/tier-support/web.wsTomcatAuthn.xml /opt/grouper/grouperWebapp/WEB-INF/web.xml , result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_authn) cp /opt/tier-support/web.wsTomcatAuthn.xml /opt/grouper/grouperWebapp/WEB-INF/web.xml , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
else
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_authn) /opt/grouper/grouperWebapp/WEB-INF/web.xml is not the original file so will not be edited"
fi

sed -i 's|tomcatAuthentication="false"|tomcatAuthentication="true"|g' /opt/tomee/conf/server.xml
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_authn) sed -i 's|tomcatAuthentication=''false''|tomcatAuthentication=''true''|g' /opt/tomee/conf/server.xml, result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_authn) sed -i 's|tomcatAuthentication=\"false\"|tomcatAuthentication=\"true\"|g' /opt/tomee/conf/server.xml, result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi

fi

}

setupFilesTomcat_loggingSlf4j() {

rm -f /opt/tomee/lib/slf4j-api*.jar
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_loggingSlf4j) rm -f /opt/tomee/lib/slf4j-api*.jar , result: $?"
rm -f /opt/tomee/lib/slf4j-jdk*.jar
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_loggingSlf4j) rm -f /opt/tomee/lib/slf4j-jdk*.jar , result: $?"
rm -f /opt/tomee/lib/slf4j-api*.jar /opt/tomee/lib/slf4j-jdk*.jar
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_loggingSlf4j) rm -f /opt/tomee/lib/slf4j-api*.jar /opt/tomee/lib/slf4j-jdk*.jar , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi

cp /opt/grouper/grouperWebapp/WEB-INF/lib/slf4j-api-*.jar /opt/tomee/lib
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_loggingSlf4j) cp /opt/grouper/grouperWebapp/WEB-INF/lib/slf4j-api-*.jar /opt/tomee/lib , result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_loggingSlf4j) cp /opt/grouper/grouperWebapp/WEB-INF/lib/slf4j-api-*.jar /opt/tomee/lib , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi

# tomee uses the jdk one
cp /opt/grouper/grouperWebapp/WEB-INF/lib/slf4j-jdk*.jar /opt/tomee/lib
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_loggingSlf4j) cp /opt/grouper/grouperWebapp/WEB-INF/lib/slf4j-jdk*.jar /opt/tomee/lib , result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_loggingSlf4j) cp /opt/grouper/grouperWebapp/WEB-INF/lib/slf4j-jdk*.jar /opt/tomee/lib , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi

# grouper uses the log4j one
rm -f /opt/grouper/grouperWebapp/WEB-INF/lib/slf4j-jdk*.jar
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_loggingSlf4j) rm -f /opt/grouper/grouperWebapp/WEB-INF/lib/slf4j-jdk*.jar , result: $?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_loggingSlf4j) rm -f /opt/grouper/grouperWebapp/WEB-INF/lib/slf4j-jdk*.jar , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi

}

@@ -162,7 +197,9 @@ setupFilesTomcat_supervisor() {
if [ "$GROUPER_RUN_TOMEE" = "true" ] && [ "$GROUPER_RUN_TOMCAT_NOT_SUPERVISOR" != "true" ]
then
cat /opt/tier-support/supervisord-tomee.conf >> /opt/tier-support/supervisord.conf
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_supervisor) Append supervisord-tomee.conf to supervisord.conf"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_supervisor) Append supervisord-tomee.conf to supervisord.conf: cat /opt/tier-support/supervisord-tomee.conf >> /opt/tier-support/supervisord.conf , result: $returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi

}
@@ -172,7 +209,9 @@ setupFilesTomcat_sessionTimeout() {
if [ "$GROUPER_RUN_TOMEE" = "true" ] && [ "$GROUPER_TOMCAT_SESSION_TIMEOUT_MINUTES" != "-2" ]
then
sed -i "s|<session-timeout>30</session-timeout>|<session-timeout>$GROUPER_TOMCAT_SESSION_TIMEOUT_MINUTES</session-timeout>|g" /opt/tomee/conf/web.xml
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_sessionTimeout) based on GROUPER_TOMCAT_SESSION_TIMEOUT_MINUTES, sed -i ''s|<session-timeout>30</session-timeout>|<session-timeout>$GROUPER_TOMCAT_SESSION_TIMEOUT_MINUTES</session-timeout>|g'' /opt/tomee/conf/web.xml , result=$?"
returnCode=$?
echo "grouperContainer; INFO: (librarySetupFilesTomcat.sh-setupFilesTomcat_sessionTimeout) based on GROUPER_TOMCAT_SESSION_TIMEOUT_MINUTES, sed -i \"s|<session-timeout>30</session-timeout>|<session-timeout>$GROUPER_TOMCAT_SESSION_TIMEOUT_MINUTES</session-timeout>|g\" /opt/tomee/conf/web.xml , result=$returnCode"
if [ $returnCode != 0 ]; then exit $returnCode; fi
fi
}

2 changes: 2 additions & 0 deletions container_files/usr-local-bin/librarySetupPipe.sh
@@ -4,8 +4,10 @@ setupPipe() {
echo "grouperContainer; INFO: (librarySetupPipe.sh-setupPipe) Setup pipe: $1"
if [ -e $1 ]; then
rm -f $1
returnCode=$?
fi
mkfifo -m 666 $1
returnCode=$?
}

setupPipe_logging() {

0 comments on commit 9b56c85

Please sign in to comment.