{"id":7218,"sha1":"e6312871cd1db2838231a1fb6a3afcf820c5e45d","playbook":{"id":5061,"items":{"plays":1,"tasks":6,"results":6,"hosts":2,"files":1,"records":0},"arguments":{"version":null,"verbosity":2,"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/bash-kvm-inventory-prod.sh"],"listhosts":false,"subset":"versatile-chipmunk.man-1.vm.plesk-server.com","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":["eol-checker.yaml"]},"labels":[{"id":1,"name":"remote_user:root"},{"id":2,"name":"check:False"},{"id":3,"name":"tags:all"},{"id":80,"name":"subset:versatile-chipmunk.man-1.vm.plesk-server.com"}],"started":"2026-02-02T22:27:07.095831Z","ended":"2026-02-02T22:27:11.976210Z","duration":"00:00:04.880379","name":null,"ansible_version":"2.16.11","client_version":"1.7.4","python_version":"3.10.10","server_version":"1.7.4","status":"failed","path":"/home/ssh-gateway/ansible/ansible-luca/eol-checker.yaml","controller":"ssh-gw-4.layershift.com","user":"root"},"content":"---\n- name: RM10252 - PHP EOL Checker\n  hosts: all\n  gather_facts: false\n  strategy: linear\n\n  vars:\n    active_php_sql: >-\n      select d.name, h.php_handler_id\n      from domains d\n      join hosting h on h.dom_id = d.id\n      where h.php = 'true'\n        AND h.php_handler_id REGEXP '^plesk-php(81|80|7|5)';\n\n    disabled_php_sql: >-\n      select d.name, h.php_handler_id\n      from domains d\n      join hosting h on h.dom_id = d.id\n      where h.php = 'false'\n        AND h.php_handler_id REGEXP '^plesk-php(81|80|7|5)';\n\n  tasks:\n    - name: Initialize per-host report object (always)\n      ansible.builtin.set_fact:\n        rm10252_report:\n          hostname: \"{{ inventory_hostname }}\"\n          active_php_domains: []\n          disabled_php_domains: []\n\n    - name: Get Info\n      plesk_info:\n      register: plsk\n\n    - name: Query domains using active EOL Plesk PHP handlers\n      ansible.builtin.command:\n        argv:\n          - plesk\n          - db\n          - -Ne\n          - \"{{ active_php_sql }}\"\n      register: active_eol_php\n      when:\n        - plsk.plesk_found\n        - plsk.imunify_found or plsk.cloudlinux_found\n      changed_when: false\n      failed_when: false\n\n    - name: Query domains using disabled EOL Plesk PHP handlers\n      ansible.builtin.command:\n        argv:\n          - plesk\n          - db\n          - -Ne\n          - \"{{ disabled_php_sql }}\"\n      register: disabled_eol_php\n      when:\n        - plsk.plesk_found\n        - plsk.imunify_found or plsk.cloudlinux_found\n      changed_when: false\n      failed_when: false\n\n    - name: Update per-host report object with query results\n      ansible.builtin.set_fact:\n        rm10252_report:\n          hostname: \"{{ inventory_hostname }}\"\n          active_php_domains: \"{{ active_eol_php.stdout_lines | default([]) }}\"\n          disabled_php_domains: \"{{ disabled_eol_php.stdout_lines | default([]) }}\"\n      when: active_eol_php is defined or disabled_eol_php is defined\n\n    - name: Write report to JSON file\n      ansible.builtin.copy:\n        dest: RM10252/eol_domains_report.json\n        mode: \"0644\"\n        content: >-\n          {{\n            (ansible_play_hosts_all\n              | map('extract', hostvars)\n              | map(attribute='rm10252_report', default={})\n              | reject('equalto', {})\n              | list)\n            | to_nice_json\n          }}\n      delegate_to: localhost\n      run_once: true\n      when: >-\n        (\n          ansible_play_hosts_all\n          | map('extract', hostvars)\n          | map(attribute='rm10252_report', default={})\n          | selectattr('active_php_domains', 'defined')\n          | selectattr('active_php_domains', 'length')\n          | list\n          | length\n        ) > 0\n        or\n        (\n          ansible_play_hosts_all\n          | map('extract', hostvars)\n          | map(attribute='rm10252_report', default={})\n          | selectattr('disabled_php_domains', 'defined')\n          | selectattr('disabled_php_domains', 'length')\n          | list\n          | length\n        ) > 0\n","created":"2026-02-02T22:27:07.109097Z","updated":"2026-02-02T22:27:07.109121Z","path":"/home/ssh-gateway/ansible/ansible-luca/eol-checker.yaml"}