Ensemble des services de KAZ
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

100 lines
3.9 KiB

#!/bin/bash
KAZ_ROOT=$(cd $(dirname $0)/..; pwd)
. "${KAZ_ROOT}/bin/.commonFunctions.sh"
setKazVars
cd $(dirname $0)
. "${DOCKERS_ENV}"
available_orga=$("${KAZ_BIN_DIR}/kazList.sh" "compose" "enable" "orga" 2>/dev/null | sed "s/-orga\b//g")
usage () {
echo "Usage: $0 orga"
echo " -n : simulation"
echo " [orga] : in ${available_orga}"
exit 1
}
case "$#" in
0)
# common
CloudName="<common cloud>"
OFFICE_URL="${httpProto}://${officeHost}.${domain}"
DockerServName="${nextcloudServName}"
CONF_DIR="${DOCK_VOL}/cloud_cloudConfig/_data"
;;
1)
# orga
available_orga=$("${KAZ_BIN_DIR}/kazList.sh" "compose" "enable" "orga" 2>/dev/null | sed "s/-orga\b//g")
[[ " ${available_orga} " =~ "$1" ]] || usage
ORGA=${1%-orga}
CloudName="${ORGA}"
OFFICE_URL="https://${ORGA}-${officeHost}.${domain}"
DockerServName="${ORGA}-${nextcloudServName}"
CONF_DIR="${DOCK_VOL}/orga_${ORGA}-cloudConfig/_data"
;;
*)
usage
;;
esac
PHP_CONF="${CONF_DIR}/config.php"
printKazMsg "update cloud config"
addVarInConf(){
# $1 key
# $2 val
# $3 where
if ! grep -q "$1" "${PHP_CONF}" ; then
echo -n " ${CYAN}${BOLD}$1${NC}"
sed -i -e "/$3/a\ $2" "${PHP_CONF}"
fi
}
printKazMsg "update ${CloudName}:"
echo -n " "
addVarInConf "default_language" " 'default_language' => 'fr'," "CONFIG = array ("
addVarInConf "theme" " 'theme' => ''," "'installed' => true,"
addVarInConf "default_phone_region" " 'default_phone_region' => 'FR'," "'installed' => true,"
addVarInConf "loglevel" " 'loglevel' => 2," "'installed' => true,"
addVarInConf "maintenance" " 'maintenance' => false," "'installed' => true,"
addVarInConf "app_install_overwrite" " 'app_install_overwrite' => \n array (\n 0 => 'documents',\n )," "'installed' => true,"
addVarInConf "overwriteprotocol" " 'overwriteprotocol' => 'https'," "'installed' => true,"
addVarInConf "mail_domain" " 'mail_domain' => 'kaz.bzh'," "'installed' => true,"
addVarInConf "mail_from_address" " 'mail_from_address' => 'admin'," "'installed' => true,"
addVarInConf "mail_smtpport" " 'mail_smtpport' => '25'," "'installed' => true,"
addVarInConf "mail_sendmailmode" " 'mail_sendmailmode' => 'smtp'," "'installed' => true,"
addVarInConf "mail_smtphost" " 'mail_smtphost' => 'smtp.kaz.bzh'," "'installed' => true,"
addVarInConf "mail_smtpmode" " 'mail_smtpmode' => 'smtp'," "'installed' => true,"
addVarInConf "enable_previews" " 'enable_previews' => true," "'installed' => true,"
addVarInConf "trashbin_retention_obligation" " 'trashbin_retention_obligation' => '30, auto'," "'installed' => true,"
#pour supprimer le message "obtenir un compte gratuit" dans le footer
addVarInConf "simpleSignUpLink.shown" " 'simpleSignUpLink.shown' => false," "'installed' => true,"
if ! [[ "$(docker ps -f name=${DockerServName} | grep -w ${DockerServName})" ]]; then
printKazError "DockerServName not running... abort"
exit
fi
LIST_ALL=$(docker exec -ti -u 33 "${DockerServName}" /var/www/html/occ app:list |
awk 'BEGIN {cp=0}
/Enabled:/ {cp=1 ; next};
/Disabled:/ {cp=0; next};
{if (cp) print $0};')
printKazMsg "add applications"
for app in tasks calendar bookmarks contacts mail richdocuments drawio rainloop
do
grep -wq "${app}" <<<"${LIST_ALL}" 2>/dev/null && continue
echo " install ${app}"
docker exec -ti -u 33 "${DockerServName}" /var/www/html/occ app:install "${app}"
done
docker exec -ti -u 33 "${DockerServName}" /var/www/html/occ config:app:set --value "${OFFICE_URL}" richdocuments public_wopi_url
docker exec -ti -u 33 "${DockerServName}" /var/www/html/occ config:app:set --value "${OFFICE_URL}" richdocuments wopi_url
docker exec -ti -u 33 "${DockerServName}" /var/www/html/occ config:app:set --value "${OFFICE_URL}" richdocuments disable_certificate_verification
# A tester... Didier : normalement elle fonctionne, mais bon !
docker exec -ti -u 33 "${DockerServName}" /var/www/html/occ config:system:set overwrite.cli.url --value=https\:\/\/${ORGA}-cloud.kaz.bzh