Skip to content

chore: add odh-model-controller as infra component#133

Merged
jland-redhat merged 1 commit intoopendatahub-io:mainfrom
israel-hdez:add-omc-to-infra
Oct 7, 2025
Merged

chore: add odh-model-controller as infra component#133
jland-redhat merged 1 commit intoopendatahub-io:mainfrom
israel-hdez:add-omc-to-infra

Conversation

@israel-hdez
Copy link
Copy Markdown
Collaborator

@israel-hdez israel-hdez commented Oct 3, 2025

Strictly, odh-model-controller would not act as infrastructure
component. It will provide automation for creating the required Roles and
RoleBindings for giving access to the models enrolled as-a-service. (PR 534)
However, this seems to be the best place to put it in.

How Has This Been Tested?

Run kustomize build maas-api/deploy/infra/odh

Merge criteria:

  • The commits are squashed in a cohesive manner and have meaningful messages.
  • Testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
  • The developer has manually tested the changes and verified that the changes work

Summary by CodeRabbit

  • New Features

    • Integrated ODH Model Controller into the platform, enabling broader model serving capabilities and lifecycle management.
  • Chores

    • Updated deployment configuration to include additional resources, expanding the set of manifests applied during deployment.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Oct 3, 2025

Caution

Review failed

The pull request is closed.

Walkthrough

Adds the odh-model-controller base (ref=incubating) to the KServe kustomization resources, expanding the manifests applied by this deployment overlay.

Changes

Cohort / File(s) Summary
KServe Kustomization Update
deployment/components/odh/kserve/kustomization.yaml
Appends odh-model-controller/config/base?ref=incubating to the kustomization resources alongside the existing KServe overlay.

Sequence Diagram(s)

sequenceDiagram
    actor Dev as Developer
    participant Kz as Kustomize (kserve overlay)
    participant K8s as Kubernetes API Server
    participant KS as KServe Resources
    participant ODH as ODH Model Controller

    Dev->>Kz: kustomize build/apply
    Kz->>K8s: Submit manifests
    K8s-->>KS: Create/Update KServe resources
    rect rgba(200,235,255,0.3)
    note right of ODH: New in this change
    K8s-->>ODH: Create/Update odh-model-controller (config/base?ref=incubating)
    end
Loading

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

I twitch my ears at configs new,
A controller hops into the brew;
KServe’s paths and models align,
Incubating branches intertwine—
With one more YAML in the queue,
Deployments leap, as rabbits do. 🐇✨

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Title Check ✅ Passed The title succinctly describes the addition of the odh-model-controller as an infrastructure component, matching the change to the kustomization.yaml and clearly conveying the primary change from the developer’s perspective.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
Description Check ✅ Passed Check skipped - CodeRabbit's high-level summary is enabled.

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between cfd952c and 3f4b86b.

📒 Files selected for processing (1)
  • deployment/components/odh/kserve/kustomization.yaml (1 hunks)

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.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 870bbff and cfd952c.

📒 Files selected for processing (1)
  • maas-api/deploy/infra/odh/kustomization.yaml (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: build

@@ -8,6 +8,7 @@ metadata:
# For now, install only Model Serving pieces
resources:
- github.com/opendatahub-io/kserve/config/overlays/odh?ref=release-v0.15
- github.com/opendatahub-io/odh-model-controller/config/base?ref=incubating
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot Oct 3, 2025

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion | 🟠 Major

Pin odh-model-controller to an immutable ref.

Referencing the incubating branch means this build will drift whenever that branch changes. Please pin to a released tag or commit SHA (similar to the existing release-v0.15 reference) so infra deployments stay reproducible.

🤖 Prompt for AI Agents
In maas-api/deploy/infra/odh/kustomization.yaml around line 11, the kustomize
remote reference uses the mutable branch ref "incubating"; change it to a fixed
immutable ref by replacing "?ref=incubating" with a specific released tag or
commit SHA (for example match the style used elsewhere like "?ref=release-v0.15"
or use an exact commit hash). Update the line to point to the chosen tag/SHA and
ensure any related documentation or deployment notes reflect the pinned version
for reproducible infra deployments.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

For now we need the latest code base for testing

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.

@bartoszmajsak, understood! Using the incubating branch makes sense for active testing and development.

Once testing is complete and you're ready to stabilize, consider:

  1. Pinning to a specific commit SHA or tag for production deployments
  2. Adding a TODO comment in the kustomization file to track this decision
  3. Creating a follow-up issue to revisit this before merging to ensure reproducible deployments

Would you like me to open an issue to track the stabilization task for when testing is complete?

@bartoszmajsak
Copy link
Copy Markdown
Collaborator

bartoszmajsak commented Oct 3, 2025

Before we merge it we probably need two things

  • Gateway segregation - to not use the default one LLMInferenceService will attach "other" instances to feat: dedicated MaaS gateway #135
  • Ensure that policies are not conflicting

I also think this should be a dev overlay, as for the user-facing path we ship it in RHOAI

Copy link
Copy Markdown
Contributor

@jland-redhat jland-redhat left a comment

Choose a reason for hiding this comment

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

LGTM

@jland-redhat
Copy link
Copy Markdown
Contributor

Just an additional thought

@openshift-ci
Copy link
Copy Markdown

openshift-ci bot commented Oct 7, 2025

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: israel-hdez, jland-redhat

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:
  • OWNERS [israel-hdez,jland-redhat]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Strictly, `odh-model-controller` would not act as infrastructure
component. It will provide automation for creating the required Roles and
RoleBindings for giving access to the models enrolled as-a-service.
However, this seems to be the best place to put it in.

Signed-off-by: Edgar Hernández <23639005+israel-hdez@users.noreply.github.com>
@openshift-ci openshift-ci bot removed the lgtm label Oct 7, 2025
@openshift-ci
Copy link
Copy Markdown

openshift-ci bot commented Oct 7, 2025

New changes are detected. LGTM label has been removed.

@israel-hdez israel-hdez changed the title chore: Add odh-model-controller as infra component chore: add odh-model-controller as infra component Oct 7, 2025
@jland-redhat jland-redhat merged commit 6767c1e into opendatahub-io:main Oct 7, 2025
2 of 6 checks passed
@israel-hdez israel-hdez deleted the add-omc-to-infra branch October 7, 2025 16:43
SB159 pushed a commit to SB159/maas-billing that referenced this pull request Oct 15, 2025
Strictly, `odh-model-controller` would not act as infrastructure
component. It will provide automation for creating the required Roles and
RoleBindings for giving access to the models enrolled as-a-service.
However, this seems to be the best place to put it in.

Signed-off-by: Edgar Hernández <23639005+israel-hdez@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants