#!/usr/bin/env sh set -o errexit # Exit on error set -o nounset # Exit on uninitialized variable # get latest version if [ -z "${VERSION:-}" ]; then VERSION="$(curl -s https://api.github.com/repos/cli/cli/releases/latest | jq -r '.tag_name' | sed 's/v//')" fi case "$(uname -m)" in x86_64) ARCHITECTURE="amd64" ;; aarch64 | armv8* | arm64) ARCHITECTURE="arm64" ;; *) echo "Architecture unsupported" exit 1 ;; esac curl -sSL "https://github.com/cli/cli/releases/download/v${VERSION}/gh_${VERSION}_linux_${ARCHITECTURE}.tar.gz" -o /tmp/gh.tar.gz tar -xzf /tmp/gh.tar.gz -C /tmp "gh_${VERSION}_linux_${ARCHITECTURE}/bin/gh" mv "/tmp/gh_${VERSION}_linux_${ARCHITECTURE}/bin/gh" /usr/local/bin/gh chmod 0755 /usr/local/bin/gh chown root:root /usr/local/bin/gh rm -rf /tmp/gh.tar.gz "/tmp/gh_${VERSION}_linux_${ARCHITECTURE}"