From ea1e44c08cf05b86185e9c0489e261804297441f Mon Sep 17 00:00:00 2001 From: Peter Palfrader Date: Fri, 26 Apr 2013 14:06:18 +0200 Subject: [PATCH] Verify name of component --- .../files/static-mirroring/static-mirror-ssh-wrap | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/modules/roles/files/static-mirroring/static-mirror-ssh-wrap b/modules/roles/files/static-mirroring/static-mirror-ssh-wrap index a76c6455b..af0ee3568 100755 --- a/modules/roles/files/static-mirroring/static-mirror-ssh-wrap +++ b/modules/roles/files/static-mirroring/static-mirror-ssh-wrap @@ -65,10 +65,17 @@ do_mirror() { one_more_arg "$@" local serial="$1"; shift - info "Host $remote_host triggered a mirror run for $component, serial $serial" - exec /usr/local/bin/static-mirror-run "$basedir/mirrors/$component" "$remote_host:$component/-new-" "$serial" - echo >&2 "Exec failed" - croak "exec failed" + masterhost="$(awk -v component="$component" '$2 == component {print $1; exit}' "$componentlist")" + if [ -z "$masterhost" ]; then + croak "Did not find master for component $component." + elif [ "$msterhost" != "$remote_host" ]; then + croak "$remote_host is not master for $component." + else + info "Host $remote_host triggered a mirror run for $component, serial $serial" + exec /usr/local/bin/static-mirror-run "$basedir/mirrors/$component" "$remote_host:$component/-new-" "$serial" + echo >&2 "Exec failed" + croak "exec failed" + fi } do_rsync() { -- 2.20.1