From b095f87f85e4a2c34c131c8850dd78552ac4ab88 Mon Sep 17 00:00:00 2001 From: Tristan PILAT Date: Tue, 31 Jul 2018 16:05:47 +0200 Subject: [PATCH] Nginx role now handle Nginx installation from backports for either Debian Jessie or Stretch --- nginx/README.md | 2 +- nginx/defaults/main.yml | 2 +- nginx/tasks/main_regular.yml | 6 +----- nginx/tasks/{packages_stretch.yml => packages.yml} | 8 +++++--- ...es_jessie_backports.yml => packages_backports.yml} | 4 ++-- nginx/tasks/packages_jessie.yml | 11 ----------- nginx/{files => templates}/apt/nginx_preferences | 2 +- 7 files changed, 11 insertions(+), 24 deletions(-) rename nginx/tasks/{packages_stretch.yml => packages.yml} (70%) rename nginx/tasks/{packages_jessie_backports.yml => packages_backports.yml} (86%) delete mode 100644 nginx/tasks/packages_jessie.yml rename nginx/{files => templates}/apt/nginx_preferences (50%) diff --git a/nginx/README.md b/nginx/README.md index 73ede527..96d061ed 100644 --- a/nginx/README.md +++ b/nginx/README.md @@ -17,7 +17,7 @@ The regular mode is for full fledged web services with optimized defaults. Main variables are : * `nginx_minimal` : very basic install and config (default: `False`) ; -* `nginx_jessie_backports` : on Debian Jessie, we can prefer v1.10 from backports (default: `False`) ; +* `nginx_backports` : we can prefer higher version from backports (default: `False`) ; * `nginx_ipaddr_whitelist_present` : list of IP addresses to have in the private whitelist ; * `nginx_ipaddr_whitelist_absent` : list of IP addresses **not** to have in the whitelist ; * `nginx_private_htpasswd_present` : list of users to have in the private htpasswd ; diff --git a/nginx/defaults/main.yml b/nginx/defaults/main.yml index 0591945d..836de7c7 100644 --- a/nginx/defaults/main.yml +++ b/nginx/defaults/main.yml @@ -1,7 +1,7 @@ --- nginx_minimal: False -nginx_jessie_backports: False +nginx_backports: False nginx_package_name: "nginx-full" diff --git a/nginx/tasks/main_regular.yml b/nginx/tasks/main_regular.yml index f4dce1d7..559bc5d1 100644 --- a/nginx/tasks/main_regular.yml +++ b/nginx/tasks/main_regular.yml @@ -1,10 +1,6 @@ --- -- include: packages_jessie.yml - when: ansible_distribution_release == "jessie" - -- include: packages_stretch.yml - when: ansible_distribution_major_version | version_compare('9', '>=') +- include: packages.yml # TODO: find a way to override the main configuration # without touching the main file diff --git a/nginx/tasks/packages_stretch.yml b/nginx/tasks/packages.yml similarity index 70% rename from nginx/tasks/packages_stretch.yml rename to nginx/tasks/packages.yml index 565b9b1d..ccbd3705 100644 --- a/nginx/tasks/packages_stretch.yml +++ b/nginx/tasks/packages.yml @@ -1,4 +1,6 @@ ---- +- include: packages_backports.yml + when: nginx_backports + # TODO: install "nginx" + only necessary modules, instead of "nginx-full" - name: Ensure Nginx is installed @@ -7,5 +9,5 @@ state: present notify: restart nginx tags: - - nginx - - packages + - nginx + - packages diff --git a/nginx/tasks/packages_jessie_backports.yml b/nginx/tasks/packages_backports.yml similarity index 86% rename from nginx/tasks/packages_jessie_backports.yml rename to nginx/tasks/packages_backports.yml index 91a6643b..dbb3a76a 100644 --- a/nginx/tasks/packages_jessie_backports.yml +++ b/nginx/tasks/packages_backports.yml @@ -7,8 +7,8 @@ - nginx - packages -- name: Prefer Nginx packages from jessie-backports - copy: +- name: Prefer Nginx packages from backports + template: src: apt/nginx_preferences dest: /etc/apt/preferences.d/999-nginx force: yes diff --git a/nginx/tasks/packages_jessie.yml b/nginx/tasks/packages_jessie.yml deleted file mode 100644 index 25cc18ed..00000000 --- a/nginx/tasks/packages_jessie.yml +++ /dev/null @@ -1,11 +0,0 @@ -- include: packages_jessie_backports.yml - when: ansible_distribution_release == "jessie" and nginx_jessie_backports - -- name: Ensure Nginx is installed - apt: - name: "{{ nginx_package_name }}" - state: present - notify: restart nginx - tags: - - nginx - - packages diff --git a/nginx/files/apt/nginx_preferences b/nginx/templates/apt/nginx_preferences similarity index 50% rename from nginx/files/apt/nginx_preferences rename to nginx/templates/apt/nginx_preferences index 1c8275d1..84bf65ff 100644 --- a/nginx/files/apt/nginx_preferences +++ b/nginx/templates/apt/nginx_preferences @@ -1,3 +1,3 @@ Package: nginx nginx-* libnginx-* libssl* -Pin: release a=jessie-backports +Pin: release a={{ ansible_distribution_release }}-backports Pin-Priority: 999