• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

kubeflow / trainer / 34491938448
70%

Build:
DEFAULT BRANCH: master
Ran 10 Sep 2026 02:56PM UTC
Jobs 1
Files 44
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

10 Sep 2026 02:52PM UTC coverage: 69.647% (+0.1%) from 69.508%
34491938448

push

github

web-flow
chore: update trainer to k8s 1.37 (#4005)

* update trainer to k8s 1.37

Signed-off-by: Kevin Hannon <kehannon@redhat.com>

* fix(crd): restore schema bounds controller-gen drops from generated CRDs

Kubernetes 1.37 added batch/v1.JobSpec.Scheduling, which TrainingRuntime and
ClusterTrainingRuntime inherit through the embedded JobSet spec. Its
ResourceClaims field declares both +k8s:immutable and +k8s:maxItems=4, but
controller-gen only implements the former, so the generated CRDs ended up with a
`self == oldSelf` CEL rule on an unbounded list nested under the unbounded
replicatedJobs list. The API server estimates CEL cost from the declared bounds
and rejected both CRDs outright:

  x-kubernetes-validations estimated rule cost total for entire OpenAPIv3 schema
  exceeds budget by factor of more than 100x

which failed `make test-integration` during envtest CRD installation, and would
equally have failed a real 1.37 install.

Restore the dropped bound after controller-gen runs, and validate the result
with the API server's own CRD validation so a future upstream field that repeats
this pattern fails at generation time rather than at install time. This keeps
the immutability rule intact and changes no Trainer API: the schema now accepts
exactly the claim lists the Job API accepts, where before it advertised an
unbounded list.

The generated diff is a single `maxItems: 4` line per affected CRD, since the
manifest is re-encoded with the same encoder controller-gen uses.

Reported upstream as kubernetes-sigs/controller-tools#1473; the bounds table can
go away once controller-gen emits +k8s:maxItems itself.

Signed-off-by: Kevin Hannon <kehannon@redhat.com>

---------

Signed-off-by: Kevin Hannon <kehannon@redhat.com>

66 of 87 new or added lines in 1 file covered. (75.86%)

2765 of 3970 relevant lines covered (69.65%)

0.81 hits per line

Uncovered Changes

Lines Coverage ∆ File
21
75.86
pkg/util/crdschema/crdschema.go
Jobs
ID Job ID Ran Files Coverage
1 34491938448.1 10 Sep 2026 02:56PM UTC 44
69.65
GitHub Action Run
Source Files on build 34491938448
  • Tree
  • List 44
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 8ca43ecb on github
  • Prev Build on master (#34433405705)
  • Next Build on master (#34703960277)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc