Skip to content

Add patch-release-notification Lambda to email cherry-pick deadline reminders - #4579

Open
cpanato wants to merge 1 commit into
kubernetes:masterfrom
cpanato:patch-notification-v2
Open

cpanato wants to merge 1 commit into
kubernetes:masterfrom
cpanato:patch-notification-v2

Conversation

@cpanato

@cpanato cpanato commented Oct 21, 2026 •

Copy link
Copy Markdown
Member

What type of PR is this?

/kind feature

What this PR does / why we need it:

Revives #3627, rebased on master with the review feedback addressed.

Adds cmd/patch-release-notification, an AWS Lambda that runs once a day, reads the patch release schedule, and emails the community through SES when a cherry-pick deadline is DAYS_TO_ALERT days away. It runs in mock mode by default, which sends only to the sender address.

Changes since #3627:

  • Handler takes no event payload, matching the EventBridge cron trigger
  • Deadline is matched on calendar days in UTC, so the run time no longer shifts the day
  • Moved to aws-sdk-go-v2 / sesv2 and dropped gomail, envconfig and yaml.v3
  • Email uses html/template; the schedule fetch requires https, has a timeout and checks the response
  • Added links to PRs that meet all cherry-pick criteria, as suggested in review
  • Added unit tests

The schedule-builder model types move to cmd/schedule-builder/model so they can be shared.

Infra: kubernetes/k8s.io#10093 (replaces kubernetes/k8s.io#6853).

Merge order: this PR first, then kubernetes/k8s.io#10093. Nothing is deployed on merge. After both merge: apply the CloudFormation bootstrap, push the image built from master with ko, set image_uri to its digest in k8s.io, and run terraform apply. It starts in mock mode; no_mock = true comes in a later k8s.io PR, after SES production access is granted.

Which issue(s) this PR fixes:

Fixes #2174

Does this PR introduce a user-facing change?

Add an AWS Lambda function that sends patch release cherry-pick deadline reminders.

@kubernetes-prow kubernetes-prow Bot added release-note Denotes a PR that will be considered when it comes time to generate release notes. kind/feature Categorizes issue or PR as related to a new feature. needs-priority cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. labels Oct 21, 2026
@kubernetes-prow

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: cpanato

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kubernetes-prow kubernetes-prow Bot added the area/release-eng Issues or PRs related to the Release Engineering subproject label Oct 21, 2026
@kubernetes-prow
kubernetes-prow Bot requested review from jimangel and jrsapi October 21, 2026 13:37
@kubernetes-prow kubernetes-prow Bot added sig/release Categorizes an issue or PR as relevant to SIG Release. approved Indicates a PR has been approved by an approver from all required OWNERS files. labels Oct 21, 2026
@cpanato

cpanato commented Oct 21, 2026

Copy link
Copy Markdown
Member Author

/assign @saschagrunert @xmudrii @puerco @Verolop
cc @kubernetes/release-engineering

…eminders

Signed-off-by: Carlos Panato <ctadeu@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. area/release-eng Issues or PRs related to the Release Engineering subproject cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/feature Categorizes issue or PR as related to a new feature. needs-priority release-note Denotes a PR that will be considered when it comes time to generate release notes. sig/release Categorizes an issue or PR as relevant to SIG Release. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Send Patch releases email notification in automated way

5 participants