also allow setting KEEP_GOING as a config option

This commit is contained in:
Lukas Schauer
2025-07-05 10:54:29 +02:00
parent a7deeaedbc
commit 8e9e5ef9c7
3 changed files with 10 additions and 2 deletions

View File

@@ -7,6 +7,7 @@ This file contains a log of major changes in dehydrated
## Changed ## Changed
- Only validate existance of wellknown directory or hook script when actually needed - Only validate existance of wellknown directory or hook script when actually needed
- Also allow setting `KEEP_GOING` in config file instead of relying on cli arguments
## [0.7.2] - 2025-05-18 ## [0.7.2] - 2025-05-18
## Added ## Added

View File

@@ -294,6 +294,7 @@ store_configvars() {
__ACME_PROFILE="${ACME_PROFILE}" __ACME_PROFILE="${ACME_PROFILE}"
__ORDER_TIMEOUT=${ORDER_TIMEOUT} __ORDER_TIMEOUT=${ORDER_TIMEOUT}
__VALIDATION_TIMEOUT=${VALIDATION_TIMEOUT} __VALIDATION_TIMEOUT=${VALIDATION_TIMEOUT}
__KEEP_GOING=${KEEP_GOING}
} }
reset_configvars() { reset_configvars() {
@@ -315,6 +316,7 @@ reset_configvars() {
ACME_PROFILE="${__ACME_PROFILE}" ACME_PROFILE="${__ACME_PROFILE}"
ORDER_TIMEOUT=${__ORDER_TIMEOUT} ORDER_TIMEOUT=${__ORDER_TIMEOUT}
VALIDATION_TIMEOUT=${__VALIDATION_TIMEOUT} VALIDATION_TIMEOUT=${__VALIDATION_TIMEOUT}
KEEP_GOING="${__KEEP_GOING}"
} }
hookscript_bricker_hook() { hookscript_bricker_hook() {
@@ -407,6 +409,7 @@ load_config() {
ACME_PROFILE="" ACME_PROFILE=""
ORDER_TIMEOUT=0 ORDER_TIMEOUT=0
VALIDATION_TIMEOUT=0 VALIDATION_TIMEOUT=0
KEEP_GOING="no"
if [[ -z "${CONFIG:-}" ]]; then if [[ -z "${CONFIG:-}" ]]; then
echo "#" >&2 echo "#" >&2
@@ -567,6 +570,7 @@ load_config() {
[[ -n "${PARAM_ACME_PROFILE:-}" ]] && ACME_PROFILE="${PARAM_ACME_PROFILE}" [[ -n "${PARAM_ACME_PROFILE:-}" ]] && ACME_PROFILE="${PARAM_ACME_PROFILE}"
[[ -n "${PARAM_ORDER_TIMEOUT:-}" ]] && ORDER_TIMEOUT="${PARAM_ORDER_TIMEOUT}" [[ -n "${PARAM_ORDER_TIMEOUT:-}" ]] && ORDER_TIMEOUT="${PARAM_ORDER_TIMEOUT}"
[[ -n "${PARAM_VALIDATION_TIMEOUT:-}" ]] && VALIDATION_TIMEOUT="${PARAM_VALIDATION_TIMEOUT}" [[ -n "${PARAM_VALIDATION_TIMEOUT:-}" ]] && VALIDATION_TIMEOUT="${PARAM_VALIDATION_TIMEOUT}"
[[ -n "${PARAM_KEEP_GOING:-}" ]] && KEEP_GOING="${PARAM_KEEP_GOING}"
if [ "${PARAM_FORCE_VALIDATION:-no}" = "yes" ] && [ "${PARAM_FORCE:-no}" = "no" ]; then if [ "${PARAM_FORCE_VALIDATION:-no}" = "yes" ] && [ "${PARAM_FORCE:-no}" = "no" ]; then
_exiterr "Argument --force-validation can only be used in combination with --force (-x)" _exiterr "Argument --force-validation can only be used in combination with --force (-x)"
@@ -1855,7 +1859,7 @@ command_sign_domains() {
# All settings that are allowed here should also be stored and # All settings that are allowed here should also be stored and
# restored in store_configvars() and reset_configvars() # restored in store_configvars() and reset_configvars()
case "${config_var}" in case "${config_var}" in
KEY_ALGO|OCSP_MUST_STAPLE|OCSP_FETCH|OCSP_DAYS|PRIVATE_KEY_RENEW|PRIVATE_KEY_ROLLOVER|KEYSIZE|CHALLENGETYPE|HOOK|PREFERRED_CHAIN|WELLKNOWN|HOOK_CHAIN|OPENSSL_CNF|RENEW_DAYS|ACME_PROFILE|ORDER_TIMEOUT|VALIDATION_TIMEOUT) KEY_ALGO|OCSP_MUST_STAPLE|OCSP_FETCH|OCSP_DAYS|PRIVATE_KEY_RENEW|PRIVATE_KEY_ROLLOVER|KEYSIZE|CHALLENGETYPE|HOOK|PREFERRED_CHAIN|WELLKNOWN|HOOK_CHAIN|OPENSSL_CNF|RENEW_DAYS|ACME_PROFILE|ORDER_TIMEOUT|VALIDATION_TIMEOUT|KEEP_GOING)
echo " + ${config_var} = ${config_value}" echo " + ${config_var} = ${config_value}"
declare -- "${config_var}=${config_value}" declare -- "${config_var}=${config_value}"
;; ;;
@@ -1938,7 +1942,7 @@ command_sign_domains() {
rm "${csrfile}" rm "${csrfile}"
fi fi
# shellcheck disable=SC2086 # shellcheck disable=SC2086
if [[ "${PARAM_KEEP_GOING:-}" = "yes" ]]; then if [[ "${KEEP_GOING:-}" = "yes" ]]; then
skip_exit_hook=yes skip_exit_hook=yes
sign_domain "${certdir}" "${timestamp}" "${domain}" ${morenames} & sign_domain "${certdir}" "${timestamp}" "${domain}" ${morenames} &
wait $! || exit_with_errorcode=1 wait $! || exit_with_errorcode=1

View File

@@ -139,3 +139,6 @@
# Amount of seconds to wait for processing of order until erroring out (default: 0 => no timeout) # Amount of seconds to wait for processing of order until erroring out (default: 0 => no timeout)
#ORDER_TIMEOUT=0 #ORDER_TIMEOUT=0
# Skip over errors during certificate orders (default: no)
#KEEP_GOING=no