Skip to content

chore: upgrade CI infrastructure to support Go 1.25 - #2551

Merged
leonorfmartins merged 7 commits into
sustainable-computing-io:mainfrom
leonorfmartins:leonor/upgrade_ci
Oct 1, 2026
Merged

leonorfmartins merged 7 commits into
sustainable-computing-io:mainfrom
leonorfmartins:leonor/upgrade_ci

Conversation

@leonorfmartins

@leonorfmartins leonorfmartins commented Sep 8, 2026 •

Copy link
Copy Markdown
Contributor

Description

Upgrades Kepler's CI infrastructure to support Go 1.25, based on #2496 (stalled, reopened here).

  • Dockerfile: builder base image golang:1.24 → golang:1.25
  • .github/workflows/pr-checks.yaml: golangci-lint action v2.1.6 → v2.12.2
  • .pre-commit-config.yaml: golangci-lint hook v2.1.6 → v2.12.2

Ran in Linux containers matching CI (ubuntu-latest). make image command + tests pass locally.

Part of #2491

Signed-off-by: leonorfmartins <leonorfmartins@gmail.com>
@github-actions github-actions Bot added the chore Routine tasks or maintenance label Sep 8, 2026
@leonorfmartins
leonorfmartins marked this pull request as ready for review September 8, 2026 17:22

@bitflicker64 bitflicker64 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Change is correct and I would take it. The image jobs (build-images, build-and-deploy, compose-deploy) all pass here, which is the direct evidence that the golang:1.25 bump is safe.

One suggestion runs through the two golangci-lint lines: v2.13.2 rather than v2.12.2 would also clear the Go 1.26 step, for both the action and the pre-commit hook, and those two need it for different reasons. Details on each line.

Thanks for crediting #2496 up front in the description. The hunk text is identical across all three files; Dockerfile and .pre-commit-config.yaml even have the same pre- and post-image blob hashes in both PRs, and pr-checks.yaml differs only because main moved underneath it. Whichever of the two lands, #2492 and #2496 want closing in the same pass so the next dependabot bump does not arrive to three competing fixes.

Comment thread Dockerfile
Comment thread .pre-commit-config.yaml
Comment thread .github/workflows/pr-checks.yaml
@bitflicker64

Copy link
Copy Markdown
Member

checked the open question from my review myself. ran a full golangci-lint run ./... on main (a6eacd80) in a golang:1.25 linux container, with both versions built from source the way the pre-commit hook builds them. v2.1.6 and v2.12.2 report the same 3 errcheck warnings in internal/server/probe_test.go (422, 430, 462), all pre-existing, and nothing new. so the bump is clean.

the v2.13.2 suggestion and the multi-arch-builds.md line are both optional. fine to merge without them, and my 3 threads can be resolved whenever it goes in. per vibhu in slack, this should land after the next release.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟢 Approval recommended

The infrastructure versions are consistent and valid; only a minor stale documentation reference remains.

Review effort: Balanced
Findings: 1 Low severity

Open (1)
What changed in this PR

Upgrades CI and container build tooling for Go 1.25 compatibility.

Changes:

  • Uses Go 1.25 for container builds.
  • Aligns local and CI golangci-lint at v2.12.2.
File Description
Dockerfile Updates the builder image to Go 1.25.
.pre-commit-config.yaml Updates the local golangci-lint hook.
.github/​workflows/​pr-checks.yaml Updates the CI golangci-lint version.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread Dockerfile
Signed-off-by: leonorfmartins <leonorfmartins@gmail.com>
@github-actions github-actions Bot added the docs Documentation changes label Sep 30, 2026

@bitflicker64 bitflicker64 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Blocking: no. Score: 10/10. Summary: The builder image moves to golang:1.25, and golangci-lint moves to v2.12.2 in both the workflow and the pre-commit hook. The multi-arch doc now links the Dockerfile and says golang:<go-version> instead of a fixed version, which addresses the open Copilot thread on Dockerfile:2. Evidence: build-images, build-and-deploy, compose-deploy and pre-commit pass at 4248100. The branch is up to date with main. The Dockerfile has the only golang image tag in the tree. v2.12.2 has a linux-amd64 release binary for the lint action to download. The Go paths filter skipped lint, fmt, vet and test-and-codecov, so the workflow pin first runs on the next PR that touches Go files. A full golangci-lint run ./... at v2.12.2 on a6eacd8 (main at the time) reported the same 3 errcheck warnings as v2.1.6, and all 3 were there before this PR.

@leonorfmartins
leonorfmartins merged commit 38343f3 into sustainable-computing-io:main Oct 1, 2026
25 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

chore Routine tasks or maintenance docs Documentation changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants