--- - name: Set the correct opcache filename (Ubuntu). set_fact: php_opcache_conf_filename: "10-opcache.ini" when: ansible_distribution == "Ubuntu" - name: Add repository for PHP versions (Ubuntu). apt_repository: repo='ppa:ondrej/php' when: ansible_distribution == "Ubuntu" - name: Add repository for PHP 5 compatibility packages (Ubuntu). apt_repository: repo='ppa:ondrej/php5-compat' when: php_version == "5.6" and ansible_distribution == "Ubuntu" # Debian-specific tasks. - name: Add dependencies for PHP versions (Debian). apt: name: "{{ item }}" with_items: - apt-transport-https - ca-certificates when: ansible_distribution == "Debian" - name: Add Ondrej Sury's apt key (Debian). apt_key: url: https://packages.sury.org/php/apt.gpg state: present when: ansible_distribution == "Debian" - name: Add Ondrej Sury's repo (Debian). apt_repository: repo: "deb https://packages.sury.org/php/ {{ ansible_distribution_release }} main" state: present register: php_ondrej_debian_repo when: ansible_distribution == "Debian" - name: Update apt caches after repo is added (Debian). apt: update_cache=yes when: php_ondrej_debian_repo.changed and (ansible_distribution == "Debian") # PHP package purges. - name: Purge PHP version packages. apt: name: "{{ item }}" state: absent purge: yes force: yes when: "'php' + php_version not in item" with_flattened: - "{{ php_packages|regex_replace('php' + php_version, 'php5.6') }}" - "{{ php_packages|regex_replace('php' + php_version, 'php7.0') }}" - "{{ php_packages|regex_replace('php' + php_version, 'php7.1') }}"