@@ -7,40 +7,46 @@ if [ "$1" = 'frankenphp' ] || [ "$1" = 'php' ] || [ "$1" = 'bin/console' ]; then
77 fi
88
99 if [ -z " $( ls -A ' node_modules/' 2> /dev/null) " ]; then
10- corepack prepare && pnpm install --prod --prefer-frozen-lockfile
10+ if node -v; then
11+ corepack prepare && pnpm install --prod --prefer-frozen-lockfile
12+ else
13+ echo " Node.js is not installed. Skipping npm packages installation."
14+ fi
1115 fi
1216
13- if grep -q ^DATABASE_URL= .env; then
14- echo " Waiting for database to be ready..."
15- ATTEMPTS_LEFT_TO_REACH_DATABASE=60
16- until [ $ATTEMPTS_LEFT_TO_REACH_DATABASE -eq 0 ] || DATABASE_ERROR=$( php bin/console dbal:run-sql -q " SELECT 1" 2>&1 ) ; do
17- if [ $? -eq 255 ]; then
18- # If the Doctrine command exits with 255, an unrecoverable error occurred
19- ATTEMPTS_LEFT_TO_REACH_DATABASE=0
20- break
21- fi
22- sleep 1
23- ATTEMPTS_LEFT_TO_REACH_DATABASE=$(( ATTEMPTS_LEFT_TO_REACH_DATABASE - 1 ))
24- echo " Still waiting for database to be ready... Or maybe the database is not reachable. $ATTEMPTS_LEFT_TO_REACH_DATABASE attempts left."
25- done
26-
27- if [ $ATTEMPTS_LEFT_TO_REACH_DATABASE -eq 0 ]; then
28- echo " The database is not up or not reachable:"
29- echo " $DATABASE_ERROR "
30- exit 1
31- else
32- echo " The database is now ready and reachable"
33- fi
34-
35- if [ " $( find ./migrations -iname ' *.php' -print -quit ) " ]; then
36- php bin/console doctrine:migrations:migrate --no-interaction --all-or-nothing
37- fi
17+ if [ " ${RUN_MIGRATIONS:- true} " = " true" ]; then
18+ if grep -q ^DATABASE_URL= .env; then
19+ echo " Waiting for database to be ready..."
20+ ATTEMPTS_LEFT_TO_REACH_DATABASE=60
21+ until [ $ATTEMPTS_LEFT_TO_REACH_DATABASE -eq 0 ] || DATABASE_ERROR=$( php bin/console dbal:run-sql -q " SELECT 1" 2>&1 ) ; do
22+ if [ $? -eq 255 ]; then
23+ # If the Doctrine command exits with 255, an unrecoverable error occurred
24+ ATTEMPTS_LEFT_TO_REACH_DATABASE=0
25+ break
26+ fi
27+ sleep 1
28+ ATTEMPTS_LEFT_TO_REACH_DATABASE=$(( ATTEMPTS_LEFT_TO_REACH_DATABASE - 1 ))
29+ echo " Still waiting for database to be ready... Or maybe the database is not reachable. $ATTEMPTS_LEFT_TO_REACH_DATABASE attempts left."
30+ done
31+
32+ if [ $ATTEMPTS_LEFT_TO_REACH_DATABASE -eq 0 ]; then
33+ echo " The database is not up or not reachable:"
34+ echo " $DATABASE_ERROR "
35+ exit 1
36+ else
37+ echo " The database is now ready and reachable"
38+ fi
39+
40+ if [ " $( find ./migrations -iname ' *.php' -print -quit ) " ]; then
41+ php bin/console doctrine:migrations:migrate --no-interaction --all-or-nothing
42+ fi
43+ fi
44+
45+ echo " Updating Meilisearch indexes..."
46+ php bin/console meili:clear || true
47+ php bin/console meili:import --update-settings || true
3848 fi
3949
40- echo " Updating Meilisearch indexes..."
41- php bin/console meili:clear || true
42- php bin/console meili:import --update-settings || true
43-
4450 setfacl -R -m u:www-data:rwX -m u:" $( whoami) " :rwX var
4551 setfacl -dR -m u:www-data:rwX -m u:" $( whoami) " :rwX var
4652fi
0 commit comments