aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Ponomarev <stokito@gmail.com>2024-02-28 22:13:47 +0200
committerToke Høiland-Jørgensen <toke@toke.dk>2024-03-01 17:01:40 +0100
commit4bec28b4d16d86cfb6f6f720c61072f5954a9b28 (patch)
treeb3a654224bdfa563cfe0d5d4b1169f0ac9125371
parent7d07c75154d8d77b39db1012493a21ef02cbf5bb (diff)
acme-acmesh: use validation_method option instead of guessing
The new validation_method option can be: dns, webroot or standalone. Previously we guessed the challenge type: 1. if the DNS provider is specified then it's dns 2. if standalone=1 3. fallback to webroot The logic is preserved and if the validation_method wasn't set explicitly we'll guess it in old manner. Signed-off-by: Sergey Ponomarev <stokito@gmail.com>
-rw-r--r--net/acme-acmesh/Makefile2
-rw-r--r--net/acme-acmesh/files/hook.sh19
2 files changed, 14 insertions, 7 deletions
diff --git a/net/acme-acmesh/Makefile b/net/acme-acmesh/Makefile
index efbed1852..5d2f0d765 100644
--- a/net/acme-acmesh/Makefile
+++ b/net/acme-acmesh/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=acme-acmesh
PKG_VERSION:=3.0.7
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/acmesh-official/acme.sh/tar.gz/$(PKG_VERSION)?
diff --git a/net/acme-acmesh/files/hook.sh b/net/acme-acmesh/files/hook.sh
index 477003e3f..a433776d7 100644
--- a/net/acme-acmesh/files/hook.sh
+++ b/net/acme-acmesh/files/hook.sh
@@ -56,12 +56,12 @@ get)
;;
esac
- log info "Running ACME for $main_domain"
+ log info "Running ACME for $main_domain with validation_method $validation_method"
if [ -e "$domain_dir" ]; then
if [ "$staging" = 0 ] && grep -q "acme-staging" "$domain_dir/$main_domain.conf"; then
mv "$domain_dir" "$domain_dir.staging"
- log info "Certificates are previously issued from a staging server, but staging option is diabled, moved to $domain_dir.staging."
+ log info "Certificates are previously issued from a staging server, but staging option is disabled, moved to $domain_dir.staging."
staging_moved=1
else
set -- "$@" --renew --home "$state_dir" -d "$main_domain"
@@ -107,7 +107,8 @@ get)
set -- "$@" --days "$days"
fi
- if [ "$dns" ]; then
+ case "$validation_method" in
+ "dns")
set -- "$@" --dns "$dns"
if [ "$dalias" ]; then
set -- "$@" --domain-alias "$dalias"
@@ -120,12 +121,18 @@ get)
if [ "$dns_wait" ]; then
set -- "$@" --dnssleep "$dns_wait"
fi
- elif [ "$standalone" = 1 ]; then
+ ;;
+ "standalone")
set -- "$@" --standalone --listen-v6
- else
+ ;;
+ "webroot")
mkdir -p "$CHALLENGE_DIR"
set -- "$@" --webroot "$CHALLENGE_DIR"
- fi
+ ;;
+ *)
+ log err "Unsupported validation_method $validation_method"
+ ;;
+ esac
set -- "$@" --issue --home "$state_dir"