diff --git a/.github/workflows/connect-health-service-acceptance.yml b/.github/workflows/connect-health-service-acceptance.yml index 98b71a10c..01afb2a16 100644 --- a/.github/workflows/connect-health-service-acceptance.yml +++ b/.github/workflows/connect-health-service-acceptance.yml @@ -64,6 +64,39 @@ jobs: cache: npm cache-dependency-path: connect-harness/web/package-lock.json + - name: Ensure GitHub CLI + shell: bash + run: | + if command -v gh >/dev/null 2>&1; then + gh --version + exit 0 + fi + + gh_version="2.101.0" + case "$(uname -m)" in + x86_64) gh_arch="amd64" ;; + aarch64|arm64) gh_arch="arm64" ;; + *) + echo "Unsupported Linux architecture for GitHub CLI: $(uname -m)" >&2 + exit 1 + ;; + esac + + gh_install_root="${RUNNER_TEMP:-$PWD}/gh-cli" + rm -rf "$gh_install_root" + mkdir -p "$gh_install_root/bin" + archive="$gh_install_root/gh.tar.gz" + curl --fail --location --retry 3 \ + "https://github.com/cli/cli/releases/download/v${gh_version}/gh_${gh_version}_linux_${gh_arch}.tar.gz" \ + --output "$archive" + tar -xzf "$archive" -C "$gh_install_root" + install -m 0755 \ + "$gh_install_root/gh_${gh_version}_linux_${gh_arch}/bin/gh" \ + "$gh_install_root/bin/gh" + echo "$gh_install_root/bin" >> "$GITHUB_PATH" + export PATH="$gh_install_root/bin:$PATH" + gh --version + - name: Verify official source and artifact identity shell: bash env: