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.
 
 
 
 
 
 

96 lines
3.0 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" "service" "agora" 2>/dev/null)
usage () {
echo "Usage: $0 orga${NL}" \
" -h : this help${NL}" \
" -n : simulation${NL}" \
" [orga] : in${NL}" \
" ${CYAN}${available_orga}${NC}${NL}"
exit 1
}
SIMU=
for ARG in $*; do
case "$1" in
-h*) usage ;;
-n) SIMU=echo; shift ;;
*) break;;
esac
done
. ${KAZ_KEY_DIR}/SetAllPass.sh
case "$#" in
0)
# shared
ORGA="Kaz"
agoraName="<common agora>"
DockerServName="${mattermostServName}"
MATTER_URI="${matterHost}.${domain}"
MATTER_URL="${httpProto}://${MATTER_URI}"
VOL_PREFIX="${DOCK_VOL}/mattermost_"
;;
1)
# orga
[[ " ${available_orga} " =~ "$1" ]] || usage
ORGA=${1%-orga}
agoraName="${ORGA}"
DockerServName="${ORGA}-${mattermostServName}"
MATTER_URI="${ORGA}-${matterHost}.${domain}"
MATTER_URL="${httpProto}://${MATTER_URI}"
VOL_PREFIX="${VOL_DIR}/orga_${ORGA}-"
;;
*)
usage
;;
esac
JSON_CONF="${VOL_PREFIX}matterConfig/_data/config.json"
sed -i \
-e 's|"SiteURL": ".*"|"SiteURL": "'${MATTER_URL}'"|g' \
-e 's|"ListenAddress": ".*"|"ListenAddress": ":'${matterPort}'"|g' \
-e 's|"WebsocketURL": ".*"|"WebsocketURL": "wss://'${MATTER_URI}'"|g' \
-e 's|"AllowCorsFrom": ".*"|"AllowCorsFrom": "'${domain}' '${MATTER_URI}':443 '${MATTER_URI}'"|g' \
-e 's|"ConsoleLevel": ".*"|"ConsoleLevel": "ERROR"|g' \
-e 's|"SendEmailNotifications": false|"SendEmailNotifications": true|g' \
-e 's|"FeedbackEmail": ".*"|"FeedbackEmail": "admin@'${domain}'"|g' \
-e 's|"FeedbackOrganization": ".*"|"FeedbackOrganization": "Cochez la KAZ du libre !"|g' \
-e 's|"ReplyToAddress": ".*"|"ReplyToAddress": "admin@'${domain}'"|g' \
-e 's|"SMTPServer": ".*"|"SMTPServer": "mail.'${domain}'"|g' \
-e 's|"SMTPPort": ".*"|"SMTPPort": "25"|g' \
-e 's|"DefaultServerLocale": ".*"|"DefaultServerLocale": "fr"|g' \
-e 's|"DefaultClientLocale": ".*"|"DefaultClientLocale": "fr"|g' \
-e 's|"AvailableLocales": ".*"|"AvailableLocales": "fr"|g' \
${JSON_CONF}
# on redémarre pour prendre en compte (changement de port)
docker restart "${DockerServName}"
#checkDockerRunning "${DockerServName}" "${agoraName}" || exit
getToken(){
curl -i -s -d "{\"login_id\":\"${mattermost_MM_ADMIN_USER}\",\"password\":\"${mattermost_MM_ADMIN_PASSWORD}\"}" "${MATTER_URL}/api/v4/users/login" | grep 'token' | sed 's/token:\s*\(.*\)\s*/\1/' | tr -d '\r'
}
waitUrl "${MATTER_URL}"
[ -z "$(getToken)" ] || exit
printKazMsg "\n *** Premier lancement de Mattermost"
curl -i -d "{\"email\":\"${mattermost_MM_ADMIN_EMAIL}\",\"username\":\"${mattermost_MM_ADMIN_USER}\",\"password\":\"${mattermost_MM_ADMIN_PASSWORD}\",\"allow_marketing\":true}" "${MATTER_URL}/api/v4/users"
waitUrl "${MATTER_URL}"
MM_TOKEN=$(getToken)
curl -i -H "Authorization: Bearer ${MM_TOKEN}" -d "{\"display_name\":\"${ORGA}\",\"name\":\"${ORGA,,}\",\"type\":\"O\"}" "${MATTER_URL}/api/v4/teams"