Skip to content

OSAC-2872: bump osac-operator BSR to v0.0.85 - #275

Merged
omer-vishlitzky merged 1 commit into
osac-project:mainfrom
akshaynadkarni:fix/bump-bsr-v0.0.85
Aug 12, 2026
Merged

OSAC-2872: bump osac-operator BSR to v0.0.85#275
omer-vishlitzky merged 1 commit into
osac-project:mainfrom
akshaynadkarni:fix/bump-bsr-v0.0.85

Conversation

@akshaynadkarni

@akshaynadkarni akshaynadkarni commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

Summary

Bump the private-api BSR module from v0.0.83 to v0.0.85 and regenerate
the gRPC client. v0.0.85 includes the Volume proto definitions from
#201.

Why

The osac-operator gRPC client was pinned to BSR v0.0.83, which predates
the Volume proto. v0.0.85 was published after #201 merged and includes
Volume, VolumeAccessMode, StorageProtocol (moved to storage_common_type),
and the hub field on VolumeStatus.

The regeneration also changes FabricManager from a value type to a pointer
(optional field). Two test files are updated to use pointer variables.

Testing

cd osac-operator && make lint  # 0 issues
cd osac-operator && make test  # all tests pass

Ticket

OSAC-2872


Signed-off-by: akshaynadkarni 25892229+akshaynadkarni@users.noreply.github.com
Assisted-by: Cursor/Claude

Summary by CodeRabbit

  • Tests

    • Updated network class test fixtures to match the current API field format.
    • Preserved coverage for configurations with and without a Kubernetes fabric manager.
  • Chores

    • Updated the private API module dependency to a newer version.

Bump the private-api BSR module from v0.0.83 to v0.0.85 and regenerate
the gRPC client. v0.0.85 includes the Volume proto definitions
(VolumeSpec, VolumeStatus, VolumeAccessMode enum, StorageProtocol moved
to storage_common_type.proto) from the merged Volume API PR (osac-project#201).

The regeneration changes FabricManager from a value type to a pointer
(optional field in the proto). Test files that constructed NetworkClass
structs with bare string literals are updated to use pointer variables
or ptr.To().

Signed-off-by: akshaynadkarni <25892229+akshaynadkarni@users.noreply.github.com>
Assisted-by: Cursor/Claude
Signed-off-by: akshaynadkarni <25892229+akshaynadkarni@users.noreply.github.com>
@openshift-ci-robot

openshift-ci-robot commented Aug 11, 2026

Copy link
Copy Markdown

@akshaynadkarni: This pull request references OSAC-2872 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the feature to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Summary

Bump the private-api BSR module from v0.0.83 to v0.0.85 and regenerate
the gRPC client. v0.0.85 includes the Volume proto definitions from
#201.

Why

The osac-operator gRPC client was pinned to BSR v0.0.83, which predates
the Volume proto. v0.0.85 was published after #201 merged and includes
Volume, VolumeAccessMode, StorageProtocol (moved to storage_common_type),
and the hub field on VolumeStatus.

The regeneration also changes FabricManager from a value type to a pointer
(optional field). Two test files are updated to use pointer variables.

Testing

cd osac-operator && make lint  # 0 issues
cd osac-operator && make test  # all tests pass

Ticket

OSAC-2872


Signed-off-by: akshaynadkarni 25892229+akshaynadkarni@users.noreply.github.com
Assisted-by: Cursor/Claude

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@coderabbitai

coderabbitai Bot commented Aug 11, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository: osac-project/coderabbit/.coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: e4949152-0f4a-4f82-912d-3b4a86ded7fb

📥 Commits

Reviewing files that changed from the base of the PR and between 9cf778c and 3cd6c53.

⛔ Files ignored due to path filters (83)
  • osac-operator/internal/api/osac/private/v1/access_key_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/access_key_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/access_keys_service.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/access_keys_service_grpc.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/access_keys_service_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/baremetal_instance_catalog_item_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/baremetal_instance_catalog_item_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/baremetal_instance_common_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/baremetal_instance_common_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/baremetal_instance_template_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/baremetal_instance_template_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/baremetal_instance_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/baremetal_instance_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/cluster_catalog_item_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/cluster_catalog_item_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/cluster_common_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/cluster_common_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/cluster_template_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/cluster_template_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/cluster_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/cluster_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/cluster_version_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/cluster_version_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/compute_instance_catalog_item_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/compute_instance_catalog_item_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/compute_instance_common_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/compute_instance_common_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/compute_instance_template_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/compute_instance_template_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/compute_instance_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/compute_instance_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/event_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/event_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/lease_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/lease_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/leases_service.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/leases_service_grpc.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/leases_service_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/metadata_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/metadata_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/network_class_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/network_class_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/organization_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/organization_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/organizations_service.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/organizations_service_grpc.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/organizations_service_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/project_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/project_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/public_ip_attachment_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/public_ip_attachment_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/public_ip_attachments_service.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/public_ip_attachments_service_grpc.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/public_ip_attachments_service_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/public_ip_pool_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/public_ip_pool_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/public_ip_pools_service.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/public_ip_pools_service_grpc.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/public_ip_pools_service_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/public_ip_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/public_ip_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/public_ips_service.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/public_ips_service_grpc.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/public_ips_service_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/role_binding_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/role_binding_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/role_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/role_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/security_group_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/security_group_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/security_rule_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/security_rule_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/storage_common_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/storage_common_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/storage_tier_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/storage_tier_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/virtual_network_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/virtual_network_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/volume_type.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/volume_type_protoopaque.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/volumes_service.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/volumes_service_grpc.pb.go is excluded by !**/*.pb.go
  • osac-operator/internal/api/osac/private/v1/volumes_service_protoopaque.pb.go is excluded by !**/*.pb.go
📒 Files selected for processing (3)
  • osac-operator/buf.gen.yaml
  • osac-operator/internal/controller/networkclass_capabilities_controller_test.go
  • osac-operator/internal/dispatcheradapter/network_class_adapter_test.go

Walkthrough

The private API dependency advances to v0.0.85. NetworkClass controller and adapter test fixtures now use pointer-valued FabricManager fields.

Changes

NetworkClass API alignment

Layer / File(s) Summary
Update private API dependency
osac-operator/buf.gen.yaml
The private API Buf module version changes from v0.0.83 to v0.0.85.
Align NetworkClass test fixtures
osac-operator/internal/controller/networkclass_capabilities_controller_test.go, osac-operator/internal/dispatcheradapter/network_class_adapter_test.go
NetworkClass fixtures use string pointers for FabricManager in controller and adapter tests, including manager-present and missing-manager cases.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Possibly related PRs

Suggested reviewers: siddarthr56

🚥 Pre-merge checks | ✅ 11
✅ Passed checks (11 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies the BSR update to osac-operator v0.0.85, which is the primary change.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
No-Hardcoded-Secrets ✅ Passed The diff adds only the Buf module version, pointer-based test fixtures, and generated API code; scans found no secret assignments, credential URLs, private keys, or credential-format literals.
No-Weak-Crypto ✅ Passed The diff adds only generated protobuf/gRPC code and pointer-based test fixtures; added-line scans and operator-wide API searches found no weak crypto or secret comparisons.
No-Injection-Vectors ✅ Passed The diff only updates Buf-generated protobuf/gRPC code and pointer-based test fixtures; scans found no SQL concatenation, shell=True, eval/exec, pickle.loads, unsafe YAML load, os.system, or danger...
Container-Privileges ✅ Passed The PR changes one Buf configuration YAML and Go files; no changed container/Kubernetes manifest or privilege setting is present.
No-Sensitive-Data-In-Logs ✅ Passed The PR diff adds no logging calls or sensitive log arguments; changes are Buf/generated API code and pointer-only test fixtures.
Ai-Attribution ✅ Passed AI use is disclosed in the PR and HEAD commit; the PR commit has an Assisted-by: Cursor/Claude trailer and no AI Co-Authored-By trailer.
✨ Finishing Touches 💡 1
🛠️ Fix failing CI checks 💡
  • Create stacked PR
  • Commit on current branch
🧪 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.

@fullsend-ai-review

fullsend-ai-review Bot commented Aug 11, 2026

Copy link
Copy Markdown

🤖 Finished Review · ✅ Success · Started 9:13 PM UTC · Completed 9:25 PM UTC

Commit: 3cd6c53 · View workflow run →

@CrystalChun CrystalChun 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.

/lgtm

@openshift-ci

openshift-ci Bot commented Aug 11, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: akshaynadkarni, CrystalChun

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

@fullsend-ai-review

Copy link
Copy Markdown

Looks good to me

@fullsend-ai-review fullsend-ai-review Bot added the ready-for-merge All reviewers approved — ready to merge label Aug 11, 2026
@CrystalChun

Copy link
Copy Markdown
Contributor

/retest

@github-actions

Copy link
Copy Markdown

Re-triggered failed runs:

  • label-gate (#31536805786)
  • label-gate (#31536803299)
  • E2E BMaaS Full Install (#31536801283)
  • label-gate (#31536800869)
  • Unit Tests (#31536800748)

@omer-vishlitzky
omer-vishlitzky added this pull request to the merge queue Aug 12, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Aug 12, 2026
@omer-vishlitzky
omer-vishlitzky added this pull request to the merge queue Aug 12, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Aug 12, 2026
@omer-vishlitzky
omer-vishlitzky added this pull request to the merge queue Aug 12, 2026
@omer-vishlitzky
omer-vishlitzky removed this pull request from the merge queue due to a manual request Aug 12, 2026
@omer-vishlitzky

Copy link
Copy Markdown
Contributor

/retest

@omer-vishlitzky

Copy link
Copy Markdown
Contributor

/hold

@github-actions

Copy link
Copy Markdown

Re-triggered failed runs:

  • label-gate (#31536805786)
  • label-gate (#31536803299)
  • Unit Tests (#31536800748)
  • label-gate (#31536800869)

@omer-vishlitzky
omer-vishlitzky merged commit 1bc8491 into osac-project:main Aug 12, 2026
139 of 153 checks passed
@akshaynadkarni
akshaynadkarni deleted the fix/bump-bsr-v0.0.85 branch August 12, 2026 13:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants