Skip to content

[RFC] [ci] move management of CI images into this repo? #7011

@jameslamb

Description

@jameslamb

Description

Recently, we faced rate-limiting issues from DockerHub on Azure DevOps jobs (#6866 (review)).

@shiyu1994 worked around those by manually pushing the relevant images to Azure Container Registry repos: #6866 (comment)

No one else was given access to those repos and no plan was communicated for how we might get updates from https://github.com/guolinke/lightgbm-ci-docker into those repos.

This inspired an idea.... what if we build those CI images from right here in the LightGBM repo and publish them to the GitHub Container Registry (ghcr.io)?

Opening this to discuss that.

Benefits of this work

Acceptance criteria

Approach

I built a proof-of-concept in another repo: jameslamb/lightgbm-dask-testing#75

I'm proposing the following:

  • Dockerfiles and other context for the images are checked into source control here in LightGBM
  • GitHub Actions workflow(s) for publishing those images, with the following characteristics:
    • only triggered by workflow_dispatch (a maintainer clicking a button in the GItHub UI)
    • can be triggered from any branch
  • images are only for CI... not proposing (for now) using this mechanism to publish user-facing images that include LightGBM (ref: WIP: [docker] [ci] fix dockerfiles, test docker builds in CI #6638 (comment))

Notes

If folks are supportive of trying this, I'll open a draft PR showing what I'm thinking of. I think this could really help here, and make it easier to do updates like #5596.

cc @StrikerRUS @jmoralez @guolinke @shiyu1994 @borchero

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions