@@ -53,28 +53,18 @@ runs:
5353 - name : Install GitHub CLI
5454 shell : bash
5555 run : |
56- mkdir -p $HOME/.local/bin
57- # Detect OS and Architecture
58- OS="$(uname -s | tr '[:upper:]' '[:lower:]')"
59- ARCH="$(uname -m)"
60- if [ "$ARCH" = "x86_64" ]; then
61- ARCH="amd64"
62- elif [ "$ARCH" = "aarch64" ] || [ "$ARCH" = "arm64" ]; then
63- ARCH="arm64"
56+ if ! command -v gh &> /dev/null; then
57+ echo "GitHub CLI not found, installing..."
58+ type -p curl >/dev/null || (sudo apt update && sudo apt install curl -y)
59+ curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg \
60+ && sudo chmod go+r /usr/share/keyrings/githubcli-archive-keyring.gpg \
61+ && echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null \
62+ && sudo apt update \
63+ && sudo apt install gh -y
64+ else
65+ echo "GitHub CLI already installed: $(gh --version)"
6466 fi
6567
66- GH_VERSION=2.63.0
67- URL="https://github.com/cli/cli/releases/download/v${GH_VERSION}/gh_${GH_VERSION}_${OS}_${ARCH}.tar.gz"
68-
69- echo "Downloading GitHub CLI from $URL"
70- curl -L "$URL" -o gh.tar.gz
71- tar xvf gh.tar.gz
72-
73- # Move binary to local bin
74- mv "gh_${GH_VERSION}_${OS}_${ARCH}/bin/gh" "$HOME/.local/bin/"
75- # Add to PATH for this and future steps
76- echo "$HOME/.local/bin" >> $GITHUB_PATH
77-
7868 - name : ' Install Dependencies'
7969 shell : bash
8070 run : |
0 commit comments