mirror of
https://git.proxmox.com/git/proxmox-acme
synced 2025-04-28 15:46:11 +00:00
plugin-caller: pull in changes from upstream 3.0.0
Commits ae3dda0f8fc3071495cd1e8dff0fe4a339febb1c and d70b759cb9c5b413cce92e65e841a54a65813962 implementing retrying get and post requests seem worth pulling in. From a quick look through the diff the remaining changes (between 2.9.0 and 3.0.0) should not be relevant for us Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
This commit is contained in:
parent
4685280401
commit
51b0ba75c1
@ -222,6 +222,8 @@ _resethttp() {
|
||||
:
|
||||
}
|
||||
|
||||
_HTTP_MAX_RETRY=8
|
||||
|
||||
# body url [needbase64] [POST|PUT|DELETE] [ContentType]
|
||||
_post() {
|
||||
body="$1"
|
||||
@ -229,6 +231,33 @@ _post() {
|
||||
needbase64="$3"
|
||||
httpmethod="$4"
|
||||
_postContentType="$5"
|
||||
_sleep_retry_sec=1
|
||||
_http_retry_times=0
|
||||
_hcode=0
|
||||
while [ "${_http_retry_times}" -le "$_HTTP_MAX_RETRY" ]; do
|
||||
[ "$_http_retry_times" = "$_HTTP_MAX_RETRY" ]
|
||||
_lastHCode="$?"
|
||||
_debug "Retrying post"
|
||||
_post_impl "$body" "$_post_url" "$needbase64" "$httpmethod" "$_postContentType" "$_lastHCode"
|
||||
_hcode="$?"
|
||||
_debug _hcode "$_hcode"
|
||||
if [ "$_hcode" = "0" ]; then
|
||||
break
|
||||
fi
|
||||
_http_retry_times=$(_math $_http_retry_times + 1)
|
||||
_sleep $_sleep_retry_sec
|
||||
done
|
||||
return $_hcode
|
||||
}
|
||||
|
||||
# body url [needbase64] [POST|PUT|DELETE] [ContentType] [displayError]
|
||||
_post_impl() {
|
||||
body="$1"
|
||||
_post_url="$2"
|
||||
needbase64="$3"
|
||||
httpmethod="$4"
|
||||
_postContentType="$5"
|
||||
displayError="$6"
|
||||
|
||||
if [ -z "$httpmethod" ]; then
|
||||
httpmethod="POST"
|
||||
@ -272,7 +301,9 @@ _post() {
|
||||
fi
|
||||
_ret="$?"
|
||||
if [ "$_ret" != "0" ]; then
|
||||
_err "Please refer to https://curl.haxx.se/libcurl/c/libcurl-errors.html for error code: $_ret"
|
||||
if [ -z "$displayError" ] || [ "$displayError" = "0" ]; then
|
||||
_err "Please refer to https://curl.haxx.se/libcurl/c/libcurl-errors.html for error code: $_ret"
|
||||
fi
|
||||
fi
|
||||
printf "%s" "$response"
|
||||
return $_ret
|
||||
@ -283,6 +314,31 @@ _get() {
|
||||
url="$1"
|
||||
onlyheader="$2"
|
||||
t="$3"
|
||||
_sleep_retry_sec=1
|
||||
_http_retry_times=0
|
||||
_hcode=0
|
||||
while [ "${_http_retry_times}" -le "$_HTTP_MAX_RETRY" ]; do
|
||||
[ "$_http_retry_times" = "$_HTTP_MAX_RETRY" ]
|
||||
_lastHCode="$?"
|
||||
_debug "Retrying GET"
|
||||
_get_impl "$url" "$onlyheader" "$t" "$_lastHCode"
|
||||
_hcode="$?"
|
||||
_debug _hcode "$_hcode"
|
||||
if [ "$_hcode" = "0" ]; then
|
||||
break
|
||||
fi
|
||||
_http_retry_times=$(_math $_http_retry_times + 1)
|
||||
_sleep $_sleep_retry_sec
|
||||
done
|
||||
return $_hcode
|
||||
}
|
||||
|
||||
# url getheader timeout displayError
|
||||
_get_impl() {
|
||||
url="$1"
|
||||
onlyheader="$2"
|
||||
t="$3"
|
||||
displayError="$4"
|
||||
|
||||
_CURL="curl -L --silent --dump-header $HTTP_HEADER -g "
|
||||
if [ "$HTTPS_INSECURE" ]; then
|
||||
@ -298,7 +354,9 @@ _get() {
|
||||
fi
|
||||
ret=$?
|
||||
if [ "$ret" != "0" ]; then
|
||||
_err "Please refer to https://curl.haxx.se/libcurl/c/libcurl-errors.html for error code: $ret"
|
||||
if [ -z "$displayError" ] || [ "$displayError" = "0" ]; then
|
||||
_err "Please refer to https://curl.haxx.se/libcurl/c/libcurl-errors.html for error code: $ret"
|
||||
fi
|
||||
fi
|
||||
return $ret
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user