Skip to content

Upgrade Go to 1.25 - #473

Open
sunnyagg wants to merge 3 commits into
masterfrom
go-upgrade/1.25
Open

Upgrade Go to 1.25#473
sunnyagg wants to merge 3 commits into
masterfrom
go-upgrade/1.25

Conversation

@sunnyagg

Copy link
Copy Markdown
Contributor

Org N-1 Go Migration

This PR upgrades the Go toolchain for the metro repo from Go 1.19 to Go 1.25, as part of the org-wide N-1 Go version migration initiative.

Changes

  • go.mod: Bumped go directive from 1.19 to 1.25
  • Docker images: Replaced all public golang:x.y* base images with the standard internal image c.rzp.io/razorpay/rzp-docker-image-inventory-multi-arch:rzp-golden-image-base-golang-1.25-alpine3.22:
    • build/docker/Dockerfile — proto-builder and builder stages (was golang:1.19.0-alpine3.16)
    • tests/mocksubscriber/docker/Dockerfile (was golang:1.16.5-alpine3.13)
  • CI container images in .github/workflows/:
    • build.yml — tests and integration-tests containers (was golang:1.16.5-alpine3.13)
    • review_ci.yml — reviewdog container (was golang:1.16.5-alpine3.13)

Local Verification

  • go mod edit -go=1.25 applied successfully
  • go mod tidy is blocked by a pre-existing codegen breakage: missing generated packages (github.com/razorpay/metro/rpc/proto/v1, github.com/razorpay/metro/statik, various mocks/* packages) that also fail on a clean checkout of master — these require make proto-generate mock-gen to be run first. go.sum reverted to avoid half-written churn.
  • go build ./... fails identically on both the upgrade branch and a clean master checkout (same pre-existing breakage: proto and statik packages not generated). CI is the gate once codegen runs.

Notes

  • Pre-existing build breakage due to generated code (protos/mocks/statik) not committed to repo — this is not caused by this PR. The CI workflow already runs make deps proto-generate mock-gen before building.

🤖 Generated with Claude Code

- Bump go directive in go.mod from 1.19 to 1.25
- go mod tidy blocked by pre-existing codegen breakage (missing generated mocks/proto/statik packages that also fail on clean checkout)
- Update golang base images to c.rzp.io/razorpay/rzp-docker-image-inventory-multi-arch:rzp-golden-image-base-golang-1.25-alpine3.22:
  - build/docker/Dockerfile (was golang:1.19.0-alpine3.16, 2 stages)
  - tests/mocksubscriber/docker/Dockerfile (was golang:1.16.5-alpine3.13)
- Update CI container images in .github/workflows:
  - build.yml (2 occurrences, was golang:1.16.5-alpine3.13)
  - review_ci.yml (was golang:1.16.5-alpine3.13)
@sunnyagg sunnyagg added the go-upgrade-1.25 Org Go N-1 migration label Jul 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

go-upgrade-1.25 Org Go N-1 migration

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant