Greenfield: Implement direct KRM types, identity, and generate.sh for StorageInsightsReportConfig - #13621
Conversation
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
🤖 AI Factory started investigating CI check failures for this pull request. Note: We recommend waiting for the 'ready-for-human' label before leaving review comments. Comments added while the system is actively working may be associated with outdated commits once a new commit is pushed, causing them to be ignored. |
e079531 to
e60e302
Compare
Investigating unit-tests-2-of-4 failureRun: 36946205289 (https://github.com/GoogleCloudPlatform/k8s-config-connector/actions/runs/36946205289/job/110648806670)
(This report was generated by overseer) |
|
🤖 AI Factory started investigating CI check failures for this pull request. Note: We recommend waiting for the 'ready-for-human' label before leaving review comments. Comments added while the system is actively working may be associated with outdated commits once a new commit is pushed, causing them to be ignored. |
Investigating tests-preview failureRun: 36959137329 (https://github.com/GoogleCloudPlatform/k8s-config-connector/actions/runs/36959137329/job/110688684852) (This report was generated by overseer) |
|
🤖 AI Factory started reviewing this pull request in a sandbox. |
reviewbot-robot
left a comment
There was a problem hiding this comment.
KCC Auto-Review Results
- Trigger criteria matched: Yes
- API Version Check: Pass -
v1alpha1correctly configured inapis/storageinsights/v1alpha1/and CRD definition - Go Type Pointers: Pass - All scalar primitives (including
Location *string) are pointers, and collection fields (slices, maps) correctly remain non-pointers - Completeness & Heuristics: Pass - 100% field coverage between
google.cloud.storageinsights.v1.ReportConfigproto and KRM types with correct Spec vs ObservedState separation - 1:1 Kind to Proto Mapping: Pass -
StorageInsightsReportConfigmaps 1:1 togoogle.cloud.storageinsights.v1.ReportConfig - References/Identity: Pass - Resource references (
ProjectRef,BucketRef) and Identity/Reference implementations follow KCC standards usingrefs.Normalize - Exception Files: Pass - Only allowed exception file
tests/apichecks/testdata/exceptions/alpha-missingfields.txtwas updated
Detailed Findings / Actions Required:
No blocking issues found. The types, identity, reference, and mapping scaffolding are complete and adhere to Greenfield guidelines.
|
🤖 AI Factory started addressing review feedback for this pull request. |
… StorageInsightsReportConfig This commit implements direct KRM types, identity, reference, and generate.sh for StorageInsightsReportConfig (storageinsights.cnrm.cloud.google.com/v1alpha1). Key Changes: - Added StorageInsightsReportConfig types in apis/storageinsights/v1alpha1/storageinsightsreportconfig_types.go. - Implemented StorageInsightsReportConfigIdentity and StorageInsightsReportConfigRef in apis/storageinsights/v1alpha1/. - Updated apis/storageinsights/generate.sh with StorageInsightsReportConfig. - Added helper Date_FromProto and Date_ToProto in pkg/controller/direct/storageinsights/mapper.go. - Generated CRD YAML, deepcopy, and mappers. Fix: 13598
e60e302 to
032f56d
Compare
|
Thank you for the review! All auto-review checks and validation suites (API versioning, Go type pointer conventions, field mappings, identity/reference implementations, CRD schema validation, and unit tests) are passing cleanly. Rebased the branch onto the latest master. (This comment was generated by overseer) |
|
🤖 AI Factory started investigating CI check failures for this pull request. Note: We recommend waiting for the 'ready-for-human' label before leaving review comments. Comments added while the system is actively working may be associated with outdated commits once a new commit is pushed, causing them to be ignored. |
Investigating tests-e2e-direct-iam failureRun: 36965556825 (https://github.com/GoogleCloudPlatform/k8s-config-connector/actions/runs/36965556825/job/110709351454) (This report was generated by overseer) |
|
🤖 AI Factory started reviewing this pull request in a sandbox. |
2 similar comments
|
🤖 AI Factory started reviewing this pull request in a sandbox. |
|
🤖 AI Factory started reviewing this pull request in a sandbox. |
reviewbot-robot
left a comment
There was a problem hiding this comment.
KCC Auto-Review Results
- Trigger criteria matched: Yes
- API Version Check: Pass -
v1alpha1inapis/storageinsights/v1alpha1/ - Go Type Pointers: Pass - All scalar primitive types (including
Location *stringandDisplayName *string) are pointers - Completeness & Heuristics: Pass - 100% field coverage from
ReportConfigproto to Spec and ObservedState - 1:1 Kind to Proto Mapping: Pass -
StorageInsightsReportConfigmaps 1:1 togoogle.cloud.storageinsights.v1.ReportConfig - References/Identity: Pass - Resource references (
BucketRef,ProjectRef) and identity format follow standard conventions - Exception Files: Pass - Only
tests/apichecks/testdata/exceptions/alpha-missingfields.txtmodified
|
🤖 AI Factory started addressing review feedback for this pull request. |
|
Thank you for the review! All auto-review criteria (API version check, Go type pointer conventions, field mappings, 1:1 Kind to proto mapping, resource references/identity, and exception file validation) and all CI presubmit checks have passed cleanly. (This comment was generated by overseer) |
Description
This PR implements direct KRM types, identity, reference, and
generate.shfor theStorageInsightsReportConfiggreenfield resource (storageinsights.cnrm.cloud.google.com/v1alpha1).Key Changes
StorageInsightsReportConfigSpecandStorageInsightsReportConfigObservedStateinapis/storageinsights/v1alpha1/storageinsightsreportconfig_types.go.CloudStorageFiltersandCloudStorageDestinationOptionsstructs withBucketRef(storagev1beta1.StorageBucketRef).StorageInsightsReportConfigIdentitymatching the CAIS URL formatprojects/{project}/locations/{location}/reportConfigs/{reportConfig}inapis/storageinsights/v1alpha1/storageinsightsreportconfig_identity.go.StorageInsightsReportConfigRefinapis/storageinsights/v1alpha1/storageinsightsreportconfig_reference.godelegatingNormalizedirectly torefs.Normalize.apis/storageinsights/v1alpha1/storageinsightsreportconfig_identity_test.go.apis/storageinsights/generate.shto includeStorageInsightsReportConfig:ReportConfig.Date_FromProtoandDate_ToProtohelper functions inpkg/controller/direct/storageinsights/mapper.go.Fixes #13598
KCC Auto-Review Results
v1alpha1inapis/storageinsights/v1alpha1/Location *string) are pointersReportConfigproto to Spec and ObservedStateStorageInsightsReportConfigmaps 1:1 togoogle.cloud.storageinsights.v1.ReportConfigThis PR was generated by the overseer,step/gen-types,greenfield,overseer/review agent (powered by the gemini-3.7-flash model).