Skip to content

Unify CI configure workflow#12170

Merged
RAMitchell merged 1 commit into
dmlc:masterfrom
RAMitchell:codex/unify-ci-configure
Apr 18, 2026
Merged

Unify CI configure workflow#12170
RAMitchell merged 1 commit into
dmlc:masterfrom
RAMitchell:codex/unify-ci-configure

Conversation

@RAMitchell
Copy link
Copy Markdown
Member

Summary

  • Add a reusable ci_configure.yml workflow for ECR login and CI image tag resolution.
  • Replace the duplicated ci-configure jobs in main.yml, jvm_tests.yml, and misc.yml with calls to the reusable workflow.
  • Preserve the existing job id and output names so downstream needs.ci-configure.outputs.* references do not change.

Rationale

The configure job still needs to run before containerized jobs because GitHub Actions resolves container.image and container.credentials before job steps execute. This change keeps that staging model, but removes the copied implementation from each workflow.

python_wheels_variants.yml still has a separate ECR login job because it uses a different ecr-login pattern and image tag flow.

Testing

  • git diff --check
  • pre-commit run --files .github/workflows/ci_configure.yml .github/workflows/main.yml .github/workflows/jvm_tests.yml .github/workflows/misc.yml
  • Parsed modified workflow YAML with PyYAML
  • Checked that all callers still reference the reusable workflow outputs via needs.ci-configure.outputs.*

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR centralizes the repeated “ci-configure” logic (ECR login + CI image tag selection) into a reusable GitHub Actions workflow and updates existing CI workflows to call it, keeping downstream needs.ci-configure.outputs.* references stable.

Changes:

  • Added reusable workflow .github/workflows/ci_configure.yml exposing the same outputs as the prior duplicated jobs.
  • Updated main.yml, jvm_tests.yml, and misc.yml to replace inline ci-configure job steps with a uses: call to the reusable workflow.
  • Parameterized the runner tag via tag-prefix to preserve per-workflow runner tagging.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

File Description
.github/workflows/ci_configure.yml Introduces reusable workflow_call implementation for ECR login + image tag resolution and exposes outputs.
.github/workflows/main.yml Replaces duplicated ci-configure job with a call to the reusable workflow (tag-prefix main).
.github/workflows/jvm_tests.yml Replaces duplicated ci-configure job with a call to the reusable workflow (tag-prefix jvm-tests).
.github/workflows/misc.yml Replaces duplicated ci-configure job with a call to the reusable workflow (tag-prefix misc).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/ci_configure.yml
@RAMitchell RAMitchell marked this pull request as ready for review April 17, 2026 10:28
@RAMitchell RAMitchell requested a review from hcho3 April 17, 2026 10:28
@RAMitchell RAMitchell merged commit 389f8d8 into dmlc:master Apr 18, 2026
85 of 86 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants