From 5ce2fa72b395b265bb751163e79012e4cae7da4e Mon Sep 17 00:00:00 2001 From: Jakub Kadlcik Date: Apr 24 2020 19:34:25 +0000 Subject: copr: automatically prune distgit repos --- diff --git a/roles/copr/dist_git/files/copr-dist-git.daily b/roles/copr/dist_git/files/copr-dist-git.daily new file mode 100644 index 0000000..f942035 --- /dev/null +++ b/roles/copr/dist_git/files/copr-dist-git.daily @@ -0,0 +1,8 @@ +#!/usr/bin/bash + +( +flock -n 9 || exit 1 +# ... commands executed under lock ... +runuser -c 'prune-dist-git.py --repos /var/lib/dist-git/git/ --lookasidepkgs /var/lib/dist-git/cache/lookaside/pkgs/ --copr-config ~/.config/copr --always-yes' - copr-dist-git + +) 9>/var/lock/copr-dist-git-cron-daily \ No newline at end of file diff --git a/roles/copr/dist_git/tasks/main.yml b/roles/copr/dist_git/tasks/main.yml index 0c0b9b5..c57728b 100644 --- a/roles/copr/dist_git/tasks/main.yml +++ b/roles/copr/dist_git/tasks/main.yml @@ -136,3 +136,11 @@ - name: Create /var/cache/cgit/repo-list.rc if does not exists (it last 30 minutes to generate) command: /etc/cron.hourly/copr-dist-git creates=/var/cache/cgit/repo-list.rc + +- name: install .config/copr for copr-dist-git user (required for pruning) + template: src="copr.conf" dest="/home/copr-dist-git/.config/copr" owner=copr-dist-git group=copr-dist-git + +- name: install copr-dist-git.daily cron file + copy: src="copr-dist-git.daily" dest="/etc/cron.daily/copr-dist-git" mode=755 + tags: + - config diff --git a/roles/copr/dist_git/templates/copr.conf b/roles/copr/dist_git/templates/copr.conf new file mode 100644 index 0000000..a336c3f --- /dev/null +++ b/roles/copr/dist_git/templates/copr.conf @@ -0,0 +1,2 @@ +[copr-cli] +copr_url = {{frontend_base_url}}