Skip to content

check-nightly-ci: update to new version#591

Merged
jameslamb merged 8 commits intorapidsai:mainfrom
jameslamb:fix/check-nightly-ci
Feb 19, 2026
Merged

check-nightly-ci: update to new version#591
jameslamb merged 8 commits intorapidsai:mainfrom
jameslamb:fix/check-nightly-ci

Conversation

@jameslamb
Copy link
Copy Markdown
Member

@jameslamb jameslamb commented Feb 13, 2026

Contributes to rapidsai/shared-actions#94

Uses the updated check_nightly_success check from rapidsai/shared-actions#96 . Now that CI check will only ever consider the branch a PR targets, which should prevent issues related to release timing in the future.

Notes for Reviewers

I've intentionally cancelled all other CI here, as this only affects check-nightly-ci.

Merging plan:

  1. get this PR approved
  2. get check-nightly-success: limit to 1 branch, other improvements shared-actions#96 approved and merge it
  3. update branch reference to @main here
  4. immediately admin-merge this

@copy-pr-bot
Copy link
Copy Markdown

copy-pr-bot Bot commented Feb 13, 2026

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@jameslamb jameslamb added improvement Improves an existing functionality non-breaking Introduces a non-breaking change labels Feb 13, 2026
@jameslamb

This comment was marked as outdated.

@jameslamb
Copy link
Copy Markdown
Member Author

/ok to test

@jameslamb
Copy link
Copy Markdown
Member Author

I made some code changes on rapidsai/shared-actions#96 since #591 (comment), so testing this again.

This is working!!! 🎉

Inputs that got passed:

  with:
    repo: rapidsai/ucxx
    target-branch: main
    workflow-id: test.yaml
    max-days-without-success: 7

And output:

Found 6 successful runs of workflow 'test.yaml' on branch 'main' in the previous 7 days (most recent: '2026-02-17 08:32:56+00:00'). View logs:
 - https://github.com/rapidsai/ucxx/actions/runs/22087954571

(build link)

That's exactly correct. That link points to the correct run, and it's true that there were exactly 6 successful runs of the test.yaml workflow on main here in the last 7 days: https://github.com/rapidsai/ucxx/actions/workflows/test.yaml

@jameslamb
Copy link
Copy Markdown
Member Author

/ok to test

@jameslamb jameslamb added the DO NOT MERGE Hold off on merging; see PR for details label Feb 17, 2026
@jameslamb jameslamb marked this pull request as ready for review February 17, 2026 19:29
@jameslamb jameslamb requested a review from a team as a code owner February 17, 2026 19:29
rapids-bot Bot pushed a commit to rapidsai/shared-actions that referenced this pull request Feb 19, 2026
Contributes to #94 

Today, the `check-nightly-success` check pools together runs from `main` and any branch matching pattern `release/*`. This can lead to undesirable behavior like:

* the check succeeding when it should fail (because of test successes on other branches)
* the check failing when it should succeed (because of test failures on other branches)
  - example: #94 (comment)
  - another one: rapidsai/raft#2951 (comment)

This proposes an overhaul of that action that should fix those and some other issues, while also making it easier to test and maintain.

## Breaking changes

`check-nightly-sucess` now:

* only returns a result based on runs from a single branch
* no longer accepts input `repo_owner`
* expects input `repo` to be in the `{org}/{repo_name}` form
* expects GitHub auth to be passed through `GH_TOKEN` env variable (ignores `RAPIDS_GH_TOKEN`)
* changes all inputs from `snake_case` to `kebob-case`

## Improvements

`check-nightly-sucess`:

* now pushes most filtering into the GitHub API
  - *simplifies the code, reduces the amount of data transfer*
* has a much stricter configuration flow
  - _default values are only set in the top-level dispatch action, all other defaults removed_
  - _reduces the risk of "accidentally fell back to a default" types of bugs_
  - _makes the code stricter and therefore simpler_
* has a much stricter data flow
  - _using data classes to represent JSON data instead of Python dicts makes the code easier to read and allows type-checkers like `mypy` to catch bugs_
  - _I also introduced `mypy` in this PR... it caught several bugs during development_
  - _the code also now discards unnecessary data earlier, reducing memory usage and complexity_
* retries failed requests with backoff
  - _using simple backoff (0.5-second wait between requests) for now to keep the code simple_
  - _this should improve the chance of a retry eventually succeeding, in exchange for it taking slightly longer (now about 3 seconds) for a doomed-to-fail request to result in a program exit_

Other changes:

* introduces `mypy` (it caught a few bugs during my development!)
* bumps all `pre-commit` hooks to their latest versions

## Fixes

`check-nightly-sucess` now:

* pulls ALL matching runs
  - _the check previously did not continue paging over responses, so only ever considered the most recent 30 runs ([30 is the GitHub default per page](https://docs.github.com/en/rest/actions/workflow-runs?apiVersion=2022-11-28#list-workflow-runs-for-a-repository))

## Docs Updates

* adds a README for `check-nightly-success` showing how to configure and test it
* expands some of the input descriptions for the action

## Notes for Reviewers

### How I tested this

Using the testing setup I described in the README in this PR.

In `ucxx`:

* PR targeting `main`: rapidsai/ucxx#591 (comment)
* PR targeting `release/0.48`: rapidsai/ucxx#593 (comment)

Authors:
  - James Lamb (https://github.com/jameslamb)
  - https://github.com/apps/pre-commit-ci

Approvers:
  - Bradley Dice (https://github.com/bdice)

URL: #96
Comment thread .github/workflows/pr.yaml Outdated
@jameslamb jameslamb removed the DO NOT MERGE Hold off on merging; see PR for details label Feb 19, 2026
@jameslamb
Copy link
Copy Markdown
Member Author

admin-merging this to unblock things, now that rapidsai/shared-actions#96 is merged

@jameslamb jameslamb merged commit 843f394 into rapidsai:main Feb 19, 2026
46 of 85 checks passed
@jameslamb jameslamb deleted the fix/check-nightly-ci branch February 19, 2026 16:59
rapids-bot Bot pushed a commit that referenced this pull request Feb 20, 2026
Follow-up to #591 

Removes some testing configuration left behind in that PR.

Authors:
  - James Lamb (https://github.com/jameslamb)

Approvers:
  - Kyle Edwards (https://github.com/KyleFromNVIDIA)

URL: #596
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

improvement Improves an existing functionality non-breaking Introduces a non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant