3 # @todo make username flexible
7 echo "[$(date)] Bootstrapping the Test container..."
10 # Perform program exit housekeeping
12 echo "[$(date)] Stopping the Web server"
15 echo "[$(date)] Stopping Privoxy"
18 echo "[$(date)] Stopping FPM"
21 echo "[$(date)] Exiting"
25 # Fix UID & GID for user
27 echo "[$(date)] Fixing filesystem permissions..."
29 ORIGPASSWD=$(cat /etc/passwd | grep "^${USERNAME}:")
30 ORIG_UID=$(echo "$ORIGPASSWD" | cut -f3 -d:)
31 ORIG_GID=$(echo "$ORIGPASSWD" | cut -f4 -d:)
32 CONTAINER_USER_HOME=$(echo "$ORIGPASSWD" | cut -f6 -d:)
33 CONTAINER_USER_UID=${CONTAINER_USER_UID:=$ORIG_UID}
34 CONTAINER_USER_GID=${CONTAINER_USER_GID:=$ORIG_GID}
36 if [ "$CONTAINER_USER_UID" != "$ORIG_UID" -o "$CONTAINER_USER_GID" != "$ORIG_GID" ]; then
37 groupmod -g "$CONTAINER_USER_GID" "${USERNAME}"
38 usermod -u "$CONTAINER_USER_UID" -g "$CONTAINER_USER_GID" "${USERNAME}"
40 if [ $(stat -c '%u' "${CONTAINER_USER_HOME}") != "${CONTAINER_USER_UID}" -o $(stat -c '%g' "${CONTAINER_USER_HOME}") != "${CONTAINER_USER_GID}" ]; then
41 chown "${CONTAINER_USER_UID}":"${CONTAINER_USER_GID}" "${CONTAINER_USER_HOME}"
42 chown -R "${CONTAINER_USER_UID}":"${CONTAINER_USER_GID}" "${CONTAINER_USER_HOME}"/.*
45 echo "[$(date)] Fixing apache configuration..."
47 sed -e "s?^export TESTS_ROOT_DIR=.*?export TESTS_ROOT_DIR=${TESTS_ROOT_DIR}?g" --in-place /etc/apache2/envvars
49 # @todo set as well php-fpm user/group ?
51 echo "[$(date)] Running Composer..."
53 sudo test -c "cd /home/test && composer install"
57 echo "[$(date)] Starting FPM..."
60 echo "[$(date)] Starting the Web server..."
63 echo "[$(date)] Starting Privoxy..."