File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -6,6 +6,8 @@ REPO_NAME="atlassian-cli"
66INSTALL_DIR=" ${INSTALL_DIR:- ${HOME} / .local/ bin} "
77INSTALL_RELEASE_API_URL=" ${INSTALL_RELEASE_API_URL:- https:// api.github.com/ repos/ ${REPO_OWNER} / ${REPO_NAME} / releases/ latest} "
88INSTALL_RELEASE_DOWNLOAD_BASE=" ${INSTALL_RELEASE_DOWNLOAD_BASE:- https:// github.com/ ${REPO_OWNER} / ${REPO_NAME} / releases/ download} "
9+ INSTALL_CURL_CONNECT_TIMEOUT=" ${INSTALL_CURL_CONNECT_TIMEOUT:- 10} "
10+ INSTALL_CURL_MAX_TIME=" ${INSTALL_CURL_MAX_TIME:- 120} "
911
1012TMP_ROOT=" "
1113
@@ -78,7 +80,8 @@ resolve_tag() {
7880 return
7981 fi
8082
81- metadata=" $( curl -fsSL " ${INSTALL_RELEASE_API_URL} " ) " || die " failed to resolve latest release"
83+ metadata=" $( curl -fsSL --connect-timeout " ${INSTALL_CURL_CONNECT_TIMEOUT} " --max-time " ${INSTALL_CURL_MAX_TIME} " " ${INSTALL_RELEASE_API_URL} " ) " ||
84+ die " failed to resolve latest release"
8285 tag=" $( printf ' %s' " ${metadata} " | tr -d ' \n' | sed -n ' s/.*"tag_name"[[:space:]]*:[[:space:]]*"\([^"]*\)".*/\1/p' ) "
8386 [ -n " ${tag} " ] || die " failed to parse tag_name from release metadata"
8487 printf ' %s' " ${tag} "
@@ -88,7 +91,10 @@ download_file() {
8891 url=" $1 "
8992 destination=" $2 "
9093 log " Downloading ${url} "
91- curl --fail --location --progress-bar " ${url} " -o " ${destination} "
94+ curl --fail --location --progress-bar \
95+ --connect-timeout " ${INSTALL_CURL_CONNECT_TIMEOUT} " \
96+ --max-time " ${INSTALL_CURL_MAX_TIME} " \
97+ " ${url} " -o " ${destination} "
9298}
9399
94100archive_name () {
Original file line number Diff line number Diff line change @@ -388,3 +388,7 @@ def test_install_script_uses_curl_progress_bar_for_downloads() -> None:
388388 script = INSTALL_SCRIPT .read_text ()
389389
390390 assert "curl --fail --location --progress-bar" in script
391+ assert 'INSTALL_CURL_CONNECT_TIMEOUT="${INSTALL_CURL_CONNECT_TIMEOUT:-10}"' in script
392+ assert 'INSTALL_CURL_MAX_TIME="${INSTALL_CURL_MAX_TIME:-120}"' in script
393+ assert '--connect-timeout "${INSTALL_CURL_CONNECT_TIMEOUT}"' in script
394+ assert '--max-time "${INSTALL_CURL_MAX_TIME}"' in script
You can’t perform that action at this time.
0 commit comments