#!/bin/bash
#
# push-repository-key -- Push repository key to all nodes
#

KEY_PATH="/var/lib/bondingadmin/debian/public.gpg.key"
SSH_OPTIONS="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o LogLevel=error"

KEY=$(cat $KEY_PATH)

if [ -z "$KEY" ] ; then
    echo "Could not load public key from $KEY_PATH"
    exit 1
fi

failed=''
for ip in $(/usr/bin/ba mgmt_ips) ; do
    echo -n "$ip: "
    echo -n "$KEY" | /usr/bin/ssh $SSH_OPTIONS root@$ip 'apt-key add -'
    if [ $? != 0 ] ; then
        failed="$failed $ip"
    fi
done

if [ ! -z "$failed" ] ; then
    echo "The following addresses were not updated:"
    for ip in $failed ; do
        echo "    $ip"
    done
fi
