diff --git a/entrypoint.sh b/entrypoint.sh index 8bc4e44f..5d47db71 100644 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -84,7 +84,18 @@ echo "Verifying and synchronizing Composer dependencies..." # Run composer install to physically ensure all files (like laravel/prompts) are present in the volume composer install --no-interaction --optimize-autoloader -# Add after the "composer install --no-interaction --optimize-autoloader" line + +# Ensure vendor directory matches composer.lock exactly, syncing missing packages +echo "Verifying and synchronizing Composer dependencies..." + +# Check if composer.json has new packages not in lock file +if composer validate --no-check-all --no-check-publish 2>/dev/null | grep -q "The lock file is not up to date"; then + echo "⚠️ Composer lock file is outdated. Running composer update to sync..." + composer update --no-interaction --optimize-autoloader +else + # Run composer install to physically ensure all files are present + composer install --no-interaction --optimize-autoloader +fi # Install and publish Scribe assets echo "Setting up Scribe/OpenAPI documentation..."