diff --git a/roles/mirrormanager/backend/tasks/main.yml b/roles/mirrormanager/backend/tasks/main.yml index 8b817af880..763dd82c0e 100644 --- a/roles/mirrormanager/backend/tasks/main.yml +++ b/roles/mirrormanager/backend/tasks/main.yml @@ -55,12 +55,18 @@ with_items: - sync_pkl_to_mirrorlists.sh - handle_propagation.sh + - create_maps.sh - name: handle propagation cronjob cron: name="handle-propagation" minute="25,55" hour="*" user="mirrormanager" job="/usr/local/bin/handle_propagation.sh" cron_file=handle-propagation +- name: create worldmap cronjob + cron: name="create-worldmap" minute="50" hour="20" user="mirrormanager" + job="/usr/local/bin/create-maps.sh" + cron_file=create-worldmap + - name: setup /var/lib/mirrormanager/.ssh directory copy: > src="{{ private }}/files/mirrormanager/" diff --git a/roles/mirrormanager/backend/templates/create_maps.sh b/roles/mirrormanager/backend/templates/create_maps.sh new file mode 100644 index 0000000000..a3451838ab --- /dev/null +++ b/roles/mirrormanager/backend/templates/create_maps.sh @@ -0,0 +1,15 @@ +#!/bin/sh + +WORLDMAP="/usr/bin/mm2_generate-worldmap" + +FRONTENDS="{% for host in groups['mm-frontend'] %} {{ host }} {% endfor %}" + +OUTPUT=`mktemp -d` + +trap "rm -f ${OUTPUT}/*; rmdir ${OUTPUT}" QUIT TERM INT HUP EXIT + +${WORLDMAP} --output ${OUTPUT} > /dev/null + +for f in ${FRONTENDS}; do + rsync -aq ${OUTPUT}/ ${f}:/var/www/mirrormanager-statistics/map +done