2
2
#
3
3
# Manages installation of nginx from pkg.
4
4
5
- {% from ' nginx/map.jinja' import nginx, sls_block with context % }
5
+ {# - Get the `tplroot` from `tpldir` #}
6
+ {%- set tplroot = tpldir.split(' /' )[0 ] %}
7
+ {%- from tplroot ~ " /map.jinja" import nginx, sls_block with context % }
8
+ {%- from tplroot ~ " /libtofs.jinja" import files_switch with context % }
9
+
6
10
{%- if nginx.install_from_repo % }
7
11
{% set from_official = true % }
8
12
{% set from_ppa = false % }
@@ -33,7 +37,19 @@ nginx_install:
33
37
- name: {{ nginx.lookup.package }}
34
38
{% endif % }
35
39
36
- {% if salt[' grains.get' ](' os_family' ) == ' Debian' % }
40
+ {% if grains.os_family == ' Debian' % }
41
+ {%- if from_official % }
42
+ nginx_official_repo_keyring:
43
+ file .managed:
44
+ - name: {{ nginx.lookup.package_repo_keyring }}
45
+ - source: {{ files_switch([' nginx-archive-keyring.gpg' ],
46
+ lookup = ' nginx_official_repo_keyring'
47
+ )
48
+ }}
49
+ - require_in:
50
+ - pkgrepo: nginx_official_repo
51
+ {%- endif % }
52
+
37
53
nginx_official_repo:
38
54
pkgrepo:
39
55
{%- if from_official % }
@@ -42,10 +58,10 @@ nginx_official_repo:
42
58
- absent
43
59
{%- endif % }
44
60
- humanname: nginx apt repo
45
- - name: deb http: // nginx.org / packages / {{ grains[ ' os ' ].lower() }} / {{ grains[ ' oscodename ' ] }} nginx
46
- - file : / etc / apt / sources.list.d / nginx - official - {{ grains[ ' oscodename ' ] }}.list
47
- - keyid: ABF5BD827BD9BF62
48
- - keyserver: keyserver.ubuntu.com
61
+ - name: > -
62
+ deb [signed - by= {{ nginx.lookup.package_repo_keyring }}]
63
+ http: // nginx.org / packages / {{ grains.os | lower }} / {{ grains.oscodename }} nginx
64
+ - file : / etc / apt / sources.list.d / nginx - official - {{ grains.oscodename }}.list
49
65
- require_in:
50
66
- pkg: nginx_install
51
67
- watch_in:
@@ -60,10 +76,10 @@ nginx_ppa_repo:
60
76
{%- else % }
61
77
- absent
62
78
{%- endif % }
63
- {% if salt[ ' grains.get ' ]( ' os ' ) == ' Ubuntu' % }
79
+ {% if grains.os == ' Ubuntu' % }
64
80
- ppa: nginx/ {{ nginx.ppa_version }}
65
81
{% else % }
66
- - name: deb http:// ppa.launchpad.net/ nginx/ {{ nginx.ppa_version }}/ ubuntu {{ grains[ ' oscodename' ] }} main
82
+ - name: deb http:// ppa.launchpad.net/ nginx/ {{ nginx.ppa_version }}/ ubuntu {{ grains. oscodename }} main
67
83
- keyid: C300EE8C
68
84
- keyserver: keyserver.ubuntu.com
69
85
{% endif % }
@@ -73,6 +89,30 @@ nginx_ppa_repo:
73
89
- pkg: nginx_install
74
90
{%- endif % }
75
91
92
+ {%- if from_phusionpassenger % }
93
+ nginx_phusionpassenger_repo_keyring:
94
+ file .managed:
95
+ - name: / usr/ share/ keyrings/ phusionpassenger- archive- keyring.gpg
96
+ - source: {{ files_switch([' phusionpassenger-archive-keyring.gpg' ],
97
+ lookup = ' nginx_phusionpassenger_repo_keyring'
98
+ )
99
+ }}
100
+ - require_in:
101
+ - pkgrepo: nginx_phusionpassenger_repo
102
+
103
+ # Remove the old repo file
104
+ nginx_phusionpassenger_repo_remove:
105
+ pkgrepo.absent:
106
+ - name: deb http:// nginx.org/ packages/ {{ grains.os | lower }}/ {{ grains.oscodename }} nginx
107
+ - keyid: 561F9B9CAC40B2F7
108
+ - require_in:
109
+ - pkgrepo: nginx_phusionpassenger_repo
110
+ file .absent:
111
+ - name: / etc/ apt/ sources.list.d/ nginx- phusionpassenger- {{ grains.oscodename }}.list
112
+ - require_in:
113
+ - pkgrepo: nginx_phusionpassenger_repo
114
+ {%- endif % }
115
+
76
116
nginx_phusionpassenger_repo:
77
117
pkgrepo:
78
118
{%- if from_phusionpassenger % }
@@ -81,17 +121,17 @@ nginx_phusionpassenger_repo:
81
121
- absent
82
122
{%- endif % }
83
123
- humanname: nginx phusionpassenger repo
84
- - name: deb https: // oss - binaries.phusionpassenger.com / apt / passenger {{ grains[ ' oscodename ' ] }} main
85
- - file : / etc / apt / sources.list.d / nginx - phusionpassenger - {{ grains[ ' oscodename ' ] }}.list
86
- - keyid: 561F9B9CAC40B2F7
87
- - keyserver: keyserver.ubuntu.com
124
+ - name: > -
125
+ deb [signed - by= {{ nginx.lookup.passenger_package_repo_keyring }}]
126
+ https: // oss - binaries.phusionpassenger.com / apt / passenger {{ grains.oscodename }} main
127
+ - file : / etc / apt / sources.list.d / phusionpassenger - official - {{ grains.oscodename }}.list
88
128
- require_in:
89
129
- pkg: nginx_install
90
130
- watch_in:
91
131
- pkg: nginx_install
92
132
{% endif % }
93
133
94
- {% if salt[ ' grains.get ' ]( ' os_family' ) == ' Suse' or salt[ ' grains.get ' ]( ' os ' ) == ' SUSE' % }
134
+ {% if grains.os_family == ' Suse' or grains.os == ' SUSE' % }
95
135
nginx_zypp_repo:
96
136
pkgrepo:
97
137
{%- if from_official % }
@@ -112,8 +152,8 @@ nginx_zypp_repo:
112
152
- pkg: nginx_install
113
153
{% endif % }
114
154
115
- {% if salt[ ' grains.get ' ]( ' os_family' ) == ' RedHat' % }
116
- {% if salt[ ' grains.get' ] (' osfinger' , ' ' ) in [ ' Amazon Linux-2' ] % }
155
+ {% if grains.os_family == ' RedHat' % }
156
+ {% if grains.get(' osfinger' , ' ' ) == ' Amazon Linux-2' % }
117
157
nginx_epel_repo:
118
158
pkgrepo.managed:
119
159
- name: epel
@@ -138,7 +178,7 @@ nginx_yum_repo:
138
178
{%- endif % }
139
179
- name: nginx
140
180
- humanname: nginx repo
141
- {%- if salt[ ' grains.get ' ]( ' os ' ) == ' CentOS' % }
181
+ {%- if grains.os == ' CentOS' % }
142
182
- baseurl: ' http://nginx.org/packages/centos/$releasever/$basearch/'
143
183
{%- else % }
144
184
- baseurl: ' http://nginx.org/packages/rhel/{{ nginx.lookup.rh_os_releasever }} /$basearch/'
0 commit comments