Skip to content

chore: controller - update LocalBlob/v1 type assertions to UpperCamelCase [4/4]#2326

Merged
morri-son merged 5 commits into
open-component-model:mainfrom
morri-son:feat/localblob-uppercamelcase-controller
Apr 24, 2026
Merged

chore: controller - update LocalBlob/v1 type assertions to UpperCamelCase [4/4]#2326
morri-son merged 5 commits into
open-component-model:mainfrom
morri-son:feat/localblob-uppercamelcase-controller

Conversation

@morri-son

@morri-son morri-son commented Apr 17, 2026

Copy link
Copy Markdown
Contributor

Summary

Updates test JSON strings and hardcoded type references in kubernetes/controller/ to use LocalBlob/v1 (UpperCamelCase) instead of localBlob/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 replacement
  • cel/functions/oci_test.go: replaced hardcoded runtime.NewVersionedType("localBlob", "v1") with runtime.NewVersionedType(v2.LocalBlobAccessType, v2.LocalBlobAccessTypeVersion) using the exported constant

Dependencies

Depends on #2323 being merged and published (descriptor/v2 with LocalBlob as primary type).

Related PRs

Resolves part of ocm-project/ocm-project#962

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>
@morri-son morri-son requested a review from a team as a code owner April 17, 2026 20:14
@netlify

netlify Bot commented Apr 17, 2026

Copy link
Copy Markdown

Deploy Preview for ocm-website ready!

Name Link
🔨 Latest commit abd1601
🔍 Latest deploy log https://app.netlify.com/projects/ocm-website/deploys/69eb82cbbdde530007ecfe17
😎 Deploy Preview https://deploy-preview-2326--ocm-website.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@coderabbitai

coderabbitai Bot commented Apr 17, 2026

Copy link
Copy Markdown
Contributor

Warning

Rate limit exceeded

@morri-son has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 50 minutes and 55 seconds before requesting another review.

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 @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

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 configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: afd062b0-11c1-489d-b401-fe28b3fd1718

📥 Commits

Reviewing files that changed from the base of the PR and between e25a69c and abd1601.

📒 Files selected for processing (2)
  • kubernetes/controller/internal/cel/functions/oci_test.go
  • kubernetes/controller/internal/controller/deployer/deployer_controller_rgd_test.go
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions Bot added area/testing Testing related size/m Medium labels Apr 17, 2026
@morri-son morri-son changed the title test(controller): update LocalBlob/v1 type assertions to UpperCamelCase chore: controller - update LocalBlob/v1 type assertions to UpperCamelCase Apr 17, 2026
@morri-son morri-son added the kind/chore chore, maintenance, etc. label Apr 17, 2026
@morri-son morri-son linked an issue Apr 17, 2026 that may be closed by this pull request
7 tasks
@morri-son morri-son changed the title chore: controller - update LocalBlob/v1 type assertions to UpperCamelCase chore: controller - update LocalBlob/v1 type assertions to UpperCamelCase [4/4] Apr 20, 2026
@morri-son

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Apr 21, 2026

Copy link
Copy Markdown
Contributor
✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

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>
@morri-son morri-son enabled auto-merge (squash) April 24, 2026 08:11
morri-son added a commit that referenced this pull request Apr 24, 2026
… [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 piotrjanik left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would update the docs:

// - map[string]any with "localReference": treated as a localBlob access (localBlob/v1),

ocmbot2 Bot pushed a commit to morri-son/open-component-model that referenced this pull request Apr 24, 2026
… [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
@github-actions github-actions Bot added size/s Small and removed size/m Medium labels Apr 24, 2026
@morri-son morri-son merged commit 367aec2 into open-component-model:main Apr 24, 2026
23 checks passed
morri-son added a commit that referenced this pull request Apr 28, 2026
…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>
morri-son added a commit that referenced this pull request Apr 28, 2026
… [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>
morri-son added a commit that referenced this pull request Apr 29, 2026
## 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>
ocmbot Bot pushed a commit that referenced this pull request Apr 29, 2026
## 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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/testing Testing related kind/chore chore, maintenance, etc. size/s Small

Projects

None yet

Development

Successfully merging this pull request may close these issues.

align type notation for access and input

4 participants