Skip to content

wheels-publish: reduce CI time #505

@jameslamb

Description

@jameslamb

Description

The wheels-publish workflow is responsible for a pretty narrow purpose... downloading wheel artifacts built in CI and publishing them to package repositories (like https://pypi.anaconda.org/rapidsai-wheels-nightly/simple/).

It really only needs a Python interpreter and a couple tools like twine, the anaconda CLI, and the gh CLI.

Today, it uses the rapidsai/ci-wheel container images (build from rapidsai/ci-imgs), which are around 4.5 GB compressed (https://hub.docker.com/r/rapidsai/ci-wheel/tags).

The time to run that workflow is dominated by container-image pulling. For example, look at a recent wheels-publish-cudf job (build link):

Image

This issue tracks the work of designing and implementing changes to speed that up. Maybe some mix of:

  • using a slimmer container image (or just ubuntu-latest / ubuntu-slim runners without a container)
  • removing telemetry
  • using a shallow git checkout

Benefits of this work

Acceptance Criteria

  • wheels-publish workflows are faster than they were on February 17, 2026

Ideas

Just dumping some ideas here, this is not an implementation plan:

  • use ubuntu-latest / ubuntu-slim GitHub-hosted runners
  • use a smaller container image (like python:latest or python:3.13-slim)
  • create a new rapidsai/ci-wheel-publishing or similar image
    • publishing a new image does bring new legal / compliance requirements though, this might be a lot of effort
  • fiddle with the rapidsai/ci-wheel image
    • different compression?
    • fewer layers?
    • removing unused things?
  • use shallow git checkouts
  • remove telemetry (this workflow doesn't benefit much from it)

Notes

N/A

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions