From 450efd40b04cc87e9502b25a0ace7c0ad171f751 Mon Sep 17 00:00:00 2001 From: Sam428-png Date: Mon, 24 Nov 2025 13:21:25 +0100 Subject: [PATCH] Updated php version --- install_nextcloud.yml | 92 +++++++++++++++++++++++-------------------- 1 file changed, 50 insertions(+), 42 deletions(-) diff --git a/install_nextcloud.yml b/install_nextcloud.yml index 740e6d1..a6470a4 100644 --- a/install_nextcloud.yml +++ b/install_nextcloud.yml @@ -17,6 +17,7 @@ become: true vars: ansible_python_interpreter: /usr/bin/python3 + php_version: "8.3" # Gefixeerde versie - compatibel met Nextcloud tasks: - name: Voeg ondubbelzinnig de laatste stabiele PHP PPA toe (voor recentste versies) @@ -25,22 +26,22 @@ state: present update_cache: yes - - name: Installeer benodigde pakketten + - name: Installeer benodigde pakketten met specifieke PHP-versie apt: name: - apache2 - mariadb-server - - php - - php-mysql - - php-xml - - php-mbstring - - php-curl - - php-gd - - php-zip - - php-intl - - php-bcmath - - php-gmp - - libapache2-mod-php + - "php{{ php_version }}" + - "php{{ php_version }}-mysql" + - "php{{ php_version }}-xml" + - "php{{ php_version }}-mbstring" + - "php{{ php_version }}-curl" + - "php{{ php_version }}-gd" + - "php{{ php_version }}-zip" + - "php{{ php_version }}-intl" + - "php{{ php_version }}-bcmath" + - "php{{ php_version }}-gmp" + - "libapache2-mod-php{{ php_version }}" - unzip - wget - curl @@ -50,17 +51,26 @@ state: present update_cache: yes - - name: Detecteer actieve PHP-versie - shell: php -r 'echo PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;' - register: detected_php_version - retries: 5 - delay: 3 - until: detected_php_version.rc == 0 + - name: Deactiveer andere PHP-versies in Apache + shell: a2dismod php* || true changed_when: false + failed_when: false - - name: Zet gedetecteerde PHP-versie als fact - set_fact: - php_version: "{{ detected_php_version.stdout }}" + - name: Activeer PHP {{ php_version }} module in Apache + shell: "a2enmod php{{ php_version }}" + register: php_mod_enabled + changed_when: "'enabled' in php_mod_enabled.stdout" + + - name: Stel PHP {{ php_version }} in als standaard CLI-versie + community.general.alternatives: + name: php + path: "/usr/bin/php{{ php_version }}" + ignore_errors: yes + + - name: Fallback - stel PHP {{ php_version }} in als standaard via shell + shell: "update-alternatives --set php /usr/bin/php{{ php_version }}" + changed_when: false + failed_when: false - name: Verhoog PHP-geheugenlimiet naar 512 MB lineinfile: @@ -72,9 +82,8 @@ - name: Verhoog OPcache interned_strings_buffer naar aanbevolen waarde lineinfile: path: "/etc/php/{{ php_version }}/apache2/php.ini" - regexp: '^opcache\.interned_strings_buffer\s*=' + regexp: '^;?opcache\.interned_strings_buffer\s*=' line: 'opcache.interned_strings_buffer = 16' - insertafter: EOF backup: yes - name: Start Apache en MariaDB @@ -201,7 +210,7 @@ - name: Installeer Nextcloud via OCC shell: > - sudo -u www-data php /var/www/nextcloud/occ maintenance:install + sudo -u www-data php{{ php_version }} /var/www/nextcloud/occ maintenance:install --database "mysql" --database-name "{{ nextcloud_db }}" --database-user "{{ nextcloud_db_user }}" @@ -213,7 +222,7 @@ chdir: /var/www/nextcloud - name: Wacht tot Nextcloud config:system commando beschikbaar is - shell: sudo -u www-data php /var/www/nextcloud/occ list + shell: "sudo -u www-data php{{ php_version }} /var/www/nextcloud/occ list" register: occ_list_output retries: 5 delay: 10 @@ -223,28 +232,28 @@ - name: Voeg domein toe aan trusted_domains shell: > - sudo -u www-data php /var/www/nextcloud/occ config:system:set trusted_domains 1 + sudo -u www-data php{{ php_version }} /var/www/nextcloud/occ config:system:set trusted_domains 1 --value="{{ nextcloud_domain }}" args: chdir: /var/www/nextcloud - name: Voer mimetype migraties uit via occ - shell: sudo -u www-data php /var/www/nextcloud/occ maintenance:repair --include-expensive + shell: "sudo -u www-data php{{ php_version }} /var/www/nextcloud/occ maintenance:repair --include-expensive" args: chdir: /var/www/nextcloud - name: Repareer ontbrekende theming-cachebestanden - shell: sudo -u www-data php /var/www/nextcloud/occ maintenance:repair + shell: "sudo -u www-data php{{ php_version }} /var/www/nextcloud/occ maintenance:repair" args: chdir: /var/www/nextcloud - name: Registreer theming-app expliciet opnieuw - shell: sudo -u www-data php /var/www/nextcloud/occ app:enable theming + shell: "sudo -u www-data php{{ php_version }} /var/www/nextcloud/occ app:enable theming" args: chdir: /var/www/nextcloud - name: Stel Nextcloud in om cron als achtergrondproces te gebruiken - shell: sudo -u www-data php /var/www/nextcloud/occ background:cron + shell: "sudo -u www-data php{{ php_version }} /var/www/nextcloud/occ background:cron" args: chdir: /var/www/nextcloud @@ -253,7 +262,7 @@ name: "Nextcloud background jobs" user: www-data minute: "*/5" - job: "php -f /var/www/nextcloud/cron.php" + job: "php{{ php_version }} -f /var/www/nextcloud/cron.php" - name: Voeg cronjob toe voor Nextcloud logrotatie (dagelijks) cron: @@ -261,7 +270,7 @@ user: www-data minute: "0" hour: "2" - job: "php /var/www/nextcloud/occ log:manage --shrink --days=14" + job: "php{{ php_version }} /var/www/nextcloud/occ log:manage --shrink --days=14" cron_file: nextcloud_logrotate - name: Voeg cronjob toe voor OCC onderhoud (elke zondag) @@ -271,7 +280,7 @@ minute: "30" hour: "3" weekday: "0" - job: "php /var/www/nextcloud/occ maintenance:repair && php /var/www/nextcloud/occ files:scan-app-data" + job: "php{{ php_version }} /var/www/nextcloud/occ maintenance:repair && php{{ php_version }} /var/www/nextcloud/occ files:scan-app-data" cron_file: nextcloud_maintenance - name: Voeg cronjob toe voor mimetype repair (1× per week) @@ -281,18 +290,18 @@ minute: "0" hour: "4" weekday: "0" - job: "php /var/www/nextcloud/occ maintenance:repair --include-expensive" + job: "php{{ php_version }} /var/www/nextcloud/occ maintenance:repair --include-expensive" cron_file: nextcloud_mimetype_repair - name: Stel onderhoudsvenster in op 03:00 (Nextcloud background tasks) shell: > - sudo -u www-data php /var/www/nextcloud/occ config:system:set maintenance_window_start --value="3" + sudo -u www-data php{{ php_version }} /var/www/nextcloud/occ config:system:set maintenance_window_start --value="3" args: chdir: /var/www/nextcloud - name: Stel standaard telefoonregio in (bijv. NL) shell: > - sudo -u www-data php /var/www/nextcloud/occ config:system:set default_phone_region --value="NL" + sudo -u www-data php{{ php_version }} /var/www/nextcloud/occ config:system:set default_phone_region --value="NL" args: chdir: /var/www/nextcloud @@ -313,7 +322,7 @@ state: present update_cache: yes notify: Herstart Apache - + - name: Installeer php{{ php_version }}-redis apt: name: @@ -331,11 +340,11 @@ - name: Installeer php-imagick extensie apt: - name: php-imagick + name: "php{{ php_version }}-imagick" state: present update_cache: yes notify: Herstart Apache - + - name: Installeer ImageMagick en SVG-ondersteuning apt: name: @@ -348,17 +357,16 @@ - name: Stel memcache in (APCu) voor Nextcloud shell: > - sudo -u www-data php /var/www/nextcloud/occ config:system:set memcache.local --value="\\OC\\Memcache\\APCu" --type=string + sudo -u www-data php{{ php_version }} /var/www/nextcloud/occ config:system:set memcache.local --value="\\OC\\Memcache\\APCu" --type=string args: chdir: /var/www/nextcloud - name: Stel memcache locking in (Redis) voor Nextcloud shell: > - sudo -u www-data php /var/www/nextcloud/occ config:system:set memcache.locking --value="\\OC\\Memcache\\Redis" --type=string + sudo -u www-data php{{ php_version }} /var/www/nextcloud/occ config:system:set memcache.locking --value="\\OC\\Memcache\\Redis" --type=string args: chdir: /var/www/nextcloud - handlers: - name: Herstart Apache systemd: