Browse Source

add official nginx ppa for ubuntu

adds ppa:nginx to apt repositories when
nginx_use_ppa is set to yes (default no)

nginx_ppa_version can be either "stable" or "development"

this will reinstall nginx if ppa was just added to ensure that the ppa
version will be installed
Frederik Wille 10 năm trước cách đây
mục cha
commit
3063875875
4 tập tin đã thay đổi với 19 bổ sung1 xóa
  1. 3 0
      defaults/main.yml
  2. 3 0
      tasks/main.yml
  3. 11 0
      tasks/setup-Ubuntu.yml
  4. 2 1
      tests/test.yml

+ 3 - 0
defaults/main.yml

@@ -50,3 +50,6 @@ nginx_upstreams: []
 #     "srv2.example.com weight=3",
 #     "srv3.example.com"
 #   }
+
+nginx_ppa_version: stable
+nginx_use_ppa: false

+ 3 - 0
tasks/main.yml

@@ -12,6 +12,9 @@
 - include: setup-RedHat.yml
   when: ansible_os_family == 'RedHat'
 
+- include: setup-Ubuntu.yml
+  when: ansible_distribution == 'Ubuntu'
+
 - include: setup-Debian.yml
   when: ansible_os_family == 'Debian'
 

+ 11 - 0
tasks/setup-Ubuntu.yml

@@ -0,0 +1,11 @@
+---
+  - name: Add PPA for Nginx.
+    apt_repository: repo='ppa:nginx/{{ nginx_ppa_version }}' state=present update_cache=yes
+    register: added_ppa
+    when: nginx_use_ppa
+
+  - name: ensure nginx is not installed when the ppa was just added
+    apt:
+      pkg: nginx
+      state: absent
+    when: added_ppa.changed

+ 2 - 1
tests/test.yml

@@ -2,4 +2,5 @@
 - hosts: localhost
   remote_user: root
   roles:
-    - ansible-role-nginx
+    - role: ansible-role-nginx
+      nginx_use_ppa: true