From d7d68622173463f377b1f9da2e0a565199706893 Mon Sep 17 00:00:00 2001 From: Michael Simacek Date: Fri, 20 May 2016 12:38:19 +0200 Subject: [PATCH] Add koschei refresh-group script and cronjob --- .../koschei/backend/files/koschei-refresh-group | 11 +++++++++++ roles/koschei/backend/tasks/main.yml | 16 ++++++++++++++++ .../backend/templates/cron-refresh-groups.j2 | 3 +++ 3 files changed, 30 insertions(+) create mode 100644 roles/koschei/backend/files/koschei-refresh-group create mode 100644 roles/koschei/backend/templates/cron-refresh-groups.j2 diff --git a/roles/koschei/backend/files/koschei-refresh-group b/roles/koschei/backend/files/koschei-refresh-group new file mode 100644 index 0000000000..35fd878614 --- /dev/null +++ b/roles/koschei/backend/files/koschei-refresh-group @@ -0,0 +1,11 @@ +#!/bin/bash +if [ "$#" -lt 2 ]; then + echo "Usage: refresh-group ..." + exit 1 +fi +set -e +repodata=`find /var/cache/koschei/repodata/ -maxdepth 1 -type d -name 'primary-f*' | sort -nr | head -n1` +repoid=`basename repodata` +group=$1 +shift +dnf repoquery --repofrompath "$repoid,$repodata/x86_64" --repoid "$repoid" --qf '%{sourcerpm}' "$@" | sed 's|-[^-]*-[^-]*$||' | koschei-admin edit-group "$group" --content-from-file - --append diff --git a/roles/koschei/backend/tasks/main.yml b/roles/koschei/backend/tasks/main.yml index fea42086ab..a7fc61d797 100644 --- a/roles/koschei/backend/tasks/main.yml +++ b/roles/koschei/backend/tasks/main.yml @@ -123,6 +123,22 @@ - koschei - config +- name: Copy refresh-group script + copy: > + src=koschei-refresh-group + dest=/usr/local/bin/koschei-refresh-group + mode=755 + when: env == 'staging' + tags: + - koschei + +- name: Copy the group refresh cronjob + template: src=cron-refresh-groups.j2 dest=/etc/cron.d/cron-refresh-groups + when: env == 'staging' + tags: + - koschei + - config + - name: access to postgres for scripts template: src=pgpass.j2 dest=/var/cache/koschei/.pgpass owner=koschei group=koschei mode=0600 diff --git a/roles/koschei/backend/templates/cron-refresh-groups.j2 b/roles/koschei/backend/templates/cron-refresh-groups.j2 new file mode 100644 index 0000000000..84eded2133 --- /dev/null +++ b/roles/koschei/backend/templates/cron-refresh-groups.j2 @@ -0,0 +1,3 @@ +SHELL=/bin/bash +MAILTO=sysadmin-koschei-members@fedoraproject.org +0 0-23/3 * * * koschei koschei-refresh-group php 'php*'