ansible-roles/packweb-apache/files/phpContainer

36 lines
1.1 KiB
Plaintext
Raw Normal View History

#!/usr/bin/env bash
# If this script isn't run as root, then, re-run it with sudo.
if [ "$EUID" -ne 0 ]; then
sudo $(readlink -f ${BASH_SOURCE[0]}) "$@"
exit 0;
fi;
PHPVersion=$(grep SetHandler /etc/apache2/sites-enabled/$LOGNAME.conf 2>/dev/null | grep -m 1 -o 'fpm[0-9][0-9]' | head -n 1 | sed 's/php//g' | sed 's/fpm//g')
2022-02-08 11:11:07 +01:00
# If $PHPVersion is empty, look for "SetHandler" in the includes.
if [ "$PHPVersion" == "" ]; then
includes=$(grep -w "Include" /etc/apache2/sites-enabled/$LOGNAME.conf | uniq | awk '{print $2}')
for f in "$includes"; do
# Relative path -> absolute
if [ ${f:0:1} != "/" ]; then
f="/etc/apache2/${f}"
fi
# Grep again
PHPVersion=$(grep SetHandler "${f}" 2>/dev/null | grep -m 1 -o 'fpm[0-9][0-9]' | head -n 1 | sed 's/php//g' | sed 's/fpm//g')
if [ "$PHPVersion" != "" ]; then
break
fi
done
fi
if [ "$PHPVersion" != "" ]; then
lxc-attach -n php$PHPVersion -- su - $LOGNAME -c "cd \"${PWD@E}\" && php ${*@Q}"
else
# TODO: fallback?
# command php $*
echo "ERROR - Could not determine \$PHPVersion - Are you a web account ?"
exit 1
fi