chore: controller - update LocalBlob/v1 type assertions to UpperCamelCase [4/4]#2326
Conversation
Aligns with open-component-model#962 UpperCamelCase convention. LocalBlob is now the primary type for marshaling; localBlob preserved as legacy alias for backward compatibility. Both descriptor/v2 and descriptor/runtime updated. Adds scheme resolution tests for all 4 aliases (versioned/unversioned, primary/legacy), updates marshal/unmarshal assertions, and adds legacy backward-compat test coverage. Signed-off-by: Gerald Morrison (SAP) <gerald.morrison@sap.com>
Signed-off-by: Gerald Morrison (SAP) <gerald.morrison@sap.com>
Signed-off-by: Gerald Morrison (SAP) <gerald.morrison@sap.com>
✅ Deploy Preview for ocm-website ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
|
Warning Rate limit exceeded
Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 50 minutes and 55 seconds. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
@coderabbitai review |
✅ Actions performedReview triggered.
|
Only LocalBlob/v1 (UpperCamelCase) should be the non-deprecated canonical form. All legacy variants — localBlob/v1, LocalBlob, localBlob — are now marked deprecated in the JSON schemas and generator markers, aligning with the intent of ocm-project#962. Signed-off-by: Gerald Morrison (SAP) <gerald.morrison@sap.com>
… [2/4] (#2324) ## Summary Updates YAML test fixtures in `bindings/go/constructor/` to use `LocalBlob` (UpperCamelCase) instead of `localBlob`. Part of the localBlob → LocalBlob UpperCamelCase migration for ocm-project/ocm-project#962. ## Changes - `construct_resource_test.go`: YAML fixture `type: localBlob` → `type: LocalBlob` - `construct_source_test.go`: YAML fixture `type: localBlob` → `type: LocalBlob` ## Dependencies Depends on #2323 being merged and published (descriptor/v2 with `LocalBlob` as primary type). ## Related PRs - #2323 — PR 1: descriptor/v2 + descriptor/runtime (constants, scheme, tests) - **This PR** — PR 2: constructor (YAML fixtures) - #2325 — PR 3: cli (test assertions) - #2326 — PR 4: kubernetes/controller (test JSON) Resolves part of ocm-project/ocm-project#962 --------- Signed-off-by: Gerald Morrison (SAP) <gerald.morrison@sap.com> Co-authored-by: Gerald Morrison (SAP) <gerald.morrison@sap.com>
piotrjanik
left a comment
There was a problem hiding this comment.
I would update the docs:
… [2/4] (open-component-model#2324) ## Summary Updates YAML test fixtures in `bindings/go/constructor/` to use `LocalBlob` (UpperCamelCase) instead of `localBlob`. Part of the localBlob → LocalBlob UpperCamelCase migration for ocm-project/ocm-project#962. ## Changes - `construct_resource_test.go`: YAML fixture `type: localBlob` → `type: LocalBlob` - `construct_source_test.go`: YAML fixture `type: localBlob` → `type: LocalBlob` ## Dependencies Depends on open-component-model#2323 being merged and published (descriptor/v2 with `LocalBlob` as primary type). ## Related PRs - open-component-model#2323 — PR 1: descriptor/v2 + descriptor/runtime (constants, scheme, tests) - **This PR** — PR 2: constructor (YAML fixtures) - open-component-model#2325 — PR 3: cli (test assertions) - open-component-model#2326 — PR 4: kubernetes/controller (test JSON) Resolves part of ocm-project/ocm-project#962 --------- Signed-off-by: Gerald Morrison (SAP) <gerald.morrison@sap.com> Co-authored-by: Gerald Morrison (SAP) <gerald.morrison@sap.com> e25a69c
…2325) ## Summary Updates test assertion strings in `cli/cmd/cmd_test.go` from `"localBlob/v1"` to `"LocalBlob/v1"` to match the new primary UpperCamelCase type name. Part of the localBlob → LocalBlob UpperCamelCase migration for ocm-project/ocm-project#962. ## Changes - `cli/cmd/cmd_test.go`: 5 assertion strings updated (`"localBlob/v1"` → `"LocalBlob/v1"`) - Line 829: `r.Equal` assertion - Line 1240: YAML output string - Line 1353: JSON map value - Lines 1777, 1817: `r.Equal` assertions **Not changed:** `--upload-as localBlob` CLI flag (stays lowercase — enum value, not a type name) ## Dependencies Depends on #2323 being merged and published (descriptor/v2 with `LocalBlob` as primary type). ## Related PRs - #2323 — PR 1: descriptor/v2 + descriptor/runtime (constants, scheme, tests) - #2324 — PR 2: constructor (YAML fixtures) - **This PR** — PR 3: cli (test assertions) - #2326 — PR 4: kubernetes/controller (test JSON) Resolves part of ocm-project/ocm-project#962 --------- Signed-off-by: Gerald Morrison (SAP) <gerald.morrison@sap.com> Co-authored-by: Gerald Morrison (SAP) <gerald.morrison@sap.com>
… [1/4] (#2323) ## Summary Renames `localBlob` → `LocalBlob` (UpperCamelCase) as the primary type name, preserving `localBlob` as a legacy alias for backward compatibility. This is the first of 4 PRs completing the `localBlob` portion of ocm-project/ocm-project#962. Follows the exact pattern established in #2057 for File, Dir, UTF8, and Helm input types. ## Changes **Production code:** - `descriptor/v2/local_access.go` — `LocalBlobAccessType = "LocalBlob"`, new `LegacyLocalBlobAccessType = "localBlob"`, added `+ocm:jsonschema-gen:enum` markers - `descriptor/v2/scheme.go` — 4 aliases: `LocalBlob/v1` (primary), `LocalBlob`, `localBlob/v1` (legacy), `localBlob` - `descriptor/runtime/local_access.go` — same constant + marker changes **Tests:** - `descriptor/v2/local_access_test.go` — marshal asserts `"LocalBlob/v1"`, added `_UpperCamelCase` unmarshal test, renamed existing unmarshal to `_LegacyType` - `descriptor/v2/scheme_test.go` — **NEW**: 4 scheme resolution tests (all alias variants: versioned/unversioned × primary/legacy) - `descriptor/v2/helpers_test.go` — added `TestIsLocalBlob_RawLegacy`, updated Raw data JSON **Generated:** - Both `schemas/LocalBlob.schema.json` now have enum constraints: `LocalBlob/v1`, `localBlob/v1`, `LocalBlob` (deprecated), `localBlob` (deprecated) ## Follow-up PRs (after this merges + publishes) These are independent of each other and can merge in parallel: - #2324 — PR 2 (constructor): update YAML `type: localBlob` → `type: LocalBlob` in test fixtures - #2325 — PR 3 (cli): update 5× `"localBlob/v1"` → `"LocalBlob/v1"` string assertions - #2326 — PR 4 (kubernetes/controller): update 13× JSON type strings + use constants in CEL test Resolves the localBlob portion of ocm-project/ocm-project#962 --------- Signed-off-by: Gerald Morrison (SAP) <gerald.morrison@sap.com> Co-authored-by: Gerald Morrison (SAP) <gerald.morrison@sap.com>
## Summary - Rename all `localBlob/v1` references to `LocalBlob/v1` across website documentation (6 files) - Fix unversioned `localBlob` → `LocalBlob/v1` in signing concept doc - Add "Legacy alias: `localBlob`" note in the reference doc (consistent with `OCIImageLayer/v1` and `Helm/v1` style) - Remove unnecessary `Helm/v1` deprecation callout (no other type has one) ## What's unchanged (by design) - `--upload-as localBlob` CLI flag — this is an enum value, not a type name - `content_versioned/` legacy docs — intentionally frozen (same approach as #2244) ## Dependencies - **Depends on:** #2244 — this PR is rebased on top of `website-upper-camel-case-types` and should be merged after #2244 ## Related - Part of open-component-model/ocm-project#962 - Related code PRs: #2323 (descriptor), #2324 (constructor), #2325 (cli), #2326 (controller) --------- Signed-off-by: Gerald Morrison (SAP) <gerald.morrison@sap.com> Co-authored-by: Gerald Morrison (SAP) <gerald.morrison@sap.com>
## Summary - Rename all `localBlob/v1` references to `LocalBlob/v1` across website documentation (6 files) - Fix unversioned `localBlob` → `LocalBlob/v1` in signing concept doc - Add "Legacy alias: `localBlob`" note in the reference doc (consistent with `OCIImageLayer/v1` and `Helm/v1` style) - Remove unnecessary `Helm/v1` deprecation callout (no other type has one) ## What's unchanged (by design) - `--upload-as localBlob` CLI flag — this is an enum value, not a type name - `content_versioned/` legacy docs — intentionally frozen (same approach as #2244) ## Dependencies - **Depends on:** #2244 — this PR is rebased on top of `website-upper-camel-case-types` and should be merged after #2244 ## Related - Part of open-component-model/ocm-project#962 - Related code PRs: #2323 (descriptor), #2324 (constructor), #2325 (cli), #2326 (controller) --------- Signed-off-by: Gerald Morrison (SAP) <gerald.morrison@sap.com> Co-authored-by: Gerald Morrison (SAP) <gerald.morrison@sap.com> b742838
Summary
Updates test JSON strings and hardcoded type references in
kubernetes/controller/to useLocalBlob/v1(UpperCamelCase) instead oflocalBlob/v1.Part of the localBlob → LocalBlob UpperCamelCase migration for ocm-project/ocm-project#962.
Changes
deployer_controller_test.go: 9×{"type":"localBlob/v1"}→{"type":"LocalBlob/v1"}deployer_controller_rgd_test.go: 4× same replacementcel/functions/oci_test.go: replaced hardcodedruntime.NewVersionedType("localBlob", "v1")withruntime.NewVersionedType(v2.LocalBlobAccessType, v2.LocalBlobAccessTypeVersion)using the exported constantDependencies
Depends on #2323 being merged and published (descriptor/v2 with
LocalBlobas primary type).Related PRs
Resolves part of ocm-project/ocm-project#962