Browse Source

fix(debian): avoid adding repositories entries multiple times

Entries are being duplicated as described in

* https://github.com/saltstack/salt/issues/60220 and
* https://github.com/saltstack/salt/issues/59785#issuecomment-826590482
tags/v2.8.1
Javier Bértoli 2 years ago
parent
commit
d1d3e552ad
3 changed files with 18 additions and 13 deletions
  1. +3
    -1
      nginx/map.jinja
  2. +1
    -0
      nginx/passenger.sls
  3. +14
    -12
      nginx/pkg.sls

+ 3
- 1
nginx/map.jinja View File

'opts': {}, 'opts': {},
}, },
'package': { 'package': {
'opts': {},
'opts': {
'refresh': True,
},
}, },
'service': { 'service': {
'enable': True, 'enable': True,

+ 1
- 0
nginx/passenger.sls View File



passenger_install: passenger_install:
pkg.installed: pkg.installed:
{{ sls_block(nginx.package.opts) }}
- name: {{ nginx.lookup.passenger_package }} - name: {{ nginx.lookup.passenger_package }}
- require: - require:
- pkg: nginx_install - pkg: nginx_install

+ 14
- 12
nginx/pkg.sls View File

{% set from_phusionpassenger = false %} {% set from_phusionpassenger = false %}
{%- endif %} {%- endif %}


{%- set resource_repo_managed = 'file' if grains.os_family == 'Debian' else 'pkgrepo' %}

nginx_install: nginx_install:
pkg.installed: pkg.installed:
{{ sls_block(nginx.package.opts) }} {{ sls_block(nginx.package.opts) }}
) )
}} }}
- require_in: - require_in:
- pkgrepo: nginx_official_repo
- {{ resource_repo_managed }}: nginx_official_repo
{%- endif %} {%- endif %}


nginx_official_repo: nginx_official_repo:
pkgrepo:
file:
{%- if from_official %} {%- if from_official %}
- managed - managed
{%- else %} {%- else %}
- absent - absent
{%- endif %} {%- endif %}
- humanname: nginx apt repo
- name: >-
- name: /etc/apt/sources.list.d/nginx-official-{{ grains.oscodename }}.list
- contents: >
deb [signed-by={{ nginx.lookup.package_repo_keyring }}] deb [signed-by={{ nginx.lookup.package_repo_keyring }}]
http://nginx.org/packages/{{ grains.os | lower }}/ {{ grains.oscodename }} nginx http://nginx.org/packages/{{ grains.os | lower }}/ {{ grains.oscodename }} nginx
- file: /etc/apt/sources.list.d/nginx-official-{{ grains.oscodename }}.list
- require_in: - require_in:
- pkg: nginx_install - pkg: nginx_install
- watch_in: - watch_in:
) )
}} }}
- require_in: - require_in:
- pkgrepo: nginx_phusionpassenger_repo
- {{ resource_repo_managed }}: nginx_phusionpassenger_repo


# Remove the old repo file # Remove the old repo file
nginx_phusionpassenger_repo_remove: nginx_phusionpassenger_repo_remove:
- name: deb http://nginx.org/packages/{{ grains.os |lower }}/ {{ grains.oscodename }} nginx - name: deb http://nginx.org/packages/{{ grains.os |lower }}/ {{ grains.oscodename }} nginx
- keyid: 561F9B9CAC40B2F7 - keyid: 561F9B9CAC40B2F7
- require_in: - require_in:
- pkgrepo: nginx_phusionpassenger_repo
- {{ resource_repo_managed }}: nginx_phusionpassenger_repo
file.absent: file.absent:
- name: /etc/apt/sources.list.d/nginx-phusionpassenger-{{ grains.oscodename }}.list - name: /etc/apt/sources.list.d/nginx-phusionpassenger-{{ grains.oscodename }}.list
- require_in: - require_in:
- pkgrepo: nginx_phusionpassenger_repo
- {{ resource_repo_managed }}: nginx_phusionpassenger_repo
{%- endif %} {%- endif %}


nginx_phusionpassenger_repo: nginx_phusionpassenger_repo:
pkgrepo:
file:
{%- if from_phusionpassenger %} {%- if from_phusionpassenger %}
- managed - managed
{%- else %} {%- else %}
- absent - absent
{%- endif %} {%- endif %}
- humanname: nginx phusionpassenger repo
- name: >-
- name: /etc/apt/sources.list.d/phusionpassenger-official-{{ grains.oscodename }}.list
- contents: >
deb [signed-by={{ nginx.lookup.passenger_package_repo_keyring }}] deb [signed-by={{ nginx.lookup.passenger_package_repo_keyring }}]
https://oss-binaries.phusionpassenger.com/apt/passenger {{ grains.oscodename }} main https://oss-binaries.phusionpassenger.com/apt/passenger {{ grains.oscodename }} main
- file: /etc/apt/sources.list.d/phusionpassenger-official-{{ grains.oscodename }}.list
- require_in: - require_in:
- pkg: nginx_install - pkg: nginx_install
- watch_in: - watch_in:

Loading…
Cancel
Save