Skip to content

ci(e2e): reuse prebuilt CLI and gateway artifacts - #2311

Merged
elezar merged 3 commits into
mainfrom
codex/reuse-prebuilt-cli-e2e
Jul 20, 2026
Merged

ci(e2e): reuse prebuilt CLI and gateway artifacts#2311
elezar merged 3 commits into
mainfrom
codex/reuse-prebuilt-cli-e2e

Conversation

@elezar

@elezarelezar commented Jul 16, 2026

Copy link
Copy Markdown
Member

Summary

Reuse the architecture-matched CLI and gateway binaries already produced by the branch build jobs instead of rebuilding them inside each E2E job. This PR is intended to verify whether removing those duplicate builds reduces E2E execution time.

Related Issue

None; follow-up to the merge queue CI work.

Changes

  • Download and configure the prebuilt CLI for core, GPU, and Kubernetes E2E jobs
  • Download and configure the prebuilt gateway for Docker, Podman, and GPU E2E jobs
  • Preserve local fallback builds when no prebuilt binary is supplied
  • Use deterministic artifact paths and concise architecture-specific artifact names

Testing

  • mise run pre-commit passes in ~/.dotfiles/devenvs/openshell
  • Unit tests included in the pre-commit task pass
  • E2E tests pass in CI via the test:e2e label

E2E Timing Results

The artifact-reuse run completed in 24m32s, compared with 40m20s for the recent successful same-target baseline. Both PRs targeted main@3dee5570. This is a 15m48s (39%) reduction in workflow wall time.

Common laneBaselineArtifact reuseImprovement
Rust Docker8m53s4m24s4m29s
Python7m14s3m09s4m05s
MCP7m12s3m12s4m00s
Podman Ubuntu 24.0418m00s10m40s7m20s
Podman Ubuntu 26.0417m40s10m51s6m49s
Kubernetes sidecar9m34s8m04s1m30s
Kubernetes v1alpha110m23s8m28s1m55s
Kubernetes v1beta19m56s8m27s1m29s

Across the eight comparable lanes, aggregate job runtime fell from 88m52s to 57m15s, a 35.6% reduction. Artifact preparation did not delay fan-out: E2E started after 13m36s, versus 13m43s in the baseline. The CLI build replaced the gateway image as the build-phase critical path, but remained within the existing preparation window.

The baseline PR added an extra rust-vm lane, so whole-workflow topology is not identical. That lane was not the baseline critical path; every common lane improved, making the per-lane comparison the stronger signal.

Checklist

  • Follows Conventional Commits
  • Commits are signed off (DCO)

@elezarelezar added the test:e2e Requires end-to-end coverage label Jul 16, 2026
@elezar
elezar requested review from a team and derekwaynecarr as code ownersJuly 16, 2026 09:31
@github-actions

Copy link
Copy Markdown

Label test:e2e applied for 8ee3bbb. Open the existing run and click Re-run all jobs to execute with the label set. The run will execute the standard E2E suite after building the required gateway and supervisor images once. The matching required CI gate status on this PR will flip green automatically once the run finishes.

@krishicks

krishicks commented Jul 16, 2026

Copy link
Copy Markdown
Collaborator

Similar to #1910. I found value in making the test output understandable because the log doesn't also include the cargo compile output. I closed that one because I thought a much bigger change would be better, but given that will take a while as we're still at the deciding phase, I'm happy to see this.

elezar added 3 commits July 17, 2026 14:56
Signed-off-by: Evan Lezar <elezar@nvidia.com>
Signed-off-by: Evan Lezar <elezar@nvidia.com>
Signed-off-by: Evan Lezar <elezar@nvidia.com>
@elezar
elezarforce-pushed the codex/reuse-prebuilt-cli-e2e branch from 8ee3bbb to ad3c92fCompareJuly 17, 2026 13:53
@elezar
elezar added this pull request to the merge queueJul 20, 2026
Merged via the queue into main with commit 339eae5Jul 20, 2026
51 checks passed
@elezar
elezar deleted the codex/reuse-prebuilt-cli-e2e branch July 20, 2026 16:57
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

test:e2eRequires end-to-end coverage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@elezar@krishicks