Skip to content

chore: upgrade all deps — Go 1.25, cert-manager v1.20, AliDNS SDK V1→V2, k8s v0.35#1

Draft
Copilot wants to merge 2 commits into
mainfrom
copilot/update-certmanager-alidns-api
Draft

chore: upgrade all deps — Go 1.25, cert-manager v1.20, AliDNS SDK V1→V2, k8s v0.35#1
Copilot wants to merge 2 commits into
mainfrom
copilot/update-certmanager-alidns-api

Conversation

Copy link
Copy Markdown

Copilot AI commented Mar 16, 2026

The Alibaba Cloud Go SDK V1 (aliyun/alibaba-cloud-sdk-go) reached end-of-support March 2025 and was archived July 2025. This PR migrates to the official V2 SDK and brings all other dependencies current.

AliDNS SDK V1 → V2 (alidns-20150109/v5)

The V2 SDK uses a completely different client construction and pointer-based request/response API:

// Before (V1, archived)
client, _ := alidns.NewClientWithAccessKey(regionID, accessKeyID, accessKeySecret)
req := alidns.CreateAddDomainRecordRequest()
req.DomainName = domain
req.RR = rr
req.Type = typ
req.Value = val
client.AddDomainRecord(req)

// After (V2)
client, _ := alidns.NewClient(&openapi.Config{
    AccessKeyId:     tea.String(cfg.AccessKeyID),
    AccessKeySecret: tea.String(cfg.AccessKeySecret),
})
req := &alidns.AddDomainRecordRequest{}
req.SetDomainName(domain).SetRR(rr).SetType(typ).SetValue(val)
client.AddDomainRecord(req)

All response field accesses updated for pointer dereferencing via tea.StringValue(). Pagination loop updated to use resp.Body.DomainRecords.Record.

Removed broken import

github.com/cert-manager/cert-manager/pkg/issuer/acme/dns/util was removed in cert-manager v1.13+. Replaced with an inline unFqdn() helper.

Dependency versions

Dependency Before After
Go 1.20 1.25
cert-manager v1.12.3 v1.20.0
aliyun/alibaba-cloud-sdk-go v1.61.1473 removed
alibabacloud-go/alidns-20150109/v5 v5.3.1
k8s.io/client-go + apimachinery v0.27.4 v0.35.2

Tooling

  • Makefile: replaced obsolete kubebuilder v2.3.2 tarball download with setup-envtest (sigs.k8s.io/controller-runtime/tools/setup-envtest), matching the current cert-manager webhook-example pattern
  • CI: updated all GitHub Actions to latest major versions (checkout@v4, setup-go@v5, buildx@v3, login-action@v3); Go version set to 1.25; removed now-redundant manual cache step
  • Helm chart: appVersion1.20.0, chart version0.2.0
  • .gitignore: added cert-manager-webhook-alidns and bin/ to prevent binary commits

📍 Connect Copilot coding agent with Jira, Azure Boards or Linear to delegate work to Copilot in one click without leaving your project management tool.

… k8s v0.35.2

Co-authored-by: cnfatal <15731850+cnfatal@users.noreply.github.com>
Copilot AI changed the title [WIP] Analyze changes in certmanager and alidns API for compatibility chore: upgrade all deps — Go 1.25, cert-manager v1.20, AliDNS SDK V1→V2, k8s v0.35 Mar 16, 2026
Copilot AI requested a review from cnfatal March 16, 2026 16:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants