diff --git a/glpi-install.sh b/glpi-install.sh new file mode 100644 index 0000000..2fe74f2 --- /dev/null +++ b/glpi-install.sh @@ -0,0 +1,37 @@ +#!/bin/bash + +#Prise de la latest +VERSION_GLPI=$(curl -s https://api.github.com/repos/glpi-project/glpi/releases/latest | grep tag_name | cut -d '"' -f 4) + +if [[ -z "${TIMEZONE}" ]]; then echo "TIMEZONE is unset"; +else echo "date.timezone = \"$TIMEZONE\"" > /etc/php/7.3/apache2/conf.d/timezone.ini; +fi + +SRC_GLPI=$(curl -s https://api.github.com/repos/glpi-project/glpi/releases/tags/${VERSION_GLPI} | jq .assets[0].browser_download_url | tr -d \") +TAR_GLPI=$(basename ${SRC_GLPI}) +FOLDER_GLPI=glpi/ +FOLDER_WEB=/var/www/html/ + +#check if TLS_REQCERT is present +if !(grep -q "TLS_REQCERT" /etc/ldap/ldap.conf) +then + echo "TLS_REQCERT isn't present" + echo -e "TLS_REQCERT\tnever" >> /etc/ldap/ldap.conf +fi + +#Téléchargement et extraction des sources de GLPI +if [ "$(ls ${FOLDER_WEB}${FOLDER_GLPI})" ]; +then + echo "GLPI is already installed" +else + wget -P ${FOLDER_WEB} ${SRC_GLPI} + tar -xzf ${FOLDER_WEB}${TAR_GLPI} -C ${FOLDER_WEB} + rm -Rf ${FOLDER_WEB}${TAR_GLPI} + chown -R www-data:www-data ${FOLDER_WEB}${FOLDER_GLPI} +fi + +#Modification du vhost par défaut +echo -e "\n\tDocumentRoot /var/www/html/glpi\n\n\t\n\t\tAllowOverride All\n\t\tOrder Allow,Deny\n\t\tAllow from all\n\t\n\n\tErrorLog /var/log/apache2/error-glpi.log\n\tLogLevel warn\n\tCustomLog /var/log/apache2/access-glpi.log combined\n" > /etc/apache2/sites-available/000-default.conf + +#Add scheduled task by cron and enable +echo "*/2 * * * * www-data /usr/bin/php /var/www/html/glpi/front/cron.php &>/dev/null" >> /etc/cron.d/glpi