Skip to content

remove utils package. move code to dedicated packages#521

Merged
oleg-kushniriov merged 2 commits into
ai-dynamo:mainfrom
oleg-kushniriov:refactor/e2e-remove-utils-pkg
Apr 14, 2026
Merged

remove utils package. move code to dedicated packages#521
oleg-kushniriov merged 2 commits into
ai-dynamo:mainfrom
oleg-kushniriov:refactor/e2e-remove-utils-pkg

Conversation

@oleg-kushniriov

@oleg-kushniriov oleg-kushniriov commented Apr 12, 2026

Copy link
Copy Markdown
Contributor

What type of PR is this?

/kind cleanup

What this PR does / why we need it:

Deletes e2e/utils/ and moves its contents into the domain packages (k8s/, grove/, log/, measurement/).

The domain packages (k8s/, grove/, diagnostics/) already exist but their methods still delegate to utils.* functions, creating two layers for every operation. The utils/ package has no clear domain — it's a dumping ground with node helpers, polling, Grove resource operations,
conversions, and logging all in one place. Removing it eliminates the indirection and puts every function in the package that owns its domain.

What moved where:

  • utils/logger.go → new standalone e2e/log/ package
  • utils/polling.go → k8s/polling.go (already existed, removed duplicate)
  • utils/conversions.go → k8s/conversions.go (already existed, removed duplicate)
  • utils/node.go → k8s/nodes/nodes.go (standalone functions added)
  • utils/grove_config_k8s.go → grove/config/config.go (already existed, removed duplicate)
  • utils/topology.go, utils/kai_topology.go → grove/topology/, grove/podgroup/ (already existed, removed duplicates)
  • utils/grove_resources.go, utils/k8s_client.go, utils/cr_client.go → split across grove/workload/standalone.go, k8s/nodes/, k8s/pods/, k8s/clients/, k8s/unstructured.go
  • utils/measurement/ → e2e/measurement/ (moved out of utils, no code changes)
  • All imports updated across setup/, tests/, diagnostics/, grove/, testctx/
  • e2e/utils/ deleted

Which issue(s) this PR fixes:

Fixes #517

Special notes for your reviewer:

This is a pure move/delete refactor — no behavioral changes. Every function either already had an equivalent in a domain package (and the utils/ duplicate was removed) or was moved as-is to the appropriate domain package. Build and unit tests pass.

Does this PR introduce a API change?

NONE

Additional documentation e.g., enhancement proposals, usage docs, etc.:

@copy-pr-bot

copy-pr-bot Bot commented Apr 12, 2026

Copy link
Copy Markdown

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

Comment thread operator/e2e/grove/workload/standalone.go
@oleg-kushniriov oleg-kushniriov merged commit 8964921 into ai-dynamo:main Apr 14, 2026
14 checks passed
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.

Remove e2e utils package

4 participants