Repository navigation
fix: regenerate CRD manifests for the status.activities field - #10608
Merged
kaovilai merged 2 commits intoSep 29, 2026
Merged
Conversation
PR velero-io#10552 ("Move the progress messages to activities") added a new Activities []string field to PodVolumeBackupStatus, PodVolumeRestoreStatus, DataUploadStatus, and DataDownloadStatus, but the CRD YAML manifests under config/crd/{v1,v2alpha1}/bases were never regenerated to match -- so main's installed CRDs have been silently out of sync with their own Go types since that PR merged. Anything validating status writes against a strict/vendored copy of these CRDs (e.g. an admission webhook, or the new --crd-schema-check startup check in velero-io#9910) would reject a legitimate .status.activities write as an unknown field. Regenerated via: GOPATH=~/go bash hack/update-3generated-crd-code.sh (controller-gen v0.16.5, matching go.mod's sigs.k8s.io/controller-tools pin). No manual edits; the deepcopy diffs are the expected byproduct of the new []string field. Co-authored-by: Hermes Agent <noreply@hermes-agent> Signed-off-by: Tiger Kaovilai <passawit.kaovilai@gmail.com>
✅ Deploy Preview for velero canceled.
|
Contributor
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
The required changelog fragment is missing, causing the changelog CI check to fail.
Review effort: Balanced
Findings: 1
Open (1)
What changed in this PR
Regenerates CRD schemas and deepcopy implementations to support the existing status.activities fields.
Changes:
- Adds
activitiesschemas to four CRDs. - Adds deep-copy handling for the four string slices.
| File | Description |
|---|---|
config/crd/v1/bases/velero.io_podvolumebackups.yaml |
Adds backup activities schema. |
config/crd/v1/bases/velero.io_podvolumerestores.yaml |
Adds restore activities schema. |
config/crd/v2alpha1/bases/velero.io_datauploads.yaml |
Adds upload activities schema. |
config/crd/v2alpha1/bases/velero.io_datadownloads.yaml |
Adds download activities schema. |
pkg/apis/velero/v1/zz_generated.deepcopy.go |
Deep-copies pod-volume activities. |
pkg/apis/velero/v2alpha1/zz_generated.deepcopy.go |
Deep-copies data-mover activities. |
Files not reviewed (2)
- pkg/apis/velero/v1/zz_generated.deepcopy.go: Generated file
- pkg/apis/velero/v2alpha1/zz_generated.deepcopy.go: Generated file
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
Joeavaikath
reviewed
Sep 29, 2026
Joeavaikath
left a comment
Collaborator
There was a problem hiding this comment.
Good catch
Changelog gen and then should be good
sseago
previously approved these changes
Sep 29, 2026
Joeavaikath
previously approved these changes
Sep 29, 2026
shubham-pampattiwar
previously approved these changes
Sep 29, 2026
Co-authored-by: Hermes Agent <noreply@hermes-agent> Signed-off-by: Tiger Kaovilai <passawit.kaovilai@gmail.com>
kaovilai
dismissed stale reviews from shubham-pampattiwar, Joeavaikath, and sseago
via
September 29, 2026 18:10
48563a5
kaovilai
enabled auto-merge (squash)
September 29, 2026 18:11
9 tasks done
sseago
approved these changes
Sep 29, 2026
shubham-pampattiwar
approved these changes
Sep 29, 2026
blackpiglet
pushed a commit
to Shivampal157/velero
that referenced
this pull request
Sep 30, 2026
…-io#10608) * fix: regenerate CRD manifests for the status.activities field PR velero-io#10552 ("Move the progress messages to activities") added a new Activities []string field to PodVolumeBackupStatus, PodVolumeRestoreStatus, DataUploadStatus, and DataDownloadStatus, but the CRD YAML manifests under config/crd/{v1,v2alpha1}/bases were never regenerated to match -- so main's installed CRDs have been silently out of sync with their own Go types since that PR merged. Anything validating status writes against a strict/vendored copy of these CRDs (e.g. an admission webhook, or the new --crd-schema-check startup check in velero-io#9910) would reject a legitimate .status.activities write as an unknown field. Regenerated via: GOPATH=~/go bash hack/update-3generated-crd-code.sh (controller-gen v0.16.5, matching go.mod's sigs.k8s.io/controller-tools pin). No manual edits; the deepcopy diffs are the expected byproduct of the new []string field. Co-authored-by: Hermes Agent <noreply@hermes-agent> Signed-off-by: Tiger Kaovilai <passawit.kaovilai@gmail.com> * changelog: add entry for PR velero-io#10608 Co-authored-by: Hermes Agent <noreply@hermes-agent> Signed-off-by: Tiger Kaovilai <passawit.kaovilai@gmail.com> --------- Signed-off-by: Tiger Kaovilai <passawit.kaovilai@gmail.com> Co-authored-by: Hermes Agent <noreply@hermes-agent>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PR #10552 ("Move the progress messages to activities") added a new
Activities []stringfield toPodVolumeBackupStatus,PodVolumeRestoreStatus,DataUploadStatus, andDataDownloadStatus, but the CRD YAML manifests underconfig/crd/{v1,v2alpha1}/baseswere never regenerated to match. As a result, main's installed CRDs have been silently out of sync with their own Go types since that PR merged.Found while validating #9910's new
--crd-schema-checkstartup check against a real cluster built from main -- the check correctly flagsstatus.activitiesas a field the server's Go types expect but the installed CRDs don't declare, for all 4 affected kinds.Fix
Regenerated via
GOPATH=~/go bash hack/update-3generated-crd-code.sh(controller-gen v0.16.5, matching go.mod'ssigs.k8s.io/controller-toolspin). No manual edits -- the deepcopy diffs are the expected byproduct of the new[]stringfield.Why it matters
Anything that validates status writes against a strict/vendored copy of these CRDs (an admission webhook, a schema-diff check, a downstream fork pinned to the shipped manifests, etc.) would reject a legitimate
.status.activitieswrite as an unknown field until this is applied.