update-go-version
Update the Go programming language version across your entire project including config files and CI pipelines.
Install
mkdir -p .claude/skills/update-go-version && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/4051" && unzip -o skill.zip -d .claude/skills/update-go-version && rm skill.zipInstalls to .claude/skills/update-go-version
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Update Go version across the Tempo codebase (go.mod, tools/go.mod, Dockerfile, CI workflows, tools image tag)Key capabilities
- →Standardizes Go version in go.mod
- →Updates tools/go.mod directives
- →Syncs Dockerfile base images
- →Retrieves latest CI tools tags
- →Automates build.mk configuration
How it works
Locates version variables within specific project files and replaces them using script-driven updates verified by build commands.
Inputs & outputs
When to use update-go-version
- →Update Go version in go.mod
- →Sync Go version in Dockerfile
- →Update CI pipeline Go configuration
- →Refresh tools image tags
About this skill
Update Go Version
Updates the Go version across all relevant files in the Tempo codebase.
Usage
Invoke with /update-go-version
Steps to Perform
1. Get the version
Extract Go version from tools/Dockerfile.
This file is updated by a Renovate workflow automatically.
2. Check if go.mod files need updating
Check these files:
go.mod(main module)tools/go.mod(tools module) If the versions already match, advise user that tools/Dockerfile needs to be updated and merged first to build new image, then stop.
3. Update go.mod files
Update the go X.Y.Z directive in both:
go.mod(main module)tools/go.mod(tools module)
4. Update TOOLS_IMAGE_TAG in build/tools.mk
Fetch the latest tools image tag from Docker Hub:
curl -s "https://hub.docker.com/v2/repositories/grafana/tempo-ci-tools/tags?page_size=5&ordering=last_updated" | jq -r '.results[0].name'
Update TOOLS_IMAGE_TAG ?= main-XXXXXXX with the latest tag.
5. Verify changes compile
make vendor
make build
Files to Update
| File | What to change |
|---|---|
go.mod | go X.Y.Z directive |
tools/go.mod | go X.Y.Z directive |
build/tools.mk | TOOLS_IMAGE_TAG value |
When not to use it
- →Updating non-Go dependencies
- →Modifying application logic
Prerequisites
Limitations
- →Limited to hardcoded paths in the codebase
- →Requires manual verification of build success
- →Specific to Tempo project structure
How it compares
Centralizes multi-file updates into a single operation, preventing configuration drift across the CI pipeline.
Compared to similar skills
update-go-version side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| update-go-version (this skill) | 1 | 6mo | Review | Beginner |
| upgrade-deps | 0 | 2mo | No flags | Advanced |
| qcc-release | 0 | 8mo | Review | Intermediate |
| gitlab-ci-patterns | 10 | 3mo | No flags | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by grafana
View all by grafana →You might also like
upgrade-deps
obot-platform
Upgrade dependencies and runtimes safely, run CI, and report higher-risk options.
qcc-release
yxhpy
Use for version release, GoReleaser automation, and publishing workflows in qcc_plus project
gitlab-ci-patterns
wshobson
Build GitLab CI/CD pipelines with multi-stage workflows, caching, and distributed runners for scalable automation. Use when implementing GitLab CI/CD, optimizing pipeline performance, or setting up automated testing and deployment.
upgrading-golang
chainloop-dev
Upgrades Go version across the entire Chainloop codebase including source files, Docker images, CI/CD workflows, and documentation. Use when the user mentions upgrading Go, golang version, or updating Go compiler version.
bazel-build-optimization
wshobson
Optimize Bazel builds for large-scale monorepos. Use when configuring Bazel, implementing remote execution, or optimizing build performance for enterprise codebases.
deployment-pipeline-design
wshobson
Design multi-stage CI/CD pipelines with approval gates, security checks, and deployment orchestration. Use when architecting deployment workflows, setting up continuous delivery, or implementing GitOps practices.