Skip to content

Commit c6f3984

Browse files
committed
Refactor dnf configuration so it can be used by proxies
1 parent 3d19492 commit c6f3984

File tree

5 files changed

+41
-35
lines changed

5 files changed

+41
-35
lines changed

ansible/roles/packages/meta/main.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
dependencies:
2+
- rpm-repos
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
rpm_repos:
3+
- key: scripts
4+
name: Scripts
5+
baseurl: https://web.mit.edu/scripts/yum-repos/rpm-fc{{ ansible_distribution_major_version }}/
6+
enabled: yes
7+
- key: scripts-testing
8+
name: Scripts Testing
9+
baseurl: https://web.mit.edu/scripts/yum-repos/rpm-fc{{ ansible_distribution_major_version }}-testing/
10+
enabled: "{{ enable_testing_repo | default(False) }}"
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
---
2+
- name: Configure scripts RPM repos
3+
copy:
4+
dest: /etc/yum.repos.d/scripts.repo
5+
content: |
6+
{% for repo in rpm_repos %}
7+
[{{ repo.key }}]
8+
name={{ repo.name }}
9+
baseurl={{ repo.baseurl }}
10+
enabled={{ 1 if repo.enabled else 0 }}
11+
gpgcheck=0
12+
{% endfor %}
13+
- name: Configure dnf.conf
14+
ini_file:
15+
path: /etc/dnf/dnf.conf
16+
section: main
17+
option: "{{ item.option }}"
18+
value: "{{ item.value }}"
19+
loop:
20+
- option: installonly_limit
21+
value: 0
22+
- option: installonlypkgs
23+
value: kernel kernel-devel kernel-modules kmod-openafs ghc-cgi ghc-cgi-devel
24+
- option: excludepkgs
25+
value: fedora-obsolete-packages php-fpm nfs-utils

ansible/scripts-proxy.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
dest: /etc/munin/plugin-conf.d/
1414
src: files/conntrack
1515
roles:
16+
- role: rpm-repos
17+
tags: [always]
1618
- ansible-config-me
1719
- k5login
1820
- syslog-client

ansible/scripts-real.yml

Lines changed: 2 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,6 @@
1414
vars:
1515
ldap_server: "{{ use_local_ldap | default(True) | ternary('ldapi://%2fvar%2frun%2fslapd-scripts.socket/', 'ldap://scripts-ldap.mit.edu/') }}"
1616
ldap_server_tcp: "{{ use_local_ldap | default(True) | ternary('ldap://127.0.0.1/', 'ldap://scripts-ldap.mit.edu/') }}"
17-
rpm_repos:
18-
- key: scripts
19-
name: Scripts
20-
baseurl: https://web.mit.edu/scripts/yum-repos/rpm-fc{{ ansible_distribution_major_version }}/
21-
enabled: yes
22-
- key: scripts-testing
23-
name: Scripts Testing
24-
baseurl: https://web.mit.edu/scripts/yum-repos/rpm-fc{{ ansible_distribution_major_version }}-testing/
25-
enabled: "{{ enable_testing_repo | default(False) }}"
2617
preferred_mta: postfix
2718
pre_tasks:
2819
- name: Block Ansible on legacy realservers
@@ -39,33 +30,9 @@
3930
state: absent
4031
- include_role:
4132
name: real-network
42-
- name: Configure dnf
43-
block:
44-
- name: Configure scripts RPM repos
45-
copy:
46-
dest: /etc/yum.repos.d/scripts.repo
47-
content: |
48-
{% for repo in rpm_repos %}
49-
[{{ repo.key }}]
50-
name={{ repo.name }}
51-
baseurl={{ repo.baseurl }}
52-
enabled={{ 1 if repo.enabled else 0 }}
53-
gpgcheck=0
54-
{% endfor %}
55-
- name: Configure dnf.conf
56-
ini_file:
57-
path: /etc/dnf/dnf.conf
58-
section: main
59-
option: "{{ item.option }}"
60-
value: "{{ item.value }}"
61-
loop:
62-
- option: installonly_limit
63-
value: 0
64-
- option: installonlypkgs
65-
value: kernel kernel-devel kernel-modules kmod-openafs ghc-cgi ghc-cgi-devel
66-
- option: excludepkgs
67-
value: fedora-obsolete-packages php-fpm nfs-utils
6833
roles:
34+
- role: rpm-repos
35+
tags: [always]
6936
- role: packages
7037
tags: [always]
7138
- role: syslog-client

0 commit comments

Comments
 (0)