diff --git a/docker/sidekiq-entrypoint.sh b/docker/sidekiq-entrypoint.sh index b55f3ff0..4140108a 100644 --- a/docker/sidekiq-entrypoint.sh +++ b/docker/sidekiq-entrypoint.sh @@ -10,18 +10,11 @@ echo "⚠️ Starting Sidekiq in $RAILS_ENV environment ⚠️" # Parse DATABASE_URL if present, otherwise use individual variables if [ -n "$DATABASE_URL" ]; then # Extract components from DATABASE_URL - DATABASE_HOST=$(echo $DATABASE_URL | awk -F[@/] '{print $4}') - DATABASE_PORT=$(echo $DATABASE_URL | awk -F[@/:] '{print $5}') - DATABASE_USERNAME=$(echo $DATABASE_URL | awk -F[:/@] '{print $4}') - DATABASE_PASSWORD=$(echo $DATABASE_URL | awk -F[:/@] '{print $5}') - DATABASE_NAME=$(echo $DATABASE_URL | awk -F[@/] '{print $5}') -else - # Use existing environment variables - DATABASE_HOST=${DATABASE_HOST} - DATABASE_PORT=${DATABASE_PORT} - DATABASE_USERNAME=${DATABASE_USERNAME} - DATABASE_PASSWORD=${DATABASE_PASSWORD} - DATABASE_NAME=${DATABASE_NAME} + DATABASE_HOST="$(echo "$DATABASE_URL" | awk -F[@/] '{print $4}')" + DATABASE_PORT="$(echo "$DATABASE_URL" | awk -F[@/:] '{print $5}')" + DATABASE_USERNAME="$(echo "$DATABASE_URL" | awk -F[:/@] '{print $4}')" + DATABASE_PASSWORD="$(echo "$DATABASE_URL" | awk -F[:/@] '{print $5}')" + DATABASE_NAME="$(echo "$DATABASE_URL" | awk -F[@/] '{print $5}')" fi # Wait for the database to become available @@ -33,4 +26,4 @@ done echo "✅ PostgreSQL is ready!" # run sidekiq -bundle exec sidekiq +exec bundle exec sidekiq diff --git a/docker/web-entrypoint.sh b/docker/web-entrypoint.sh index 9642055f..61e38430 100644 --- a/docker/web-entrypoint.sh +++ b/docker/web-entrypoint.sh @@ -10,18 +10,11 @@ echo "⚠️ Starting Rails environment: $RAILS_ENV ⚠️" # Parse DATABASE_URL if present, otherwise use individual variables if [ -n "$DATABASE_URL" ]; then # Extract components from DATABASE_URL - DATABASE_HOST=$(echo $DATABASE_URL | awk -F[@/] '{print $4}') - DATABASE_PORT=$(echo $DATABASE_URL | awk -F[@/:] '{print $5}') - DATABASE_USERNAME=$(echo $DATABASE_URL | awk -F[:/@] '{print $4}') - DATABASE_PASSWORD=$(echo $DATABASE_URL | awk -F[:/@] '{print $5}') - DATABASE_NAME=$(echo $DATABASE_URL | awk -F[@/] '{print $5}') -else - # Use existing environment variables - DATABASE_HOST=${DATABASE_HOST} - DATABASE_PORT=${DATABASE_PORT} - DATABASE_USERNAME=${DATABASE_USERNAME} - DATABASE_PASSWORD=${DATABASE_PASSWORD} - DATABASE_NAME=${DATABASE_NAME} + DATABASE_HOST="$(echo "$DATABASE_URL" | awk -F[@/] '{print $4}')" + DATABASE_PORT="$(echo "$DATABASE_URL" | awk -F[@/:] '{print $5}')" + DATABASE_USERNAME="$(echo "$DATABASE_URL" | awk -F[:/@] '{print $4}')" + DATABASE_PASSWORD="$(echo "$DATABASE_URL" | awk -F[:/@] '{print $5}')" + DATABASE_NAME="$(echo "$DATABASE_URL" | awk -F[@/] '{print $5}')" fi # Export main database variables to ensure they're available @@ -32,7 +25,7 @@ export DATABASE_PASSWORD export DATABASE_NAME # Remove pre-existing puma/passenger server.pid -rm -f $APP_PATH/tmp/pids/server.pid +rm -f "$APP_PATH/tmp/pids/server.pid" # Function to check and create a PostgreSQL database create_database() { @@ -75,4 +68,4 @@ echo "Running seeds..." bundle exec rails db:seed # run passed commands -bundle exec ${@} +exec bundle exec "${@}"