# Substitute @toolsLibDir@ for the value passed in during install
# Maps to 'lib' in the build output
tools_lib_dir=@toolsLibDir@
+
+# Substitute @cafInstallMode@ for the value passed in during install
+# No mapping in the build output since it is just a reference value
+install_mode=@cafInstallMode@
checkFileExists "$CAF_LIB_DIR/libVgAuthIntegrationSubsys.so"
checkFileExists "$CAF_LIB_DIR/libcom_err.so.3"
checkFileExists "$CAF_LIB_DIR/libcrypto.so.1.0.2"
- checkFileExists "$CAF_LIB_DIR/libgcc_s.so.1"
- checkFileExists "$CAF_LIB_DIR/libglib-2.0.so.0.4800.1"
- checkFileExists "$CAF_LIB_DIR/libgthread-2.0.so.0.4800.1"
+ if [ "$CAF_INSTALL_MODE" = "standalone" ]; then
+ checkFileExists "$CAF_LIB_DIR/libgcc_s.so.1"
+ checkFileExists "$CAF_LIB_DIR/libglib-2.0.so.0.4800.1"
+ checkFileExists "$CAF_LIB_DIR/libgthread-2.0.so.0.4800.1"
+ checkFileExists "$CAF_LIB_DIR/libstdc++.so.6.0.13"
+ checkFileExists "$CAF_LIB_DIR/libpcre.so.1.2.6"
+ checkFileExists "$CAF_LIB_DIR/libiconv.so.2.5.1"
+ checkFileExists "$CAF_LIB_DIR/libz.so.1.2.8"
+ checkFileExists "$CAF_LIB_DIR/libffi.so.6.0.4"
+ fi
checkFileExists "$CAF_LIB_DIR/liblog4cpp.so.5.0.6"
checkFileExists "$CAF_LIB_DIR/librabbitmq.so.4.2.1"
checkFileExists "$CAF_LIB_DIR/libssl.so.1.0.2"
- checkFileExists "$CAF_LIB_DIR/libstdc++.so.6.0.13"
checkFileExists "$CAF_LIB_DIR/libvgauth.so"
checkFileExists "$CAF_LIB_DIR/libxerces-c-3.1.so"
checkFileExists "$CAF_LIB_DIR/libxml-security-c.so.16"
- checkFileExists "$CAF_LIB_DIR/libpcre.so.1.2.6"
- checkFileExists "$CAF_LIB_DIR/libiconv.so.2.5.1"
- checkFileExists "$CAF_LIB_DIR/libz.so.1.2.8"
- checkFileExists "$CAF_LIB_DIR/libffi.so.6.0.4"
}
function checkFileExistsConfig() {
checkFileExists "$CAF_LIB_DIR/libManagementAgentHost.so"
checkFileExists "$CAF_LIB_DIR/liblog4cpp.so.5.0.6"
checkFileExists "$CAF_LIB_DIR/librabbitmq.so.4.2.1"
- checkFileExists "$CAF_LIB_DIR/libgthread-2.0.so.0.4800.1"
- checkFileExists "$CAF_LIB_DIR/libglib-2.0.so.0.4800.1"
+ if [ "$CAF_INSTALL_MODE" = "standalone" ]; then
+ checkFileExists "$CAF_LIB_DIR/libgthread-2.0.so.0.4800.1"
+ checkFileExists "$CAF_LIB_DIR/libglib-2.0.so.0.4800.1"
+ fi
fi
}
brokerAddr='#brokerAddr#'
linkSo='yes'
toolsLibDir='/usr/lib/vmware-tools/lib' # lib is symlink to either lib64 or lib32
+cafInstallMode='standalone'
#Help function
HELP() {
local pattern="$1"
local value="$2"
local rconfigDir="$3"
+ local key="$4" ## Add the key if not exists
if [ ! -n "$pattern" ]; then
echo 'The pattern cannot be empty!'
echo "The config file must exist! - $rconfigDir/cafenv-appconfig"
exit 1
fi
-
+ if [ -n "$key" -a `grep -c -E "^$key=" "$rconfigDir/cafenv-appconfig"` -eq 0 ]; then
+ echo >> "$rconfigDir"
+ echo "$key=$value" >> "$rconfigDir/cafenv-appconfig"
+ fi
sed -i "s?$pattern?$value?g" "$rconfigDir/cafenv-appconfig"
fi
}
;;
t)
toolsLibDir="$OPTARG"
+ cafInstallMode='tools'
;;
L)
linkSo='no'
setupCafConfig '@providersDir@' "$providersDir" "$configDir"
setupCafConfig '@invokersDir@' "$invokersDir" "$configDir"
setupCafConfig '@logDir@' "$logDir" "$configDir"
-setupCafConfig '@toolsLibDir@' "$toolsLibDir" "$configDir"
+setupCafConfig '@toolsLibDir@' "$toolsLibDir" "$configDir" 'tools_lib_dir'
+setupCafConfig '@cafInstallMode@' "$cafInstallMode" "$configDir" 'install_mode'
#Set default permissions
if [ -d "$libDir" ]; then
chmod 555 "$scriptDir"/*
fi
-#Set up links
+
+#Set up links only in case of CAF Standalone mode
if [ "$linkSo" != "no" ] ; then
cd "$libDir"
- ln -sf libglib-2.0.so.0.4800.1 libglib-2.0.so
- ln -sf libglib-2.0.so.0.4800.1 libglib-2.0.so.0
- ln -sf libgthread-2.0.so.0.4800.1 libgthread-2.0.so
- ln -sf libgthread-2.0.so.0.4800.1 libgthread-2.0.so.0
+ if [ "$cafInstallMode" = "standalone" ]; then
+ ln -sf libglib-2.0.so.0.4800.1 libglib-2.0.so
+ ln -sf libglib-2.0.so.0.4800.1 libglib-2.0.so.0
+ ln -sf libgthread-2.0.so.0.4800.1 libgthread-2.0.so
+ ln -sf libgthread-2.0.so.0.4800.1 libgthread-2.0.so.0
+ ln -sf libpcre.so.1.2.6 libpcre.so
+ ln -sf libpcre.so.1.2.6 libpcre.so.1
+ ln -sf libiconv.so.2.5.1 libiconv.so
+ ln -sf libiconv.so.2.5.1 libiconv.so.2
+ ln -sf libz.so.1.2.8 libz.so
+ ln -sf libz.so.1.2.8 libz.so.1
+ ln -sf libffi.so.6.0.4 libffi.so
+ ln -sf libffi.so.6.0.4 libffi.so.6
+ fi
ln -sf liblog4cpp.so.5.0.6 liblog4cpp.so
ln -sf liblog4cpp.so.5.0.6 liblog4cpp.so.5
ln -sf librabbitmq.so.4.2.1 librabbitmq.so
ln -sf librabbitmq.so.4.2.1 librabbitmq.so.4
- ln -sf libpcre.so.1.2.6 libpcre.so
- ln -sf libpcre.so.1.2.6 libpcre.so.1
- ln -sf libiconv.so.2.5.1 libiconv.so
- ln -sf libiconv.so.2.5.1 libiconv.so.2
- ln -sf libz.so.1.2.8 libz.so
- ln -sf libz.so.1.2.8 libz.so.1
- ln -sf libffi.so.6.0.4 libffi.so
- ln -sf libffi.so.6.0.4 libffi.so.6
fi
#Run provider install logic
scriptsDir=$installDir/../scripts
configDir=$installDir/../config
toolsLibDir='/usr/lib/vmware-tools/lib' # lib is symlink to either lib64 or lib32
-
+cafInstallMode='standalone'
#Help function
HELP() {
case $opt in
t)
toolsLibDir="$OPTARG"
+ cafInstallMode='tools'
;;
h)
HELP
fi
cd $CAF_LIB_DIR
-ln -sf libglib-2.0.so.0.4800.1 libglib-2.0.so
-ln -sf libglib-2.0.so.0.4800.1 libglib-2.0.so.0
-ln -sf libgthread-2.0.so.0.4800.1 libgthread-2.0.so
-ln -sf libgthread-2.0.so.0.4800.1 libgthread-2.0.so.0
+if [ "$cafInstallMode" = "standalone" ]; then
+ ln -sf libglib-2.0.so.0.4800.1 libglib-2.0.so
+ ln -sf libglib-2.0.so.0.4800.1 libglib-2.0.so.0
+ ln -sf libgthread-2.0.so.0.4800.1 libgthread-2.0.so
+ ln -sf libgthread-2.0.so.0.4800.1 libgthread-2.0.so.0
+ ln -sf libpcre.so.1.2.6 libpcre.so
+ ln -sf libpcre.so.1.2.6 libpcre.so.1
+ ln -sf libiconv.so.2.5.1 libiconv.so
+ ln -sf libiconv.so.2.5.1 libiconv.so.2
+ ln -sf libz.so.1.2.8 libz.so
+ ln -sf libz.so.1.2.8 libz.so.1
+ ln -sf libffi.so.6.0.4 libffi.so
+ ln -sf libffi.so.6.0.4 libffi.so.6
+fi
ln -sf liblog4cpp.so.5.0.6 liblog4cpp.so
ln -sf liblog4cpp.so.5.0.6 liblog4cpp.so.5
ln -sf librabbitmq.so.4.2.1 librabbitmq.so
ln -sf librabbitmq.so.4.2.1 librabbitmq.so.4
-ln -sf libpcre.so.1.2.6 libpcre.so
-ln -sf libpcre.so.1.2.6 libpcre.so.1
-ln -sf libiconv.so.2.5.1 libiconv.so
-ln -sf libiconv.so.2.5.1 libiconv.so.2
-ln -sf libz.so.1.2.8 libz.so
-ln -sf libz.so.1.2.8 libz.so.1
-ln -sf libffi.so.6.0.4 libffi.so
-ln -sf libffi.so.6.0.4 libffi.so.6
cat "$cafenvAppconfig" | sed 's/^\[/#[/g' | sed 's/^\([a-z].*=\)/export CAF_\U\1/g' > "$tmpCafenv"
sed -i 's/[ ]*=[ ]*/=/g' "$tmpCafenv"
. "$tmpCafenv"
- export LD_LIBRARY_PATH="$CAF_TOOLS_LIB_DIR/libvgauth.so/:$CAF_TOOLS_LIB_DIR/libcrypto.so.1.0.2/:$CAF_TOOLS_LIB_DIR/libssl.so.1.0.2/:$CAF_LIB_DIR"
+ if [ "$CAF_INSTALL_MODE" = "standalone" ]; then
+ export LD_LIBRARY_PATH=$CAF_LIB_DIR
+ else
+ export LD_LIBRARY_PATH="$CAF_TOOLS_LIB_DIR/libvgauth.so/:$CAF_TOOLS_LIB_DIR/libcrypto.so.1.0.2/:$CAF_TOOLS_LIB_DIR/libssl.so.1.0.2/:$CAF_TOOLS_LIB_DIR/libz.so.1/:$CAF_TOOLS_LIB_DIR/libffi.so.6/:$CAF_TOOLS_LIB_DIR/libiconv.so.2/:$CAF_TOOLS_LIB_DIR/libpcre.so.1/:$CAF_TOOLS_LIB_DIR/libglib-2.0.so.0/:$CAF_TOOLS_LIB_DIR/libgcc_s.so.1/:$CAF_TOOLS_LIB_DIR/libgthread-2.0.so.0/:$CAF_TOOLS_LIB_DIR/libstdc++.so.6/:$CAF_LIB_DIR"
+ fi
export VMWARE_USE_SYSTEM_LIBS=1
}