Files
Charon/scripts/install-go-1.25.5.sh
GitHub Actions 8294d6ee49 Add QA test outputs, build scripts, and Dockerfile validation
- Created `qa-test-output-after-fix.txt` and `qa-test-output.txt` to log results of certificate page authentication tests.
- Added `build.sh` for deterministic backend builds in CI, utilizing `go list` for efficiency.
- Introduced `codeql_scan.sh` for CodeQL database creation and analysis for Go and JavaScript/TypeScript.
- Implemented `dockerfile_check.sh` to validate Dockerfiles for base image and package manager mismatches.
- Added `sourcery_precommit_wrapper.sh` to facilitate Sourcery CLI usage in pre-commit hooks.
2025-12-11 18:26:24 +00:00

61 lines
1.5 KiB
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
# Script to install Go 1.25.5 to /usr/local/go
# Usage: sudo ./scripts/install-go-1.25.5.sh
GO_VERSION="1.25.5"
ARCH="linux-amd64"
TARFILE="go${GO_VERSION}.${ARCH}.tar.gz"
TMPFILE="/tmp/${TARFILE}"
# Ensure GOPATH is set
: ${GOPATH:=$HOME/go}
: ${GOBIN:=${GOPATH}/bin}
# Download
if [ ! -f "$TMPFILE" ]; then
echo "Downloading go${GO_VERSION}..."
wget -q -O "$TMPFILE" "https://go.dev/dl/${TARFILE}"
fi
# Remove existing installation
if [ -d "/usr/local/go" ]; then
echo "Removing existing /usr/local/go..."
sudo rm -rf /usr/local/go
fi
# Extract
echo "Extracting to /usr/local..."
sudo tar -C /usr/local -xzf "$TMPFILE"
# Setup system PATH via /etc/profile.d
echo "Creating /etc/profile.d/go.sh to export /usr/local/go/bin and GOPATH/bin"
sudo tee /etc/profile.d/go.sh > /dev/null <<'EOF'
export PATH=/usr/local/go/bin:$GOPATH/bin:$PATH
EOF
sudo chmod +x /etc/profile.d/go.sh
# Update current session PATH
export PATH=/usr/local/go/bin:$GOPATH/bin:$PATH
# Verify
echo "Installed go: $(go version)"
# Optionally install gopls
echo "Installing gopls..."
go install golang.org/x/tools/gopls@latest
GOPLS_PATH="$GOPATH/bin/gopls"
if [ -f "$GOPLS_PATH" ]; then
echo "gopls installed at $GOPLS_PATH"
$GOPLS_PATH version || true
else
echo "gopls not installed in GOPATH/bin"
fi
cat <<'EOF'
Done. Please restart your shell or run:
source /etc/profile.d/go.sh
and restart your editor's Go language server (Go: Restart Language Server in VS Code)
EOF