docker-alpine-php83-aio/config/frameworks/10-symfony.sh
Christopher Vagnetoft 5392cca13b
All checks were successful
dockerbuild / Build docker image (push) Successful in 1m49s
Fixes, BoltCMS
2024-02-07 13:37:27 +01:00

65 lines
1.8 KiB
Bash

#!/bin/sh
# If there is no symfony.lock file, this isn't a symfony project
if [ ! -f /application/symfony.lock ]; then
exit 1
fi
# Determine if this is a specific variant of Symfny
if [ -d /application/config/bolt ]; then
echo " => Detected Symfony (Bolt) project"
VARIANT=bolt
else
echo " => Detected Symfony project"
VARIANT=vanilla
fi
# Call pre-init script
if [ -f /application/.symfony-preinit ]; then
echo " -> Running container-provided .symfony-preinit script"
sh /application/.symfony-preinit
fi
# Call on composer
echo " -> Installing dependencies using composer..."
/usr/bin/composer install --no-dev --no-cache --optimize-autoloader --no-progress -q || exit 0
# Call post-init script
if [ -f /application/.symfony-init ]; then
echo " -> Running container-provided .symfony-init script"
sh /application/.symfony-init
fi
echo " -> Setting up directories..."
test -d /application/var/cache/prod || ( mkdir -p /application/var/cache/prod && chmod a+rwx /application/var/cache/prod )
# Do some variant-specific setup
case "$VARIANT" in
"vanilla")
echo " -> Compiling .env for prodution..."
composer symfony:dump-env prod -q
echo " -> Clearing cache..."
bin/console cache:clear --env=prod -q
;;
"bolt")
echo " -> Setting up BoltCMS directories..."
# we get a warning about this
chmod a+rwx /bolt/config
# we don't want to get errors from these
chmod -R a+rwx /bolt/var
chmod -R a+rwx /bolt/var/data
chmod -R a+rwx /bolt/var/cache
chmod -R a+rwx /bolt/var/cache/prod
chmod -R a+rwx /bolt/var/log
echo " -> Configuring database..."
# TODO: Apply schema and migrations
;;
esac
echo " -> Testing environment..."
if ! bin/console about -q; then
echo " ** Failed **"
fi
exit 0