From 0261e875679f1bf63c8d689da7fc7e014597885d Mon Sep 17 00:00:00 2001 From: Stonewall Jackson Date: Sat, 4 Feb 2023 01:23:43 -0500 Subject: initial commit --- roles/yum_mirror/tasks/main.yml | 47 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 roles/yum_mirror/tasks/main.yml (limited to 'roles/yum_mirror/tasks/main.yml') diff --git a/roles/yum_mirror/tasks/main.yml b/roles/yum_mirror/tasks/main.yml new file mode 100644 index 0000000..2e00d17 --- /dev/null +++ b/roles/yum_mirror/tasks/main.yml @@ -0,0 +1,47 @@ +- name: install packages + dnf: + name: yum-utils + state: present + +- name: create repo definitions + yum_repository: + name: '{{ item.id }}' + file: mirrors + description: '{{ item.name }}' + metalink: '{{ item.metalink | default(omit) }}' + mirrorlist: '{{ item.mirrorlist | default(omit) }}' + baseurl: '{{ item.baseurl | default(omit) }}' + gpgcheck: no + enabled: no + state: present + loop: '{{ yum_mirror_repositories }}' + +- name: create repo directories + file: + path: '{{ yum_mirror_webroot }}/{{ item.path }}' + state: directory + recurse: yes + setype: _default + loop: '{{ yum_mirror_repositories }}' + +- name: generate reposync cron script + template: + src: '{{ yum_mirror_reposync_script[1:] }}.j2' + dest: '{{ yum_mirror_reposync_script }}' + mode: 0555 + +- name: set up reposync timer + include_role: + name: systemd_timer + vars: + timer_name: reposync + timer_description: Sync yum mirrors from upstream + timer_after: network.target + timer_on_calendar: '{{ yum_sync_on_calendar }}' + timer_exec: '{{ yum_mirror_reposync_script }}' + +- name: sync repositories + systemd: + name: reposync.service + state: started + changed_when: no -- cgit