Component Release Notes
- Llm d: https://github.com/opendatahub-io/llm-d-router/releases/tag/odh-v3.5
- Wva: https://github.com/opendatahub-io/workload-variant-autoscaler/releases/tag/odh-v3.5
- Batch gateway: https://github.com/opendatahub-io/batch-gateway/releases/tag/odh-v3.5
- Feastoperator: https://github.com/opendatahub-io/feast/releases/tag/v0.65.0
- Ogx: https://github.com/opendatahub-io/ogx-k8s-operator/tree/odh
- Workbenchesnotebook controller: https://github.com/opendatahub-io/kubeflow/releases/tag/v1.10.0-14
- Workbenchesnotebooks: https://github.com/opendatahub-io/notebooks/releases/tag/v1.47.0
- Ray: https://github.com/opendatahub-io/kuberay/releases/tag/v1.6.2
- Dashboard: https://github.com/opendatahub-io/odh-dashboard/releases#release-v3.5.0-odh
- Modelregistry: https://github.com/opendatahub-io/model-registry-operator/releases/tag/v0.3.14
- Datasciencepipelines: https://github.com/opendatahub-io/data-science-pipelines-operator/releases/tag/v2.18.0
- Trainingoperator: https://github.com/opendatahub-io/training-operator/releases/tag/v1.9.3%2Brhaiv.3
- Trainer: https://github.com/opendatahub-io/trainer/releases/tag/odh-3.5.0
- Trustyai: https://github.com/opendatahub-io/trustyai-service-operator/releases/tag/odh-3.5
- Mlflowoperator: https://github.com/opendatahub-io/mlflow-operator/releases/tag/1.1.0
- Maas: https://github.com/opendatahub-io/models-as-a-service/tree/v0.2.1
- Sparkoperator: https://github.com/opendatahub-io/spark-operator/releases/tag/odh-3.5.0
- Kserve: https://github.com/opendatahub-io/kserve/releases/tag/odh-v3.5
- Modelcontroller: https://github.com/opendatahub-io/odh-model-controller/releases/tag/odh-v3.5
- Opendatahub operator: https://github.com/opendatahub-io/opendatahub-operator/releases/tag/v3.5.0
What's Changed
- chore: update manifest commit SHAs by @odh-release-bot[bot] in #3590
- cp step fails due to the ./ in the path by @mchamsed-rh in #3672
- fix odh-workbenches-controller manifest prefetch by removing ./ prefi… by @m-rafeeq in #3669
- fix: add modelsAsService to default DSC sample by @liangwen12year in #3657
- fix(rbac): remove wildcard SCC use verb from operator ClusterRole by @sefroberg in #3642
- update: make customize message when dependency operator is missing by @zdtsw in #3663
- chore: update manifest commit SHAs by @odh-release-bot[bot] in #3673
- Added repeat runs for config-b and statistical analysis by @harsh1947-jain in #3668
- feat(monitoring): add cluster prometheus tenancy datasource for Perses by @rsun19 in #3555
- refactor: remove dead code for Kueue webhook by @mlassak in #3660
- update: switch 2 llm-d images after renaming by @zdtsw in #3593
- fix: remove e2e skip for trustyai mcp guardrails by @davidebianchi in #3674
- feat(gateway): enhance kube-auth-proxy TLS configuration based on APIServer settings by @sukumars321 in #3620
- feat: set monitoring namespace for MaaS by @ahadas in #3652
- chore: update manifest commit SHAs by @odh-release-bot[bot] in #3675
- feat: add support for autoCreateQueues flag in DSC for Kueue by @mlassak in #3648
- chore(cloudmanager): filter RBAC script to only cloudmanager charts by @davidebianchi in #3615
- fix(monitoring): propagate storage size to Perses CR using v1alpha2 schema by @jira-autofix[bot] in #3664
- fix: flaky unit test on dsci controller by @davidebianchi in #3681
- chore: update manifest commit SHAs by @odh-release-bot[bot] in #3685
- fix: enable MLflow operator by default in the default DSC by @kramaranya in #3623
- fix(gateway): add egress rules to kube-auth-proxy NetworkPolicy for OCP 4.22 by @ugiordan in #3682
- fix(kserve): preserve PV claimRef in model cache reconcile loop by @mwaykole in #3622
- fix: update autoCreateQueue flag docs, update relevant kueue e2e by @mlassak in #3686
- feat(operator): integrate with cluster TLS security profile by @ugiordan in #3653
- fix(trustyai): delete Deployment with stale immutable selector on upgrade by @sheltoncyril in #3662
- Remove unused trainer image mappings by @sutaakar in #3698
- feat: add agent-ops module image to dashboard imagesMap by @Gkrumbach07 in #3684
- feat: add ai-gateway module into operator by @zdtsw in #3625
- Add odh-mcp-lifecycle-module-operator to operator manifests by @dchourasia in #3713
- RHOAIENG-65062 DAG for upgrade & provision ordering by @StevenTobin in #3634
- feat: add monitoring prefix skip by @davidebianchi in #3718
- Fix manifests-config.yaml for MCPLO and AI Gateway by @MarianMacik in #3729
- chore: improve test retry cli on timeout by @davidebianchi in #3721
- fix(RHOAIENG-60496): fix cleanup when transition from Managed to Unmanaged by @davidebianchi in #3591
- RHOAIENG-56117: Add checks for UPDATE in validation webhooks by @CiaraM100104 in #3700
- chore: update manifest commit SHAs by @odh-release-bot[bot] in #3695
- Fix false positives and expand coverage in failureclassifier by @harsh1947-jain in #3696
- fix(modelsasservice): add egress NetworkPolicy for payload-processing on OCP 4.22 by @jira-autofix[bot] in #3699
- feat: add support for xKS(platform CR) for new ai-gateway model by @zdtsw in #3709
- RHOAIENG 56111: Fix clusterVersion History[0] from panicking when empty by @CiaraM100104 in #3725
- fix(reconciler): scope gomega to subtests in dynamic ownership test by @matzew in #3744
- RHOAIENG-67679: Remove PROXY_MODE env var from kube-auth-proxy deployments by @GowthamShanmugam in #3636
- Filter stale events and check operator container states by @harsh1947-jain in #3710
- chore: update manifest commit SHAs by @odh-release-bot[bot] in #3746
- fix(e2e): strip finalizers after delete to prevent controller re-addition by @asanzgom in #3705
- chore: remove stale and old known issues by @davidebianchi in #3677
- [backport] update: add aigateway into default DSC yaml by @zdtsw in #3715
- chore: update RHOAI branch to rhoai-3.5 by @github-actions[bot] in #3724
- feat: add new llm-d-async image for ai-gateway-operator by @zdtsw in #3726
- fix: skip runlevel gate when dag is disabled by @davidebianchi in #3745
- chore: increase e2e timeout by @davidebianchi in #3749
- RHOAIENG-72302: add proxy images to ray imageParamMap for disconnected support by @kryanbeane in #3742
- chore: update manifest commit SHAs by @odh-release-bot[bot] in #3751
- RHOAIENG-58789: security improvements in e2e tests for xKS by @rinaldodev in #3743
- chore: update manifest commit SHAs by @odh-release-bot[bot] in #3754
- chore(deps): bump golang.org/x/net from 0.47.0 to 0.55.0 in /cmd/health-check by @dependabot[bot] in #3750
- udpate: change manifests entrypoint after upstream change overlays by @zdtsw in #3765
- feat: add prefetched Helm chart support to CI builds by @riprasad in #3763
- RHOAIENG-68917: Add condition to skip e2e for automated manifest SHA PRs by @CiaraM100104 in #3732
- docs(gateway): Route GC on upgrade design document by @GowthamShanmugam in #3708
- chore: add new owner alias for suksubra in OWNERS_ALIASES by @sukumars321 in #3769
- RHOAIENG-58789: trust bots, lgtm, and scope xKS e2e triggers by @rinaldodev in #3767
- Add imageParamMap for autogluon-image with RELATED_IMAGE_ODH_KSERVE_AUTOGLUON_SERVER_IMAGE by @Snomaan6846 in #3680
- chore: update manifest commit SHAs by @odh-release-bot[bot] in #3768
- RHOAIENG-63921: Operator gateway fallback images use :latest tags, breaking disconnected deployments by @jira-autofix[bot] in #3576
- Replace generic MCP tools with Red Hat OpenShift MCP server by @harsh1947-jain in #3737
- fix: track ai-gateway-operator from stable branch by @chaitanya1731 in #3735
- RHOAIENG-65524: feat(mcplifecycleoperator): integrate MCP Lifecycle Operator module by @matzew in #3676
- feat: add support to pass monitoring namespace to modular by @zdtsw in #3779
- fix(modular): when module status updated DSC should trigger reconcil on predicate by @zdtsw in #3752
- fix: order of DAG by @zdtsw in #3766
- chore(mcplifecycleoperator): bump module operator manifests to latest SHAs by @matzew in #3782
- ensure env vars are always injected by @StevenTobin in #3761
- chore: deactivate HWP & ConnAPI webhooks for ISVC/LLMIsvc by @israel-hdez in #3777
- RHOAIENG-66060: test(mcplifecycleoperator): add missing handler unit tests by @matzew in #3783
- add module status reporting by @StevenTobin in #3762
- chore: update manifest commit SHAs by @odh-release-bot[bot] in #3784
- fix gc action and buildmodule should allow nil return by @StevenTobin in #3774
- feat(dashboard): map pgvector-image to shared RELATED_IMAGE_POSTGRESQL_16_IMAGE by @danpierce1 in #3701
- chore: skip xKS e2e rerun on unchanged commits by @rinaldodev in #3807
- chore: update manifest commit SHAs by @odh-release-bot[bot] in #3804
- fix(e2e): delete KServe webhook configs before namespace teardown by @matzew in #3809
- feat: migrate the remaining checkPreConditions actions to the WithPreCondition framework by @mlassak in #3707
- feat(monitoring): add collector-to-MLflow ClusterRole and ClusterRoleBinding for trace ingestion by @jharan1 in #3719
- RHAIENG-5327: deprecate RStudio resources during operator upgrade by @ysok in #3678
- RHOAIENG-61169: fix DSC errors when modelsAsService or wva fields are first added and then omitted from DSC by @RomanFilip in #3608
- fix(monitoring): remove unused RELATED_IMAGE_CLI_IMAGE by @heorhiig in #3801
- rely only on operator prom rules by @StevenTobin in #3810
- feat: forward platform-type to module operator deployments by @tsisodia10 in #3814
- chore: Add imageParamMap for mlserver-cuda-image with RELATED_IMAGE_ODH_MLSERVER_CUDA_IMAGE by @Snomaan6846 in #3798
- Add exception for odh-llm-d-kv-cache related image by @grdryn in #3820
- feat: add XKS platform overlay mapping for AIGateway module by @tsisodia10 in #3825
- chore: deactivate ISVC HardwareProfile annotation migration in upgrade path by @israel-hdez in #3796
- chore: update manifest commit SHAs by @odh-release-bot[bot] in #3824
- feat: nest ModelsAsAService under AIGateway module by @somya-bhatnagar in #3723
- RHOAIENG-72180 | Early-gate: add early-gate CI pipelines by @RomanFilip in #3772
- Update default managementState for OGX by @VaishnaviHire in #3826
- fix(validation): exclude SBOM metadata env vars and add rhoai_exceptions mechanism by @ckhordiasma in #3827
- [RHAISTRAT-1064] fix: kserve finalizer deadlock llmisvcconfig by @davidebianchi in #3841
- [RHAISTRAT-1477] chore(RHOAIENG-66142): update kueueOcpOperatorChannel to stable-v1.4 by @carlkyrillos in #3843
- feat: extract pkg/mcptools from cmd/mcp-server by @harsh1947-jain in #3811
- [RHOAIENG-77786] fix(trustyai): restore self-healing when InferenceServices CRD appears by @ruivieira in #3822
- [RHAISTRAT-1064] Move MLflow to the module handler path by @HumairAK in #3654
- [RHAISTRAT-1377] fix: skip AIGateway CR creation for xKS Platform CR path by @tsisodia10 in #3834
- [RHAISTRAT-1064] allow specifying submodules, and mirror status into DSC by @StevenTobin in #3838
- [RHAISTRAT-1716] feat: inject cluster TLS profile into kube-rbac-proxy sidecars and fix transient error handling by @ugiordan in #3717
- fix(RHOAIENG-77786): handle CRD update events in TrustyAI watch to fix Established race by @davidebianchi in #3848
- [RHAISTRAT-1064] Return all nodes for cleanup & always inject env vars by @StevenTobin in #3831
- [RHAISTRAT-1064] feat(kserve): add module handler for kserve-module-operator by @Jooho in #3704
- [RHAISTRAT-1064] chore: remove env variable for MaaS by @zdtsw in #3830
- fix(modelcontroller): remove deprecated caikit-nlp image reference by @CiaraM100104 in #3803
- replace valueFrom when injecting env vars by @StevenTobin in #3819
- test(monitoring): add unit test for addTLSData by @ugiordan in #3850
- Add odh-ogx-module-operator to operator manifests by @dchourasia in #3851
- [RHAISTRAT-1064] feat(workbenches): Integrate workbenches as a module operator by @harshad16 in #3817
- fix: ai-gateway-operator sha by @davidebianchi in #3860
- [RHAISTRAT-1064] feat(dashboard): migrate dashboard to module-based architecture by @lucferbux in #3733
- chore: update manifest commit SHAs by @odh-release-bot[bot] in #3829
- [RHAISTRAT-1314] feat: configurable image for usage-logs-tenancy-proxy by @ahadas in #3864
- [RHAISTRAT-1314] feat(auth): extend admin RBAC role for app logs access by @ahadas in #3859
- chore: remove unused upgrade function by @davidebianchi in #3855
- chore: update manifest commit SHAs by @odh-release-bot[bot] in #3865
- fix: dashboard module operator by @davidebianchi in #3867
- [RHAISTRAT-1064] feat(modules): migrate FeastOperator from in-tree component to module operator by @jyejare in #3694
- feat: forward cert-manager shared configuration to modules by @davidebianchi in #3866
- removed odh-dashboard and odh-maas-api from manifests-config.yaml by @KorneAlex in #3873
- [RHOAIENG-78080] feat(dashboard): enable Standalone deployment mode by @lucferbux in #3869
- Drop configs for wva, kserve and model-controller by @riprasad in #3878
- fix: related image check by @davidebianchi in #3885
New Contributors
- @mchamsed-rh made their first contribution in #3672
- @m-rafeeq made their first contribution in #3669
- @kramaranya made their first contribution in #3623
- @mwaykole made their first contribution in #3622
- @Gkrumbach07 made their first contribution in #3684
- @matzew made their first contribution in #3744
- @kryanbeane made their first contribution in #3742
- @danpierce1 made their first contribution in #3701
- @jharan1 made their first contribution in #3719
- @ysok made their first contribution in #3678
- @heorhiig made their first contribution in #3801
- @tsisodia10 made their first contribution in #3814
- @somya-bhatnagar made their first contribution in #3723
- @ckhordiasma made their first contribution in #3827
- @jyejare made their first contribution in #3694
- @KorneAlex made their first contribution in #3873
Full Changelog: v3.5.0-ea.2...3.5.0