From 5d29d3a0526d1a635dfb128955dc80c64618d685 Mon Sep 17 00:00:00 2001 From: Benjamin Brummer Date: Thu, 8 May 2025 06:43:50 +0000 Subject: [PATCH] align init.sh with invoiceninja-debian --- debian/scripts/init.sh | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/debian/scripts/init.sh b/debian/scripts/init.sh index 5732f1b..914e8ee 100755 --- a/debian/scripts/init.sh +++ b/debian/scripts/init.sh @@ -3,6 +3,12 @@ # Fallback to app role=${LARAVEL_ROLE:-app} +# Set PDF generation browser path based on architecture +export SNAPPDF_CHROMIUM_PATH=/usr/bin/google-chrome-stable +if [ "$(dpkg --print-architecture)" = "arm64" ]; then + export SNAPPDF_CHROMIUM_PATH=/usr/bin/chromium +fi + # Check for default CMD, flag(s) or empty CMD if [ "$*" = 'frankenphp php-cli artisan octane:frankenphp' ] || [ "${1#-}" != "$1" ] || [ "$#" -eq "0" ]; then @@ -38,6 +44,12 @@ if [ "$*" = 'frankenphp php-cli artisan octane:frankenphp' ] || [ "${1#-}" != "$ if [ "${role}" = "app" ]; then cmd="frankenphp php-cli artisan octane:frankenphp" + # Check for required folders and create if needed, relevant for bind mounts + # It is not possible to chown, as we are not executing this script as root + [ -d /var/www/html/storage/framework/sessions ] || mkdir -p /var/www/html/storage/framework/sessions + [ -d /var/www/html/storage/framework/views ] || mkdir -p /var/www/html/storage/framework/views + [ -d /var/www/html/storage/framework/cache ] || mkdir -p /var/www/html/storage/framework/cache + if [ "$APP_ENV" = "production" ]; then frankenphp php-cli artisan optimize fi @@ -48,7 +60,7 @@ if [ "$*" = 'frankenphp php-cli artisan octane:frankenphp' ] || [ "${1#-}" != "$ frankenphp php-cli artisan migrate --force # If first IN run, it needs to be initialized - if [ "$(php -d opcache.preload='' artisan tinker --execute='echo Schema::hasTable("accounts") && !App\Models\Account::all()->first();')" = "1" ]; then + if [ "$(frankenphp php-cli artisan tinker --execute='echo Schema::hasTable("accounts") && !App\Models\Account::all()->first();')" = "1" ]; then echo "Running initialization..." frankenphp php-cli artisan db:seed --force @@ -82,11 +94,4 @@ if [ "$*" = 'frankenphp php-cli artisan octane:frankenphp' ] || [ "${1#-}" != "$ fi fi -# Set PDF generation browser path based on architecture -if [ "$(dpkg --print-architecture)" = "amd64" ]; then - export SNAPPDF_CHROMIUM_PATH=/usr/bin/google-chrome-stable -elif [ "$(dpkg --print-architecture)" = "arm64" ]; then - export SNAPPDF_CHROMIUM_PATH=/usr/bin/chromium -fi - exec "$@"