Browse Source

upgrade jirafeau

pull/8/head
François 1 year ago
parent
commit
fd60fb0171
  1. 4
      bin/.dns-completion.bash
  2. 6
      bin/.kazList-completion.bash
  3. 3
      bin/.updateCloud-completion.bash
  4. 18
      bin/container.sh
  5. 45
      bin/kazList.sh
  6. 2
      bin/secretGen.sh
  7. 15
      bin/updateDockerPassword.sh
  8. 126
      bin/updateGit.sh
  9. 2
      bin/vide_poubelle
  10. 1
      config/orgaTmpl/init-volume.sh
  11. 24
      config/orgaTmpl/orga-gen.sh
  12. 6
      config/skip-file.txt
  13. 30
      dockers/etherpad/download.sh
  14. 12
      dockers/jirafeau/Dockerfile
  15. 24
      dockers/jirafeau/download.sh
  16. 48
      dockers/jirafeau/first.sh
  17. 3
      secret.tmpl/SetAllPass.sh

4
bin/.dns-completion.bash

@ -6,13 +6,13 @@ _dns_completions () {
cur=${COMP_WORDS[COMP_CWORD]}
case "$cur" in
-*)
COMPREPLY=( $(compgen -W "-h -n" -- "${cur}" ) ) ;;
COMPREPLY=( $(compgen -W "-h -n -f" -- "${cur}" ) ) ;;
*)
find=""
for arg in ${COMP_WORDS[@]} ; do
[[ " list add del " =~ " ${arg} " ]] && find="arg"
done
[ -z "${find}" ] && COMPREPLY=($(compgen -W "list add del" -- "${cur}")) ;;
[ -z "${find}" ] && COMPREPLY=($(compgen -W "init list add del" -- "${cur}")) ;;
esac
return 0
}

6
bin/.kazList-completion.bash

@ -10,13 +10,13 @@ _kazList_completions () {
done
local arg_pos w i cmd= opt= names=
((arg_pos = cword - skip))
for ((i=1 ; i<card; i++)) ; do
for ((i=1 ; i<card; i++)); do
w="${COMP_WORDS[i]}"
if [ -z "${cmd}" ] ; then
if [ -z "${cmd}" ]; then
[[ "${w}" == -* ]] || cmd="${w}"
continue
fi
if [ -z "${opt}" ] ; then
if [ -z "${opt}" ]; then
[[ "${w}" == -* ]] || opt="${w}"
continue
fi

3
bin/.updateCloud-completion.bash

@ -9,7 +9,8 @@ _updateCloud_completion () {
case "${cword}" in
1)
# orga name
local available_orga=$("${KAZ_BIN_DIR}/kazList.sh" "compose" "enable" "orga" 2>/dev/null | sed "s/-orga\b//g")
#local available_orga=$("${KAZ_BIN_DIR}/kazList.sh" "compose" "enable" "orga" 2>/dev/null)
local available_orga=$("${KAZ_BIN_DIR}/kazList.sh" "service" "cloud" 2>/dev/null)
COMPREPLY=($(compgen -W "${available_orga}" -- "${cur}"))
;;
*)

18
bin/container.sh

@ -49,6 +49,20 @@ doCompose () {
${SIMU} ln -fs ../../config/dockers.env .env
fi
${SIMU} docker-compose $1
if [ "$2" = "cachet" ] && [ "$1" != "down" ]; then
NEW_KEY=$(cd "${KAZ_COMP_DIR}/$2" ; docker-compose logs | grep APP_KEY=base64: | sed "s/^.*'APP_KEY=\(base64:[^']*\)'.*$/\1/" | tail -1)
if [ -n "${NEW_KEY}" ]; then
printKazMsg "cachet key change"
# change key
${SIMU} sed -i \
-e 's%^\(\s*cachet_APP_KEY=\).*$%\1"'"${NEW_KEY}"'"%' \
"${KAZ_KEY_DIR}/SetAllPass.sh"
${SIMU} "${KAZ_BIN_DIR}/secretGen.sh"
# restart
${SIMU} docker-compose $1
fi
fi
}
doComposes () {
@ -272,11 +286,11 @@ do
done
if [ "${subst}" = "" ] ; then
echo
echo "Unknown compose: ${compose} not in ${knownedComposes[@]}"
echo "Unknown compose: ${RED}${BOLD}${compose}${NC} not in ${YELLOW}${BOLD}${knownedComposes[*]}${NC}"
echo
exit 1
else
echo "substitute compose: ${compose} => ${subst[@]}"
echo "substitute compose: ${YELLOW}${BOLD}${compose} => ${subst[@]}${NC}"
fi
fi
for item in "${availableMailComposes[@]}"; do

45
bin/kazList.sh

@ -10,6 +10,8 @@ setKazVars
cd "$(dirname $0)"
ALL_STATUS=$(docker ps -a --format "{{.ID}} {{.Names}} {{.Status}}")
SERVICES_CHOICE="$(getAvailableServices | tr "\n" "|")"
SERVICES_CHOICE="${SERVICES_CHOICE%|}"
usage () {
echo "${RED}${BOLD}" \
@ -20,9 +22,10 @@ usage () {
" service {available|validate} : list services name${NL}" \
" service {enable|disable} : list services in orga${NL}" \
" service status : status of services in orga${NL}" \
" service {${SERVICES_CHOICE}}${NL}" \
" : list of orga enable a service ${NL}" \
" [compose] in${NL}" \
" ${CYAN}$(${KAZ_ROOT}/bin/${PRG} compose available)${NL}" \
"${NC}"
" ${CYAN}$((getAvailableComposes;getAvailableOrgas) | tr "\n" " ")${NC}${NL}"
exit 1
}
@ -89,28 +92,48 @@ getServiceInOrga () {
[[ "${orga}" = *"-orga" ]] || continue
local ORGA_DIR="${KAZ_COMP_DIR}/${orga}"
ORGA_COMPOSE="${ORGA_DIR}/docker-compose.yml"
# XXX check name =~ *-orga
[[ -f "${ORGA_COMPOSE}" ]] || continue
for service in $($0 service available); do
for service in $(getAvailableServices); do
case "${service}" in
garradin)
[ -f "${ORGA_DIR}/useGarradin" ] && echo "${service}"
;;
wiki)
grep -q "dokuwiki:" "${ORGA_COMPOSE}" 2>/dev/null && echo "${service}"
grep -q "\s*dokuwiki:" "${ORGA_COMPOSE}" 2>/dev/null && echo "${service}"
;;
wp)
grep -q "wordpress:" "${ORGA_COMPOSE}" 2>/dev/null && echo "${service}"
grep -q "\s*wordpress:" "${ORGA_COMPOSE}" 2>/dev/null && echo "${service}"
;;
*)
grep -q "${service}:" "${ORGA_COMPOSE}" 2>/dev/null && echo "${service}"
grep -q "\s*${service}:" "${ORGA_COMPOSE}" 2>/dev/null && echo "${service}"
esac
done
done
}
getOrgaWithService() {
service="$1"
shift
case "${service}" in
wiki) keyword="dokuwiki" ;;
wp) keyword="wordpress" ;;
*) keyword="${service}" ;;
esac
for orga in $*; do
[[ "${orga}" = *"-orga" ]] || continue
local ORGA_DIR="${KAZ_COMP_DIR}/${orga}"
ORGA_COMPOSE="${ORGA_DIR}/docker-compose.yml"
[[ -f "${ORGA_COMPOSE}" ]] || continue
if [ "${service}" = "garradin" ]; then
[ -f "${ORGA_DIR}/useGarradin" ] && echo "${orga}"
else
grep -q "\s*${keyword}:" "${ORGA_COMPOSE}" 2>/dev/null && echo "${orga}"
fi
done
}
service_enable () {
echo $(getServiceInOrga $*)
echo $(getServiceInOrga $* | sort -u)
}
service_disable () {
@ -145,6 +168,12 @@ case "$1" in
shift
;;
*)
if [ "${KAZ_CMD}" = "service" ] && [[ $1 =~ ^(${SERVICES_CHOICE})$ ]]; then
KAZ_OPT="$1"
shift
getOrgaWithService "${KAZ_OPT}" $(filterAvailableComposes $*)
exit
fi
usage
;;
esac

2
bin/secretGen.sh

@ -63,3 +63,5 @@ mv "${NEW_FILE}" "${TMPL_FILE}"
chmod a+x "${TMPL_FILE}"
. "${TMPL_FILE}"
"${KAZ_BIN_DIR}/updateDockerPassword.sh"
exit 0

15
bin/updateDockerPassword.sh

@ -34,11 +34,10 @@ updateEnvDB(){
# pb oeuf et poule (il faudrait les anciennes valeurs) :
# * si rootPass change, faire à la main
# * si dbName change, faire à la main
if [[ "$(docker ps -f name=$3 | grep -w $3)" ]]; then
echo "change DB pass on docker $3"
echo "grant all privileges on ${!dbName}.* to '${!userName}' identified by '${!userPass}';" | \
docker exec -i $3 bash -c "mysql --user=root --password=${!rootPass}"
fi
checkDockerRunning "$3" "$3" || return
echo "change DB pass on docker $3"
echo "grant all privileges on ${!dbName}.* to '${!userName}' identified by '${!userPass}';" | \
docker exec -i $3 bash -c "mysql --user=root --password=${!rootPass}"
}
updateEnv(){
@ -56,12 +55,12 @@ updateEnv(){
}
framadateUpdate(){
[[ "${COMP_ENABLE}" =~ " framadate " ]] || return
if [ ! -f "${DOCK_LIB}/volumes/framadate_dateConfig/_data/config.php" ]; then
return 0
fi
if [[ "$(docker ps -f name=${framadateServName} | grep -w ${framadateServName})" ]]; then
checkDockerRunning "${framadateServName}" "Framadate" &&
${SIMU} docker exec -ti "${framadateServName}" bash -c -i "htpasswd -bc /var/framadate/admin/.htpasswd ${framadate_HTTPD_USER} ${framadate_HTTPD_PASSWORD}"
fi
${SIMU} sed -i \
-e "s/^#*const DB_USER[ ]*=.*$/const DB_USER= '${framadate_MYSQL_USER}';/g" \
-e "s/^#*const DB_PASSWORD[ ]*=.*$/const DB_PASSWORD= '${framadate_MYSQL_PASSWORD}';/g" \
@ -69,6 +68,7 @@ framadateUpdate(){
}
jirafeauUpdate(){
[[ "${COMP_ENABLE}" =~ " jirafeau " ]] || return
if [ ! -f "${DOCK_LIB}/volumes/jirafeau_fileConfig/_data/config.local.php" ]; then
return 0
fi
@ -110,3 +110,4 @@ updateEnv "ldap" "${KAZ_KEY_DIR}/env-${ldapUIName}"
framadateUpdate
jirafeauUpdate
exit 0

126
bin/updateGit.sh

@ -69,13 +69,17 @@ if [ -f "${KAZ_UPDATE_ENV}" ]; then
. "${KAZ_UPDATE_ENV}"
else
KAZ_SRC_TYPE="VAGRANT"
KAZ_VAGRANT_ROOT="~/kaz-vagrant"
KAZ_DEV_REMOTE="root@kazdev"
KAZ_DEV_ROOT="/kaz"
KAZ_PROD_REMOTE="root@kazprod"
KAZ_VAGRANT_ROOT="~/kaz-vagrant"
KAZ_PROD_ROOT="/kaz"
KAZ_OTHER_REMOTE="192.168.1.1"
KAZ_OTHER_ROOT="~/git/kaz"
fi
while : ; do
read -p " Form which tested server ([Vagrant|DEV|PROD]) you want updaye git KAZ? [${KAZ_SRC_TYPE}]: " rep
read -p " Form which tested server ([Vagrant|DEV|PROD|OTHER]) you want updaye git KAZ? [${KAZ_SRC_TYPE}]: " rep
case "${rep}" in
"")
break
@ -95,8 +99,13 @@ while : ; do
KAZ_CFG_UPDATED="true"
break
;;
[oO]*)
KAZ_SRC_TYPE="OTHER"
KAZ_CFG_UPDATED="true"
break
;;
* )
printKazError "\"${rep}\" not match with [Vagrant|DEV|PROD]."
printKazError "\"${rep}\" not match with [Vagrant|DEV|PROD|OTHER]."
;;
esac
done
@ -126,8 +135,21 @@ case "${KAZ_SRC_TYPE}" in
) && break;
done
;;
DEV|PROD)
[ "${KAZ_SRC_TYPE}" == "DEV" ] && remoteUser="${KAZ_DEV_REMOTE}" || remoteUser="${KAZ_PROD_REMOTE}"
DEV|PROD|OTHER)
case "${KAZ_SRC_TYPE}" in
DEV)
remoteUser="${KAZ_DEV_REMOTE}"
remotePath="${KAZ_DEV_ROOT}"
;;
PROD)
remoteUser="${KAZ_PROD_REMOTE}"
remotePath="${KAZ_PROD_ROOT}"
;;
OTHER)
remoteUser="${KAZ_OTHER_REMOTE}"
remotePath="${KAZ_OTHER_ROOT}"
;;
esac
while : ; do
read -p "Give remote access? [${remoteUser}]: " rep
case "${rep}" in
@ -135,7 +157,7 @@ case "${KAZ_SRC_TYPE}" in
break
;;
* )
if [[ "${rep}" =~ ^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+$ ]]; then
if [[ "${rep}" =~ ^([a-zA-Z0-9._%+-]+@)?[a-zA-Z0-9.-]+$ ]]; then
remoteUser="${rep}"
break
else
@ -144,15 +166,48 @@ case "${KAZ_SRC_TYPE}" in
;;
esac
done
if [ "${KAZ_SRC_TYPE}" == "DEV" ]; then
if [ "${remoteUser}" != "${KAZ_DEV_REMOTE}" ]; then
KAZ_DEV_REMOTE="${remoteUser}"; KAZ_CFG_UPDATED="true"
fi
else
if [ "${remoteUser}" != "${KAZ_PROD_REMOTE}" ]; then
KAZ_PROD_REMOTE="${remoteUser}"; KAZ_CFG_UPDATED="true"
fi
fi
while : ; do
read -p "Give remote path? [${remotePath}]: " rep
case "${rep}" in
"" )
break
;;
* )
if [[ "${rep}" =~ ^~?[a-zA-Z0-9/._-]*/$ ]]; then
remotePath="${rep}"
break
else
printKazError "${rep} not match with [path]"
fi
;;
esac
done
case "${KAZ_SRC_TYPE}" in
DEV)
if [ "${remoteUser}" != "${KAZ_DEV_REMOTE}" ]; then
KAZ_DEV_REMOTE="${remoteUser}"; KAZ_CFG_UPDATED="true"
fi
if [ "${remotePath}" != "${KAZ_DEV_ROOT}" ]; then
KAZ_DEV_ROOT="${remotePath}"; KAZ_CFG_UPDATED="true"
fi
;;
PROD)
if [ "${remoteUser}" != "${KAZ_PROD_REMOTE}" ]; then
KAZ_PROD_REMOTE="${remoteUser}"; KAZ_CFG_UPDATED="true"
fi
if [ "${remotePath}" != "${KAZ_PROD_ROOT}" ]; then
KAZ_PROD_ROOT="${remotePath}"; KAZ_CFG_UPDATED="true"
fi
;;
OTHER)
if [ "${remoteUser}" != "${KAZ_OTHER_REMOTE}" ]; then
KAZ_OTHER_REMOTE="${remoteUser}"; KAZ_CFG_UPDATED="true"
fi
if [ "${remotePath}" != "${KAZ_OTHER_ROOT}" ]; then
KAZ_OTHER_ROOT="${remotePath}"; KAZ_CFG_UPDATED="true"
fi
;;
esac
;;
esac
@ -162,7 +217,11 @@ if [ -n "${KAZ_CFG_UPDATED}" ]; then
KAZ_SRC_TYPE="${KAZ_SRC_TYPE}"
KAZ_VAGRANT_ROOT="${KAZ_VAGRANT_ROOT}"
KAZ_DEV_REMOTE="${KAZ_DEV_REMOTE}"
KAZ_DEV_ROOT="${KAZ_DEV_ROOT}"
KAZ_PROD_REMOTE="${KAZ_PROD_REMOTE}"
KAZ_PROD_ROOT="${KAZ_PROD_ROOT}"
KAZ_OTHER_REMOTE="${KAZ_OTHER_REMOTE}"
KAZ_OTHER_ROOT="${KAZ_OTHER_ROOT}"
EOF
fi
@ -185,17 +244,17 @@ if [ "$(git status | grep "git restore")" ]; then
fi
########################################
# download valide source from Vagrant, DEV or PROD
# download valide source from Vagrant, DEV, PROD or OTHER
export TESTED_DIR="${KAZ_ROOT}/tmp/kaz"
mkdir -p "${TESTED_DIR}"
printKazMsg "Download from ${KAZ_SRC_TYPE} to ${KAZ_TMP_DIR}"
printKazMsg "Download from ${KAZ_SRC_TYPE} to ${TESTED_DIR}"
checkContinue
case "${KAZ_SRC_TYPE}" in
VAGRANT)
(
echo "check vagrant status"
echo "check vagrant status (must be launch with vagrant)"
cd "${KAZ_VAGRANT_ROOT/#\~/${HOME}}"
while :; do
if [ -n "$(vagrant status | grep running)" ]; then
@ -205,21 +264,36 @@ case "${KAZ_SRC_TYPE}" in
checkContinue
done
)
echo check key
echo ssh-keygen -f "/home/felix/.ssh/known_hosts" -R "[127.0.0.1]:2222"
printKazMsg check key
while grep -q "@@@@@@@@@@" <<<"$(ssh -p 2222 -i ${KAZ_VAGRANT_ROOT/#\~/${HOME}}/.vagrant/machines/default/virtualbox/private_key vagrant@127.0.0.1 date 2>&1 >/dev/null)"; do
printKazError "ssh key has changed"
echo "you must call :"
echo "${YELLOW} ssh-keygen -f ~/.ssh/known_hosts -R \"[127.0.0.1]:2222\"${NC}"
checkContinue
done
# XXX remote root
${SIMU} rsync -rlptDEHAX --no-o --delete --info=progress2 \
-e "ssh -p 2222 -i ${KAZ_VAGRANT_ROOT/#\~/${HOME}}/.vagrant/machines/default/virtualbox/private_key" \
$(for i in ${REF_DIRS} git download ; do echo "vagrant@127.0.0.1:/kaz/$i" ; done) \
"${TESTED_DIR}"
;;
DEV|PROD)
DEV|PROD|OTHER)
# remoteUser is already set
[ "${KAZ_SRC_TYPE}" == "DEV" ] && remoteUser="${KAZ_DEV_REMOTE}" || remoteUser="${KAZ_PROD_REMOTE}"
case "${KAZ_SRC_TYPE}" in
DEV)
remoteUser="${KAZ_DEV_REMOTE}"; remotePath="${KAZ_DEV_ROOT}"
;;
PROD)
remoteUser="${KAZ_PROD_REMOTE}"; remotePath="${KAZ_PROD_ROOT}"
;;
OTHER)
remoteUser="${KAZ_OTHER_REMOTE}"; remotePath="${KAZ_OTHER_ROOT}"
;;
esac
${SIMU} rsync -rlptDEHAX --no-o --delete --info=progress2 \
$(for i in ${REF_DIRS} ; do echo "${remoteUser}:/kaz/$i" ; done) \
$(for i in ${REF_DIRS} ; do echo "${remoteUser}:${remotePath}$i" ; done) \
"${TESTED_DIR}"
;;
esac
@ -280,7 +354,7 @@ for file in ${NEW_FILES[@]}; do
fi
echo "New file ${file}"
while true; do
read -p "Synchronize ${GREEN}${file}${NC} to ${GREEN}${KAZ_ROOT}:/${file}${NC}? [y/n/i/help]: " yn
read -p "Synchronize ${GREEN}${file}${NC} to ${GREEN}${KAZ_ROOT}/${file}${NC}? [y/n/i/help]: " yn
case $yn in
[Yy]*)
${SIMU} rsync -rlptDEHAX --info=progress2 "${file}" "${KAZ_ROOT}/${file}"
@ -310,7 +384,7 @@ trap 'rm -f "${TMPFILE}"' EXIT
export TMPFILE="$(mktemp)" || exit 1
CHANGED_FILES=$(find ${REF_DIRS} '(' -type d ! -exec /bin/test -d "${KAZ_ROOT}/{}" \; -prune ')' -o '(' -type f -exec /bin/test -f "${KAZ_ROOT}/{}" \; ! -exec cmp -s "{}" "${KAZ_ROOT}/{}" \; -print ')')
for file in ${CHANGED_FILES[@]}; do
for file in ${CHANGED_FILES[@]} ; do
if badName "${file}" ; then
echo SKIP ${file}
continue

