From e1f2a8dd272cdbe4f5e54853008a3e5f24f4af71 Mon Sep 17 00:00:00 2001 From: Lexi Winter Date: Tue, 3 Jun 2025 07:21:08 +0100 Subject: initial commit --- init.sh | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 init.sh (limited to 'init.sh') diff --git a/init.sh b/init.sh new file mode 100644 index 0000000..b1c9494 --- /dev/null +++ b/init.sh @@ -0,0 +1,56 @@ +# This source code is released into the public domain. + +_BASEDIR="/usr/local" +_SHARE="${_BASEDIR}/share/lfacme" +_CONFDIR="${_BASEDIR}/etc/lfacme" +_CONFIG="${_CONFDIR}/acme.conf" +_DOMAINS="${_CONFDIR}/domains.conf" +_UACME=/usr/local/bin/uacme +_UACME_DIR="${_CONFDIR}/certs" + +_PROGNAME="$0" + +_uacme() { + "$_UACME" -a "$ACME_URL" -c "$_UACME_DIR" "$@" +} + +_fatal() { + local _fmt=$1; shift + local _msg="$(printf "$_fmt" "$@")" + printf >&2 '%s: FATAL: %s\n' "$_PROGNAME" "$_msg" + exit 1 +} + +_error() { + local _fmt=$1; shift + local _msg="$(printf "$_fmt" "$@")" + printf >&2 '%s: ERROR: %s\n' "$_PROGNAME" "$_msg" +} + +_warn() { + local _fmt=$1; shift + local _msg="$(printf "$_fmt" "$@")" + printf >&2 '%s: WARNING: %s\n' "$_PROGNAME" "$_msg" +} + +if ! [ -f "$_CONFIG" ]; then + _fatal "missing %s" "$_CONFIG" +fi + +. "$_CONFIG" + +if [ -z "$ACME_URL" ]; then + _fatal "ACME_URL must be set in %s" "$_CONFIG" +fi + +if [ -z "$ACME_DIR" ]; then + _fatal "ACME_DIR must be set in %s" "$_CONFIG" +fi + +if [ -z "$ACME_KERBEROS_PRINCIPAL" ]; then + ACME_KERBEROS_PRINCIPAL="host/$(hostname)" +fi + +if [ -z "$ACME_HOOKDIR" ]; then + ACME_HOOKDIR="${_CONFDIR}/hooks" +fi -- cgit v1.2.3