1{% if grains['os'] == 'CentOS' %}
2
3# START CentOS pkgrepo tests
4{% if grains['osmajorrelease'] == 8 %}
5epel-salttest:
6  pkgrepo.managed:
7    - humanname: Extra Packages for Enterprise Linux 8 - $basearch (salttest)
8    - comments:
9      - '#baseurl=http://download.fedoraproject.org/pub/epel/8/$basearch'
10    - mirrorlist: https://mirrors.fedoraproject.org/metalink?repo=epel-8&arch=$basearch
11    - failovermethod: priority
12    - enabled: 1
13    - gpgcheck: 1
14    - gpgkey: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-8-salttest
15    - require:
16      - file: /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-8-salttest
17
18/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-8-salttest:
19  file.managed:
20    - source: salt://pkgrepo/files/RPM-GPG-KEY-EPEL-8-salttest
21    - user: root
22    - group: root
23    - mode: 644
24{% elif grains['osmajorrelease'] == 7 %}
25epel-salttest:
26  pkgrepo.managed:
27    - humanname: Extra Packages for Enterprise Linux 7 - $basearch (salttest)
28    - comments:
29      - '#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch'
30    - mirrorlist: https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
31    - failovermethod: priority
32    - enabled: 1
33    - gpgcheck: 1
34    - gpgkey: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7-salttest
35    - require:
36      - file: /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7-salttest
37
38/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7-salttest:
39  file.managed:
40    - source: salt://pkgrepo/files/RPM-GPG-KEY-EPEL-7-salttest
41    - user: root
42    - group: root
43    - mode: 644
44{% elif grains['osrelease'].startswith('6.') %}
45epel-salttest:
46  pkgrepo.managed:
47    - humanname: Extra Packages for Enterprise Linux 6 - $basearch (salttest)
48    - comments:
49      - '#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch'
50    - mirrorlist: https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
51    - failovermethod: priority
52    - enabled: 1
53    - gpgcheck: 1
54    - gpgkey: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6-salttest
55    - require:
56      - file: /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6-salttest
57
58/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6-salttest:
59  file.managed:
60    - source: salt://pkgrepo/files/RPM-GPG-KEY-EPEL-6-salttest
61    - user: root
62    - group: root
63    - mode: 644
64{% elif grains['osrelease'].startswith('5.') %}
65epel-salttest:
66  pkgrepo.managed:
67    - humanname: Extra Packages for Enterprise Linux 5 - $basearch (salttest)
68    - comments:
69      - '#baseurl=http://download.fedoraproject.org/pub/epel/5/$basearch'
70    - mirrorlist: http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=$basearch
71    - failovermethod: priority
72    - enabled: 1
73    - gpgcheck: 1
74    - gpgkey: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-5-salttest
75    - require:
76      - file: /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-5-salttest
77
78/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-5-salttest:
79  file.managed:
80    - source: salt://pkgrepo/files/RPM-GPG-KEY-EPEL-5-salttest
81    - user: root
82    - group: root
83    - mode: 644
84{% endif %}
85# END CentOS pkgrepo tests
86
87{% elif grains['os'] == 'Ubuntu' %}
88
89# START Ubuntu pkgrepo tests
90{% set codename = grains['oscodename'] %}
91{% set ubuntu_repos = [] %}
92{% set beta = grains['oscodename'] in ['xenial', 'bionic', 'eoan', 'focal', 'groovy'] %}
93{% set backports = grains['oscodename'] in ['xenial', 'bionic', 'eoan', 'focal'] %}
94
95{%- if beta %}{%- do ubuntu_repos.append('firefox-beta') %}
96firefox-beta:
97  pkgrepo.managed:
98    - name: deb http://ppa.launchpad.net/mozillateam/firefox-next/ubuntu {{ codename }} main
99    - dist: {{ codename }}
100    - file: /etc/apt/sources.list.d/firefox-beta.list
101    - keyid: CE49EC21
102    - keyserver: keyserver.ubuntu.com
103{%- endif %}
104
105{%- if backports %}{%- do ubuntu_repos.append('kubuntu-ppa') %}
106kubuntu-ppa:
107  pkgrepo.managed:
108    - ppa: kubuntu-ppa/backports
109{%- endif %}
110
111pkgrepo-deps:
112  pkg.installed:
113    - pkgs:
114      - python-apt
115      - software-properties-common
116{%- for repo in ubuntu_repos -%}
117{% if loop.first %}
118    - require_in:{%- endif %}
119      - pkgrepo: {{ repo }}
120{%- endfor %}
121# END Ubuntu pkgrepo tests
122
123{% else %}
124
125# No matching OS grain for pkgrepo management, just run something that will
126# return a True result
127date:
128  cmd:
129    - run
130
131{% endif %}
132