diff --git a/koji-setup/koji-add-user.sh b/koji-setup/koji-add-user.sh new file mode 100644 index 0000000..3c8f145 --- /dev/null +++ b/koji-setup/koji-add-user.sh @@ -0,0 +1,48 @@ +#!/bin/bash + +set -e +DEBUG= +SILENT="-s" +QUIET="-q" +for param in $1 $2 ; do + if [ $param ] ; then + case $param in + debug ) + DEBUG="debug" ;; + * ) + NEW_USER=$param ;; + esac + else + break + fi +done + +if [ $DEBUG ] ; then + set -xe + SILENT= + QUIET="-v" +fi + +# load required parameters +SCRIPT_DIR="$(echo ~)/bin" +if [ ! -f "$SCRIPT_DIR"/koji-parameters.sh ] ; then + echo "$SCRIPT_DIR/koji-parameters.sh NOT found - aborting" + exit 1 +fi +source "$SCRIPT_DIR"/koji-parameters.sh +KOJI_HUB_FQDN="$(hostname -f)" + +# pull down any required scripts +if [ ! -d $SCRIPT_DIR ] ; then mkdir -p $SCRIPT_DIR ; fi +if [ ! -f $SCRIPT_DIR/koji-gencert.sh ] ; then + curl $SILENT $SCRIPT_GIT/koji-gencert.sh > $SCRIPT_DIR/koji-gencert.sh +fi + +# Add the new user into the database +sudo -u kojiadmin koji add-user "$NEW_USER" +# Generate a certificate for the user +pushd "$KOJI_PKI_DIR" +$SCRIPT_DIR/koji-gencert.sh "$NEW_USER" "/C=$COUNTRY_CODE/ST=$STATE/L=$LOCATION/O=$ORGANIZATION/CN=$NEW_USER" +popd + +echo "The Koji CLI key for $NEW_USER is $KOJI_PKI_DIR/$NEW_USER.pem and the browser key $KOJI_PKI_DIR/certs/$NEW_USER_browser_cert.p12"