From 7aed78016c0bb041c85da963c6777cfd1090217c Mon Sep 17 00:00:00 2001 From: Alan Orth Date: Sun, 29 Apr 2018 16:10:53 +0300 Subject: [PATCH] roles/php-fpm: Use set_fact to set packages Instead of looping over a list of items to install, we can actually just give a list directly to the apt module. This allows the module to install all packages in one transaction, which is faster as well as slightly safer for some dependency resolution scenarios. --- roles/php-fpm/tasks/Ubuntu.yml | 23 +++++++++++++---------- roles/php-fpm/tasks/Ubuntu_18.04.yml | 23 +++++++++++++---------- 2 files changed, 26 insertions(+), 20 deletions(-) diff --git a/roles/php-fpm/tasks/Ubuntu.yml b/roles/php-fpm/tasks/Ubuntu.yml index 398d3e9..6815d44 100644 --- a/roles/php-fpm/tasks/Ubuntu.yml +++ b/roles/php-fpm/tasks/Ubuntu.yml @@ -1,17 +1,20 @@ --- - block: + - name: Set php-fpm packages + set_fact: + php_fpm_packages: + - php7.0-fpm + # for WordPress + - php7.0-mysql + - php7.0-gd + - php7.0-curl + # for Piwik + - php7.0-mbstring + - php7.0-xml + - name: Install php7.0-fpm and deps - apt: name={{ item }} state=present update_cache=yes - loop: - - php7.0-fpm - # for WordPress - - php7.0-mysql - - php7.0-gd - - php7.0-curl - # for Piwik - - php7.0-mbstring - - php7.0-xml + apt: name={{ php_fpm_packages }} state=present update_cache=yes # only copy php-fpm config for vhosts that need WordPress or PHP - name: Copy php-fpm pool config diff --git a/roles/php-fpm/tasks/Ubuntu_18.04.yml b/roles/php-fpm/tasks/Ubuntu_18.04.yml index cc64788..b3aead8 100644 --- a/roles/php-fpm/tasks/Ubuntu_18.04.yml +++ b/roles/php-fpm/tasks/Ubuntu_18.04.yml @@ -1,17 +1,20 @@ --- - block: + - name: Set php-fpm packages + set_fact: + php_fpm_packages: + - php-fpm + # for WordPress + - php-mysql + - php-gd + - php-curl + # for Piwik + - php-mbstring + - php-xml + - name: Install php-fpm and deps - apt: name={{ item }} state=present update_cache=yes - loop: - - php-fpm - # for WordPress - - php-mysql - - php-gd - - php-curl - # for Piwik - - php-mbstring - - php-xml + apt: name={{ php_fpm_packages }} state=present update_cache=yes # only copy php-fpm config for vhosts that need WordPress or PHP - name: Copy php-fpm pool config