#!/bin/bash # Lenverge Smart PHP Wrapper # This script executes any 'php' command with the project-specific PHP version. DEFAULT_PHP_BINARY="/usr/bin/php" PHP_BINARY="" LENVI_CONFIG_FILE="{{ playbook_dir }}/Lenverge.yaml" if [[ -f "$LENVI_CONFIG_FILE" ]]; then CURRENT_PROJECT_ROOT=$(pwd) PHP_VERSION=$(yq eval '.sites[] | select(.project_root == "'"$CURRENT_PROJECT_ROOT"'") | .php_version' "$LENVI_CONFIG_FILE") if [[ -n "$PHP_VERSION" && -x "/usr/bin/php$PHP_VERSION" ]]; then PHP_BINARY="/usr/bin/php$PHP_VERSION" fi fi if [[ -z "$PHP_BINARY" ]]; then PHP_BINARY="$DEFAULT_PHP_BINARY" fi exec "$PHP_BINARY" "$@"