{"id":915686,"status":"changed","playbook":{"id":5291,"items":{"plays":1,"tasks":3,"results":15,"hosts":5,"files":1,"records":0},"arguments":{"version":null,"verbosity":0,"private_key_file":"/home/ssh-gateway/.ssh/id_rsa","remote_user":"root","connection":"ssh","timeout":null,"ssh_common_args":null,"sftp_extra_args":null,"scp_extra_args":null,"ssh_extra_args":null,"ask_pass":false,"connection_password_file":null,"force_handlers":false,"flush_cache":false,"become":false,"become_method":"sudo","become_user":null,"become_ask_pass":false,"become_password_file":null,"tags":["all"],"skip_tags":[],"check":false,"diff":false,"inventory":["/home/ssh-gateway/ansible/ansible-luca/ioncube-canary-inventory"],"listhosts":false,"subset":null,"extra_vars":"Not saved by ARA as configured by 'ignored_arguments'","vault_ids":[],"ask_vault_pass":false,"vault_password_files":[],"forks":20,"module_path":null,"syntax":false,"listtasks":false,"listtags":false,"step":false,"start_at_task":null,"args":["ioncube-fixer.yaml"]},"labels":[{"id":1,"name":"remote_user:root"},{"id":2,"name":"check:False"},{"id":3,"name":"tags:all"}],"started":"2026-03-03T21:38:26.121220Z","ended":"2026-03-03T21:38:31.435112Z","duration":"00:00:05.313892","name":null,"ansible_version":"2.16.13","client_version":"1.7.4","python_version":"3.10.10","server_version":"1.7.4","status":"completed","path":"/home/ssh-gateway/ansible/ansible-luca/ioncube-fixer.yaml","controller":"ssh-gw-4.layershift.com","user":"root"},"play":{"id":5813,"items":{"tasks":3,"results":15},"started":"2026-03-03T21:38:26.261356Z","ended":"2026-03-03T21:38:31.140389Z","duration":"00:00:04.879033","name":"RM10252 - PHP EOL Checker","status":"completed"},"task":{"id":12957,"items":{"results":5},"path":"/home/ssh-gateway/ansible/ansible-luca/ioncube-fixer.yaml","tags":[],"started":"2026-03-03T21:38:28.761997Z","ended":"2026-03-03T21:38:30.965830Z","duration":"00:00:02.203833","name":"Fixing poorly loaded ioncube Zend module","uuid":"001851d0-75dc-7be0-059a-000000000009","action":"ansible.builtin.shell","lineno":11,"handler":false,"status":"completed","warnings":[],"deprecations":[],"exceptions":[],"file":7449},"host":{"id":316499,"name":"blush-forest.man-1.vm.plesk-server.com","changed":1,"failed":0,"ok":2,"skipped":1,"unreachable":0},"delegated_to":[],"content":{"changed":true,"cmd":"set -o pipefail\npaths=$(find /opt/alt/php* -name \"default.ini\" | xargs grep -l \"^zend_extension=*ioncube_loader_lin\" 2>/dev/null)\n\nif [[ -n \"$paths\" ]]; then\n  package_names=$(echo \"$paths\" | awk -F'/' '{ print $3 \"-\" $4 \"-ioncube-loader\" }' )\n\n  while IFS= read -r path <&3 && IFS= read -r package <&4; do\n\n    if [[ \"$package\" == *\"alt-php\"* && \"$path\" == \"/opt/alt/php\"* ]]; then\n      echo \"[ INFO ] Installing package: $package\"\n      \n      healthy_ioncube=$(echo $path | sed 's|/etc/php.d/default.ini|etc/php.d.all/ioncube_loader.ini')\n      $rc=0\n      if [[ ! -f \"$healthy_ioncube\" ]]; then\n        dnf install -y \"$package\"\n      fi\n\n      if [ \"$rc\" == 0 ]; then\n        echo \"[ INFO ] Removing the ioncube_loader_lin.so module from $path!\"\n        sed -i '/zend_extension=\\/opt\\/alt\\/php.*\\/ioncube_loader_lin_.*\\.so/d' \"$path\"\n\n        php_bin=$(echo $path | sed 's|/etc/php.d/default.ini|/usr/bin/php|')\n        ioncube_ini=$(echo $path | sed 's|/php.d/default.ini|/php.d.all/ioncube_loader.ini|')\n        dest_path=$(echo $path | sed 's|default.ini|10-ioncube_loader.ini|')\n\n        ln -s \"$ioncube_ini\" \"$dest_path\"\n\n        if ! \"$php_bin\" -i |  grep -w \"ionCube24 v1[4-5]\"; then\n          echo \"[ ERROR ] Ioncube wasn't enabled successfully!\"\n          exit 128\n        else\n          echo \"[ INFO ] Ioncube was enabled successfully!\"\n          exit 0\n        fi\n\n      else\n        echo \"[ ERROR ] Failed to install $package. Stopping script!\"\n        exit 128\n      fi\n\n    else\n      echo \"[ ERROR ] Something went wrong: $path $package\"\n      exit 128\n    fi\n\n  done 3<<< \"$paths\" 4<<< \"$package_names\"\n  find /opt/alt/php* -name \"ioncube_loader_lin*.so\" -type f -delete\n\nelse\n  echo \"[ INFO ] ioncube_loader_lin.so file wasn't found!\"\nfi\n","delta":"0:00:00.578278","end":"2026-03-03 21:38:30.920516","failed_when_result":false,"invocation":{"module_args":{"_raw_params":"set -o pipefail\npaths=$(find /opt/alt/php* -name \"default.ini\" | xargs grep -l \"^zend_extension=*ioncube_loader_lin\" 2>/dev/null)\n\nif [[ -n \"$paths\" ]]; then\n  package_names=$(echo \"$paths\" | awk -F'/' '{ print $3 \"-\" $4 \"-ioncube-loader\" }' )\n\n  while IFS= read -r path <&3 && IFS= read -r package <&4; do\n\n    if [[ \"$package\" == *\"alt-php\"* && \"$path\" == \"/opt/alt/php\"* ]]; then\n      echo \"[ INFO ] Installing package: $package\"\n      \n      healthy_ioncube=$(echo $path | sed 's|/etc/php.d/default.ini|etc/php.d.all/ioncube_loader.ini')\n      $rc=0\n      if [[ ! -f \"$healthy_ioncube\" ]]; then\n        dnf install -y \"$package\"\n      fi\n\n      if [ \"$rc\" == 0 ]; then\n        echo \"[ INFO ] Removing the ioncube_loader_lin.so module from $path!\"\n        sed -i '/zend_extension=\\/opt\\/alt\\/php.*\\/ioncube_loader_lin_.*\\.so/d' \"$path\"\n\n        php_bin=$(echo $path | sed 's|/etc/php.d/default.ini|/usr/bin/php|')\n        ioncube_ini=$(echo $path | sed 's|/php.d/default.ini|/php.d.all/ioncube_loader.ini|')\n        dest_path=$(echo $path | sed 's|default.ini|10-ioncube_loader.ini|')\n\n        ln -s \"$ioncube_ini\" \"$dest_path\"\n\n        if ! \"$php_bin\" -i |  grep -w \"ionCube24 v1[4-5]\"; then\n          echo \"[ ERROR ] Ioncube wasn't enabled successfully!\"\n          exit 128\n        else\n          echo \"[ INFO ] Ioncube was enabled successfully!\"\n          exit 0\n        fi\n\n      else\n        echo \"[ ERROR ] Failed to install $package. Stopping script!\"\n        exit 128\n      fi\n\n    else\n      echo \"[ ERROR ] Something went wrong: $path $package\"\n      exit 128\n    fi\n\n  done 3<<< \"$paths\" 4<<< \"$package_names\"\n  find /opt/alt/php* -name \"ioncube_loader_lin*.so\" -type f -delete\n\nelse\n  echo \"[ INFO ] ioncube_loader_lin.so file wasn't found!\"\nfi\n","_uses_shell":true,"argv":null,"chdir":null,"creates":null,"executable":"/bin/bash","expand_argument_vars":true,"removes":null,"stdin":null,"stdin_add_newline":true,"strip_empty_ends":true}},"msg":"","rc":0,"start":"2026-03-03 21:38:30.342238","stderr":"","stderr_lines":[],"stdout":"[ INFO ] ioncube_loader_lin.so file wasn't found!","stdout_lines":["[ INFO ] ioncube_loader_lin.so file wasn't found!"]},"created":"2026-03-03T21:38:30.957883Z","updated":"2026-03-03T21:38:30.957913Z","started":"2026-03-03T21:38:29.925038Z","ended":"2026-03-03T21:38:30.950465Z","duration":"00:00:01.025427","changed":true,"ignore_errors":false}