feat: add letsencrypt support to haproxy plugin
This commit is contained in:
@@ -36,6 +36,8 @@ cmd-haproxy-report-single() {
|
||||
verify_app_name "$APP"
|
||||
local flag_map=(
|
||||
"--haproxy-image: $(fn-haproxy-image)"
|
||||
"--haproxy-letsencrypt-email: $(fn-haproxy-letsencrypt-email)"
|
||||
"--haproxy-letsencrypt-server: $(fn-haproxy-letsencrypt-server)"
|
||||
"--haproxy-log-level: $(fn-haproxy-log-level)"
|
||||
)
|
||||
|
||||
|
||||
@@ -36,7 +36,9 @@ fn-haproxy-template-compose-file() {
|
||||
fi
|
||||
|
||||
local SIGIL_PARAMS=(HAPROXY_IMAGE="$(fn-haproxy-image)"
|
||||
HAPROXY_LOG_LEVEL="$(fn-haproxy-log-level)")
|
||||
HAPROXY_LOG_LEVEL="$(fn-haproxy-log-level)"
|
||||
HAPROXY_LETSENCRYPT_EMAIL="$(fn-haproxy-letsencrypt-email)"
|
||||
HAPROXY_LETSENCRYPT_SERVER="$(fn-haproxy-letsencrypt-server)")
|
||||
|
||||
sigil -f "$COMPOSE_TEMPLATE" "${SIGIL_PARAMS[@]}" | cat -s >"$OUTPUT_PATH"
|
||||
}
|
||||
@@ -50,3 +52,11 @@ fn-haproxy-log-level() {
|
||||
log_level="$(fn-plugin-property-get-default "haproxy" "--global" "log-level" "ERROR")"
|
||||
echo "${log_level^^}"
|
||||
}
|
||||
|
||||
fn-haproxy-letsencrypt-email() {
|
||||
fn-plugin-property-get-default "haproxy" "--global" "letsencrypt-email" ""
|
||||
}
|
||||
|
||||
fn-haproxy-letsencrypt-server() {
|
||||
fn-plugin-property-get-default "haproxy" "--global" "letsencrypt-server" "https://acme-v02.api.letsencrypt.org/directory"
|
||||
}
|
||||
|
||||
@@ -9,13 +9,13 @@ cmd-haproxy-set() {
|
||||
declare cmd="haproxy:set"
|
||||
[[ "$1" == "$cmd" ]] && shift 1
|
||||
declare APP="$1" KEY="$2" VALUE="$3"
|
||||
local VALID_KEYS=("image" "log-level")
|
||||
local GLOBAL_KEYS=("image" "log-level")
|
||||
local VALID_KEYS=("image" "log-level" "letsencrypt-email" "letsencrypt-server")
|
||||
local GLOBAL_KEYS=("image" "log-level" "letsencrypt-email" "letsencrypt-server")
|
||||
|
||||
[[ -z "$KEY" ]] && dokku_log_fail "No key specified"
|
||||
|
||||
if ! fn-in-array "$KEY" "${VALID_KEYS[@]}"; then
|
||||
dokku_log_fail "Invalid key specified, valid keys include: image log-level"
|
||||
dokku_log_fail "Invalid key specified, valid keys include: image log-level letsencrypt-email letsencrypt-server"
|
||||
fi
|
||||
|
||||
if ! fn-in-array "$KEY" "${GLOBAL_KEYS[@]}"; then
|
||||
|
||||
@@ -9,11 +9,21 @@ services:
|
||||
- EASYHAPROXY_DISCOVER=docker
|
||||
- EASYHAPROXY_LABEL_PREFIX=haproxy
|
||||
- EASYHAPROXY_LOG_LEVEL={{ $.HAPROXY_LOG_LEVEL }}
|
||||
- CERTBOT_LOG_LEVEL={{ $.HAPROXY_LOG_LEVEL }}
|
||||
- HAPROXY_LOG_LEVEL={{ $.HAPROXY_LOG_LEVEL }}
|
||||
{{ if $.HAPROXY_LETSENCRYPT_EMAIL }}
|
||||
- EASYHAPROXY_LETSENCRYPT_EMAIL={{ $.HAPROXY_LETSENCRYPT_EMAIL }}"
|
||||
- EASYHAPROXY_LETSENCRYPT_SERVER={{ $.HAPROXY_LETSENCRYPT_SERVER }}
|
||||
{{ end }}
|
||||
- HAPROXY_STATS_PORT=false
|
||||
|
||||
network_mode: bridge
|
||||
|
||||
ports:
|
||||
- "80:80"
|
||||
{{ if $.HAPROXY_LETSENCRYPT_EMAIL }}
|
||||
- "443:443"
|
||||
{{ end }}
|
||||
|
||||
restart: unless-stopped
|
||||
|
||||
|
||||
Reference in New Issue
Block a user