2
bin/vide_poubelle

@ -1,6 +1,6 @@
#!/bin/sh
cd "${HOME}/tmp/POUBELLE"
cd "${HOME}/tmp/POUBELLE" >/dev/null 2>&1
if test "$?" -eq 0
then

1
config/orgaTmpl/init-volume.sh

@ -11,6 +11,7 @@ docker volume create --name=orga_${orga}matterData
docker volume create --name=orga_${orga}matterLogs
docker volume create --name=orga_${orga}matterPlugins
docker volume create --name=orga_${orga}matterClientPlugins
docker volume create --name=matterIcons
#}}
#{{cloud
docker volume create --name=orga_${orga}cloudMain

24
config/orgaTmpl/orga-gen.sh

@ -8,8 +8,7 @@ KAZ_ROOT=$(cd "$(dirname $0)/../.."; pwd)
setKazVars
cd $(dirname $0)
PWD=$(pwd)
ORGA_DIR=$(basename ${PWD})
ORGA_DIR="$(basename "$(pwd)")"
TIMESTAMP=YES
TMPL_PROXY_COMPOSE="${KAZ_COMP_DIR}/proxy/docker-compose.tmpl.yml"
ORGA_LIST="${KAZ_CONF_DIR}/container-orga.list"
@ -30,8 +29,7 @@ usage(){
exit 1
}
for ARG in "$@"
do
for ARG in "$@"; do
case "${ARG}" in
'-h' | '-help' )
usage
@ -48,14 +46,14 @@ do
if [[ "${ORGA_DIR}" = "orgaTmpl" ]]; then
if [[ "${ARG}" =~ ^[a-z0-9_\-]+$ ]]; then
printKazMsg "create ${ARG}"
mkdir -p "${KAZ_COMP_DIR}/${ARG}-orga"
cd "${KAZ_COMP_DIR}/${ARG}-orga"
ORGA_PATH="${KAZ_COMP_DIR}/${ARG}-orga"
mkdir -p "${ORGA_PATH}"
cd "${ORGA_PATH}"
ORGA_DIR="$(basename "$(pwd)")"
ln -sf ../../config/dockers.env .env
ln -sf ../../config/orgaTmpl/orga-gen.sh
ln -sf ../../config/orgaTmpl/orga-rm.sh
ln -sf ../../config/orgaTmpl/reload.sh
PWD=$(pwd)
ORGA_DIR=$(basename ${PWD})
else
printKazError "Name must contains only a-z0-9_\-"
usage
@ -126,12 +124,10 @@ if [[ -f docker-compose.yml ]]; then
fi
fi
for ARG in "$@"
do
for ARG in "$@"; do
case "${ARG}" in
'-show' )
for i in cloud collabora agora wiki wp db
do
for i in cloud collabora agora wiki wp db; do
echo "${i}=${!i}"
done
exit;;
@ -204,8 +200,7 @@ ADD_DOMAIN=""
DEL_DOMAIN=""
listServ () {
for serv in $(echo "$(${KAZ_BIN_DIR}/kazList.sh service available)")
do
for serv in $(getAvailableServices); do
if [[ "${!serv}" == "on" ]]; then
echo "${serv}"
fi
@ -318,6 +313,7 @@ ln -sf ../../config/orgaTmpl/init-wp.sh
ln -sf ../../config/orgaTmpl/initdb.d/
ln -sf ../../config/orgaTmpl/app/
ln -sf ../../config/orgaTmpl/wiki-conf/
ln -sf ../../config/orgaTmpl/reload.sh
if ! grep -q "proxy_orga=" .env 2> /dev/null
then

6
config/skip-file.txt

@ -19,6 +19,10 @@ dockers/garradin/garradin-
*/*~
*/*/*~
*/*/*/*~
.*~
*/.*~
*/*/.*~
*/*/*/.*~
*/*.old/
*/*/*.old/
*/*/*/*.old/
@ -27,6 +31,7 @@ config/dockers.env
dockers/garradin/config/config.local.php
dockers/proxy/config/nginx.conf
dockers/*-orga/
dockers/proxy-*
# param
config/container-*.list
dockers/postfix/config/dovecot-quotas.cf
@ -82,6 +87,7 @@ dockers/postfix/filter
dockers/jirafeau/config/config.local.php
config/skip-email.txt
dockers/sympa/filter/domainname
dockers/sympa/DEADJOE
bin/DEADJOE
dockers/sympa/reload.sh.non.utilisé
dockers/garradin/input-form_php7.4.diff

30
dockers/etherpad/download.sh

@ -0,0 +1,30 @@
#!/bin/bash
SERV_DIR=$(cd $(dirname $0); pwd)
KAZ_ROOT=$(cd $(dirname $0)/../..; pwd)
. "${KAZ_ROOT}/bin/.commonFunctions.sh"
setKazVars
SRC_PAD=https://github.com/ether/etherpad-lite.git
#PAD_VER="1.8.18"
PAD_VER="a54fc89a"
printKazMsg "\n *** Download etherpad"
mkdir -p "${KAZ_GIT_DIR}"
cd "${KAZ_GIT_DIR}"
if [ ! -d "etherpad-lite" ]; then
git clone "${SRC_PAD}"
fi
cd "${KAZ_GIT_DIR}/etherpad-lite"
git reset --hard
git fetch -a
git checkout develop
git pull origin develop
git checkout master
git pull origin master
if [ -z "$(git branch | grep "${PAD_VER}")" ]; then
printKazMsg " checkout branch ${PAD_VER}"
git checkout ${PAD_VER}
fi

12
dockers/jirafeau/Dockerfile

@ -6,11 +6,11 @@ FROM php:7.4-apache
COPY .dummy .apt-mirror-confi[g] .proxy-confi[g] /
RUN cp /.proxy-config /etc/profile.d/proxy.sh 2> /dev/null || true
RUN if [ -f /.apt-mirror-config ] ; then . /.apt-mirror-config && sed -i \
-e "s/deb.debian.org/${APT_MIRROR_DEBIAN}/g" \
-e "s/security.debian.org/${APT_MIRROR_DEBIAN_SECURITY}/g" \
-e "s/archive.ubuntu.com/${APT_MIRROR_UBUNTU}/g" \
-e "s/security.ubuntu.com/${APT_MIRROR_UBUNTU_SECURITY}/g" \
/etc/apt/sources.list; fi
-e "s%s\?://deb.debian.org%://${APT_MIRROR_DEBIAN}%g" \
-e "s%s\?://security.debian.org%://${APT_MIRROR_DEBIAN_SECURITY}%g" \
-e "s%s\?://archive.ubuntu.com%://${APT_MIRROR_UBUNTU}%g" \
-e "s%s\?://security.ubuntu.com%://${APT_MIRROR_UBUNTU_SECURITY}%g" \
/etc/apt/sources.list; fi
########################################
RUN apt-get update --quiet && apt-get install -y \
@ -47,7 +47,7 @@ COPY dockers/jirafeau/config/composer.json .
RUN /usr/local/bin/composer-setup.sh
RUN php composer.phar install
RUN echo '\
RUN echo '\n\
upload_max_filesize = 1024M\n\
post_max_size = 1024M\n\
[mail function]\n\

24
dockers/jirafeau/download.sh

@ -0,0 +1,24 @@
#!/bin/bash
SERV_DIR=$(cd $(dirname $0); pwd)
KAZ_ROOT=$(cd $(dirname $0)/../..; pwd)
. "${KAZ_ROOT}/bin/.commonFunctions.sh"
setKazVars
SRC_JIR="https://gitlab.com/mojo42/Jirafeau.git"
JIR_VER="4.5.0"
printKazMsg "\n *** Download Jirafeau"
mkdir -p "${KAZ_GIT_DIR}"
cd "${KAZ_GIT_DIR}"
if [ ! -d "Jirafeau" ]; then
git clone "${SRC_JIR}"
fi
cd "${KAZ_GIT_DIR}/Jirafeau"
if [ -z "$(git branch | grep "${JIR_VER}")" ]; then
printKazMsg " checkout branch ${JIR_VER}"
git reset --hard
git checkout ${JIR_VER}
fi

48
dockers/jirafeau/first.sh

@ -4,44 +4,40 @@ KAZ_ROOT=$(cd $(dirname $0)/../..; pwd)
. "${KAZ_ROOT}/bin/.commonFunctions.sh"
setKazVars
JIR_VER=4.3.0
JIR_VER=4.5.0
cd $(dirname $0)
. "${DOCKERS_ENV}"
. "${KAZ_KEY_DIR}/env-${jirafeauServName}"
CONF_FILE="config/config.local.php"
if grep -q "'installation_done'\s*=>\s*true" "${CONF_FILE}" 2>/dev/null ; then
exit;
fi
printKazMsg "\n *** Premier lancement de Jirafeau"
if ! [[ "$(docker ps -f name=${jirafeauServName} | grep -w ${jirafeauServName})" ]]; then
printKazError "Jirafeau not running... abort"
exit
CONF_FILE="${DOCK_VOL}/jirafeau_config/_data/config.local.php"
if ! grep -q "'installation_done'\s*=>\s*true" "${CONF_FILE}" 2>/dev/null ; then
printKazMsg "\n *** Premier lancement de Jirafeau"
checkDockerRunning "${jirafeauServName}" "Jirafeau" || exit
curl -X POST \
-d "jirafeau=${JIR_VER}" \
-d "step=1" \
-d "admin_password=${HTTPD_PASSWORD}" \
-d "next=1" \
"${httpProto}://${fileHost}.${domain}/install.php"
curl -X POST -d "jirafeau=${JIR_VER}" \
-d "step=2" \
-d "web_root=${httpProto}://${fileHost}.${domain}/" \
-d "var_root=${jirafeauDir}" \
-d "next=1" \
"${httpProto}://${fileHost}.${domain}/install.php"
fi
curl -X POST \
-d "jirafeau=${JIR_VER}" \
-d "step=1" \
-d "admin_password=${HTTPD_PASSWORD}" \
-d "next=1" \
"${httpProto}://${fileHost}.${domain}/install.php"
curl -X POST -d "jirafeau=${JIR_VER}" \
-d "step=2" \
-d "web_root=${httpProto}://${fileHost}.${domain}/" \
-d "var_root=${jirafeauDir}" \
-d "next=1" \
"${httpProto}://${fileHost}.${domain}/install.php"
updatePhpVar(){
# $1 key
# $2 val
# $3 file
if grep -q "$1" "$3" ; then
sed -i \
-e "s%\([\"']$1[\"']\s*=>\s*\)[^,]*,%\1$2,%" \
"$3"
sed -i \
-e "s%\([\"']$1[\"']\s*=>\s*\)[^,]*,%\1$2,%" \
"$3"
fi
}

3
secret.tmpl/SetAllPass.sh

@ -25,6 +25,9 @@ etherpad_DB_PORT="3306"
etherpad_DB_CHARSET="utf8"
#user: admin
etherpad_ADMIN_PASSWORD="--clean_val--"
etherpad_PAD_OPTIONS_LANG="fr"
etherpad_TITLE="KazPad"
etherpad_TRUST_PROXY="true"
####################
# framadate

Loading…
Cancel
Save