Include error codes

This commit is contained in:
Case Duckworth 2021-11-21 02:24:02 +00:00
parent e281c0a804
commit f1521a7dbf
2 changed files with 11 additions and 7 deletions

View File

@ -60,16 +60,16 @@ bakeradd()
esac
done
[ -z "$user" ] && die "Need a user"
[ -z "$name" ] && die "Need a name"
[ -z "$keyfile" ] && die "Need a keyfile"
[ -z "$user" ] && die 2 "Need a user"
[ -z "$name" ] && die 2 "Need a name"
[ -z "$keyfile" ] && die 2 "Need a keyfile"
log "Adding user $user"
adduser \
--shell="$shell" \
--gecos="$name" \
--disabled-password "$user" &&
ok
ok || die 4 "Couldn't add user \"$user\""
log "Adding user $user to groups $groups"
usermod -a -G "$groups" "$user" && ok
@ -87,6 +87,8 @@ bakeradd()
mkdir "/var/gemini/bakers/$user"
chown "$user:$user" "/var/gemini/bakers/$user"
chmod 755 "/var/gemini/bakers/$user"
sudo --user="$user" \
ln -s /var/gemini/bakers/$user /home/$user/public_gemini
} && ok
echo "$user added."
@ -144,7 +146,7 @@ bakerdemote()
main()
{ # entry point
(( $# == 0 )) && usage 1
cmd="$1"; shift || die "Not enough arguments for \"$cmd\""
cmd="$1"; shift || die 2 "Not enough arguments for \"$cmd\""
case "$cmd" in
help|h|usage|-h|--help)
(( $# == 0 )) && usage 0
@ -153,7 +155,7 @@ main()
awk "BEGIN{FS=\"\\n\";RS=\"\";}/baker$1/{print}" "$0" |
sed -n 's/# //p'
exit
} || die "No command \"$1\""
} || die 2 "No command \"$1\""
;;
add|hire)
cmd=add ;;
@ -165,7 +167,7 @@ main()
cmd=demote ;;
esac
(( $(id -u) == 0 )) || die "Script must be run as root"
(( $(id -u) == 0 )) || die 3 "Script must be run as root"
"baker$cmd" "$@"
}

View File

@ -170,6 +170,8 @@ bread_publish()
groupck admin
git -C /bread/site pull
make -C /bread/site publish
# also publish gemini
/bread/update-gemini-index.sh
}
main()