eec8c28fb3
Go Benchmark / Performance Regression Check (push) Has been cancelled
Cerberus Integration / Cerberus Security Stack Integration (push) Has been cancelled
Upload Coverage to Codecov / Backend Codecov Upload (push) Has been cancelled
Upload Coverage to Codecov / Frontend Codecov Upload (push) Has been cancelled
CodeQL - Analyze / CodeQL analysis (go) (push) Has been cancelled
CodeQL - Analyze / CodeQL analysis (javascript-typescript) (push) Has been cancelled
CrowdSec Integration / CrowdSec Bouncer Integration (push) Has been cancelled
Docker Build, Publish & Test / build-and-push (push) Has been cancelled
Quality Checks / Auth Route Protection Contract (push) Has been cancelled
Quality Checks / Codecov Trigger/Comment Parity Guard (push) Has been cancelled
Quality Checks / Backend (Go) (push) Has been cancelled
Quality Checks / Frontend (React) (push) Has been cancelled
Rate Limit integration / Rate Limiting Integration (push) Has been cancelled
Security Scan (PR) / Trivy Binary Scan (push) Has been cancelled
Supply Chain Verification (PR) / Verify Supply Chain (push) Has been cancelled
WAF integration / Coraza WAF Integration (push) Has been cancelled
Docker Build, Publish & Test / Security Scan PR Image (push) Has been cancelled
Repo Health Check / Repo health (push) Has been cancelled
History Rewrite Dry-Run / Dry-run preview for history rewrite (push) Has been cancelled
Prune Renovate Branches / prune (push) Has been cancelled
Renovate / renovate (push) Has been cancelled
Nightly Build & Package / sync-development-to-nightly (push) Has been cancelled
Nightly Build & Package / Trigger Nightly Validation Workflows (push) Has been cancelled
Nightly Build & Package / build-and-push-nightly (push) Has been cancelled
Nightly Build & Package / test-nightly-image (push) Has been cancelled
Nightly Build & Package / verify-nightly-supply-chain (push) Has been cancelled
Update GeoLite2 Checksum / update-checksum (push) Has been cancelled
Container Registry Prune / prune-ghcr (push) Has been cancelled
Container Registry Prune / prune-dockerhub (push) Has been cancelled
Container Registry Prune / summarize (push) Has been cancelled
Supply Chain Verification / Verify SBOM (push) Has been cancelled
Supply Chain Verification / Verify Release Artifacts (push) Has been cancelled
Supply Chain Verification / Verify Docker Image Supply Chain (push) Has been cancelled
Monitor Caddy Major Release / check-caddy-major (push) Has been cancelled
Weekly Nightly to Main Promotion / Verify Nightly Branch Health (push) Has been cancelled
Weekly Nightly to Main Promotion / Create Promotion PR (push) Has been cancelled
Weekly Nightly to Main Promotion / Trigger Missing Required Checks (push) Has been cancelled
Weekly Nightly to Main Promotion / Notify on Failure (push) Has been cancelled
Weekly Nightly to Main Promotion / Workflow Summary (push) Has been cancelled
Weekly Security Rebuild / Security Rebuild & Scan (push) Has been cancelled
62 lines
1.5 KiB
Bash
Executable File
62 lines
1.5 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
# Script to install go 1.26.0 to /usr/local/go
|
|
# Usage: sudo ./scripts/install-go-1.26.0.sh
|
|
|
|
GO_VERSION="1.26.0"
|
|
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}..."
|
|
curl -sSfL -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..."
|
|
# renovate: datasource=go depName=golang.org/x/tools
|
|
go install golang.org/x/tools/gopls@v0.41.0
|
|
|
|
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
|