Azure / Azure/azure-container-networking

chore: Upgrade Go toolchain to 1.26

Open
#4,365 1 comment 0 reactions 0 assignees View on GitHub
stale
Dominant language
Go
Stars
434
Forks
276
Avg merge
5d 20h
Merged PRs (30d)
33

Description

## Summary

Upgrade the Go toolchain from **1.24** to **1.26** across the ACN repository.

## Prerequisites

- [ ] #4364 (FIPS-ready base image migration) must be merged first

## Motivation

- Go 1.26 enforces FIPS-compliant system crypto
- Security patches and performance improvements
- Ecosystem compatibility

## Files to Update

### Template-managed (auto via `make dockerfiles`)
- [ ] `build/images.mk` GO_IMG: `1.24-azurelinux3.0` → `1.26-azurelinux3.0`
- [ ] Regenerate all Dockerfiles: `make dockerfiles`

### Manual updates
- [ ] `go.mod`: `go 1.24.1` → `go 1.26` + `go mod tidy`
- [ ] `.pipelines/build/scripts/install-go.sh`: update `DEFAULT_IMAGE` SHA
- [ ] `bpf-prog/ipv6-hp-bpf/linux.Dockerfile`: update to Go 1.26 MCR SHA
- [ ] `npm/linux.Dockerfile`: update tag to `1.26.x`
- [ ] `npm/windows.Dockerfile`: update tag to `1.26.x`
- [ ] `.devcontainer/Dockerfile`: `VARIANT="1.24"` → `"1.26"`

### SHA Lookup Commands
```bash
# azurelinux3.0
skopeo inspect docker://mcr.microsoft.com/oss/go/microsoft/golang:1.26-azurelinux3.0 --format "{{.Digest}}"

# MCR Go (for bpf-prog)
skopeo inspect docker://mcr.microsoft.com/oss/go/microsoft/golang:1.26 --format "{{.Digest}}"
```

## Verification
- [ ] `docker run --rm @ go version` confirms Go 1.26
- [ ] Pipeline passes — check "Install msft-go" logs for correct SHA
- [ ] `go mod tidy` completes without errors
- [ ] ARM and AMD builds both succeed

Contributor guide

Open the contributing guide

Research direction

Wait for #4364, then review build/images.mk, go.mod, .pipelines/build/scripts/install-go.sh, the listed Dockerfiles, and .devcontainer/Dockerfile. Run make dockerfiles, update the specified Go versions and image SHAs, run go mod tidy, and verify go version, pipeline logs, and ARM and AMD builds as described.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, go
Domain
build-system, ci-cd, devops
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.