瀏覽代碼

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 年之前
父節點
當前提交
3063875875
共有 4 個文件被更改,包括 19 次插入1 次删除
  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