mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-08-18 07:58:36 +00:00
CI: static-checks: Move curl to a separate function
Split the call to `curl` in the URL checker out into a new `run_url_check_cmd()` function to make `check_url()` slightly clearer. Signed-off-by: James O. D. Hunt <james.o.hunt@intel.com>
This commit is contained in:
parent
6d859f97ee
commit
613def0328
@ -492,6 +492,40 @@ EOF
|
|||||||
popd
|
popd
|
||||||
}
|
}
|
||||||
|
|
||||||
|
run_url_check_cmd()
|
||||||
|
{
|
||||||
|
local url="${1:-}"
|
||||||
|
[ -n "$url" ] || die "need URL"
|
||||||
|
|
||||||
|
local out_file="${2:-}"
|
||||||
|
[ -n "$out_file" ] || die "need output file"
|
||||||
|
|
||||||
|
# Can be blank
|
||||||
|
local extra_args="${3:-}"
|
||||||
|
|
||||||
|
local curl_extra_args=()
|
||||||
|
|
||||||
|
curl_extra_args+=("$extra_args")
|
||||||
|
|
||||||
|
# Authenticate for github to increase threshold for rate limiting
|
||||||
|
if [[ "$url" =~ github\.com && -n "$GITHUB_USER" && -n "$GITHUB_TOKEN" ]]; then
|
||||||
|
curl_extra_args+=("-u ${GITHUB_USER}:${GITHUB_TOKEN}")
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Some endpoints return 403 to HEAD but 200 for GET,
|
||||||
|
# so perform a GET but only read headers.
|
||||||
|
curl \
|
||||||
|
${curl_extra_args[*]} \
|
||||||
|
-sIL \
|
||||||
|
-X GET \
|
||||||
|
-c - \
|
||||||
|
-H "Accept-Encoding: zstd, none, gzip, deflate" \
|
||||||
|
--max-time "$url_check_timeout_secs" \
|
||||||
|
--retry "$url_check_max_tries" \
|
||||||
|
"$url" \
|
||||||
|
&>"$out_file"
|
||||||
|
}
|
||||||
|
|
||||||
check_url()
|
check_url()
|
||||||
{
|
{
|
||||||
local url="${1:-}"
|
local url="${1:-}"
|
||||||
@ -514,15 +548,10 @@ check_url()
|
|||||||
local ret
|
local ret
|
||||||
local user_agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36"
|
local user_agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36"
|
||||||
|
|
||||||
# Authenticate for github to increase threshold for rate limiting
|
local curl_ua_args
|
||||||
local curl_args=()
|
curl_ua_args="-A '$user_agent'"
|
||||||
if [[ "$url" =~ github\.com && -n "$GITHUB_USER" && -n "$GITHUB_TOKEN" ]]; then
|
|
||||||
curl_args+=("-u ${GITHUB_USER}:${GITHUB_TOKEN}")
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Some endpoints return 403 to HEAD but 200 for GET, so perform a GET but only read headers.
|
{ run_url_check_cmd "$url" "$curl_out" "$curl_ua_args"; ret=$?; } || true
|
||||||
{ curl ${curl_args[*]} -sIL -X GET -c - -A "${user_agent}" -H "Accept-Encoding: zstd, none, gzip, deflate" --max-time "$url_check_timeout_secs" \
|
|
||||||
--retry "$url_check_max_tries" "$url" &>"$curl_out"; ret=$?; } || true
|
|
||||||
|
|
||||||
# A transitory error, or the URL is incorrect,
|
# A transitory error, or the URL is incorrect,
|
||||||
# but capture either way.
|
# but capture either way.
|
||||||
|
Loading…
Reference in New Issue
Block a user