Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GH-43547: [R][CI] Add recheck workflow for checking reverse dependencies on GHA #43784

Merged
merged 5 commits into from
Nov 1, 2024

Conversation

amoeba
Copy link
Member

@amoeba amoeba commented Aug 21, 2024

Rationale for this change

See #43547.

What changes are included in this PR?

Adds two new new crossbow tasks for performing reverse dependency checking using https://github.com/r-devel/recheck:

  • r-recheck-most
  • r-recheck-strong

Are these changes tested?

Yes. #44523 (comment).

Are there any user-facing changes?

No.

Fixes #43547.

Copy link

⚠️ GitHub issue #43547 has been automatically assigned in GitHub to PR creator.

@amoeba
Copy link
Member Author

amoeba commented Aug 22, 2024

I just pushed a fix that should make CI green across the board.

Copy link
Member

@assignUser assignUser left a comment

Choose a reason for hiding this comment

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

Via workflow_dispatch instead of crossbow, nice. I am not sure if re-usable workflows are enabled for the apache org and we will likely have an issue with the workflow not being allow listed...

.github/workflows/r_recheck.yml Outdated Show resolved Hide resolved
@github-actions github-actions bot added awaiting committer review Awaiting committer review and removed awaiting review Awaiting review labels Aug 23, 2024
@amoeba
Copy link
Member Author

amoeba commented Aug 27, 2024

Thanks for taking a look @assignUser.

Re:

Via workflow_dispatch instead of crossbow, nice.

Would this make more sense (and still be doable) as a crossbow command? Now that you mention it, it would be a bit more consistent if it were built into crossbow rather than triggered via workflow_dispatch. Seems like it'd be possible and I'm happy to tinker with that.

@assignUser
Copy link
Member

Having it in crossbow would be more 'on-brand' for our CI and we would avoid having to allow list the workflows. You'll just need to convert it into a push triggered workflow and add an entry to tasks.yml to make it available to the bot.

@jonkeane
Copy link
Member

Having it in crossbow would be more 'on-brand' for our CI and we would avoid having to allow list the workflows. You'll just need to convert it into a push triggered workflow and add an entry to tasks.yml to make it available to the bot.

💯 agreed with @assignUser here LMK if I can help point out places to do ^^^ I've done one or two in my day 😝

@amoeba
Copy link
Member Author

amoeba commented Sep 10, 2024

I worked on this a bit tonight and, while I can submit my new crossbow job, I'm stuck at figuring out a reasonable way to get the recheck job to point at an Arrow source checkout. Since the job's workflow runs on the crossbow repo instead of arrow, recheck clones that instead of arrow and the job fails. See recheck.yml. I think the best solution might be to add support to recheck for cloning an arbitrary repo which I think might be generally useful (and therefore accepted).

@assignUser
Copy link
Member

Thanks @amoeba Yeah, adding a repo/ref input for the checkout seems like the way to go.

@amoeba amoeba marked this pull request as draft October 23, 2024 23:20
@amoeba amoeba changed the title GH-43547: [R][CI] Add recheck workflow for checking reverse dependencies on GHA DRAFT: [R][CI] Add recheck workflow for checking reverse dependencies on GHA Oct 23, 2024
@amoeba
Copy link
Member Author

amoeba commented Oct 24, 2024

I've got this working now. Figuring out how all the variables get propagated was fun.

You can see the new crossbow job in action on #44523 (comment). I filed an issue against recheck and sent in a PR that adds the features we need here.

I'll mark these as ready for review again once,

  1. Feature request: Support overriding repo and ref r-devel/recheck#7 is resolved
  2. The workflow this PR points to is pointed at my fork and so it needs to
    a. Point to the official recheck action
    b. Point to a specific commit SHA. Anything else needed @assignUser ?
  3. Consider removing other older revdepcheck stuff in the repo in favor of just having recheck

@assignUser
Copy link
Member

Anything else needed

No that's good, as it's in crossbow we are more flexible.

@amoeba amoeba marked this pull request as ready for review October 31, 2024 01:33
@amoeba
Copy link
Member Author

amoeba commented Oct 31, 2024

Great, thanks @assignUser. The upstream recheck repo merged my changes so I updated this PR to point there and point to a specific git sha. This is ready for a final review if you have a sec.

@amoeba
Copy link
Member Author

amoeba commented Oct 31, 2024

Actually let me update the PR body :)

Edit: Done.

Copy link
Member

@jonkeane jonkeane left a comment

Choose a reason for hiding this comment

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

Thanks for pushing on this! One small change

dev/tasks/tasks.yml Show resolved Hide resolved
@github-actions github-actions bot added awaiting changes Awaiting changes and removed awaiting committer review Awaiting committer review labels Oct 31, 2024
@amoeba amoeba changed the title DRAFT: [R][CI] Add recheck workflow for checking reverse dependencies on GHA GH-43547: [R][CI] Add recheck workflow for checking reverse dependencies on GHA Oct 31, 2024
@github-actions github-actions bot added awaiting change review Awaiting change review awaiting changes Awaiting changes and removed awaiting changes Awaiting changes awaiting change review Awaiting change review labels Oct 31, 2024
@amoeba amoeba requested a review from jonkeane November 1, 2024 14:28
@amoeba
Copy link
Member Author

amoeba commented Nov 1, 2024

I think everything is done and this is ready to be approved and merged. @assignUser or @jonkeane can you take one last look and mark approval if all looks good? Thanks for the reviews!

@jonkeane
Copy link
Member

jonkeane commented Nov 1, 2024

Sorry I should have put this earlier: would you mind adding a comment about the different between most and strong? I went looking in this PR to find it (I know I could RTFM or RTFS of recheck to figure this out), but it would be lovely to have the clear for future-us

@amoeba
Copy link
Member Author

amoeba commented Nov 1, 2024

Don't mind at all, that's a good idea.

@amoeba
Copy link
Member Author

amoeba commented Nov 1, 2024

Added documentation in 5d3e238.

@github-actions github-actions bot added awaiting change review Awaiting change review and removed awaiting changes Awaiting changes labels Nov 1, 2024
Copy link
Member

@jonkeane jonkeane left a comment

Choose a reason for hiding this comment

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

Thanks!

@github-actions github-actions bot added awaiting merge Awaiting merge and removed awaiting change review Awaiting change review labels Nov 1, 2024
@amoeba amoeba merged commit f3abc68 into apache:main Nov 1, 2024
7 checks passed
@amoeba amoeba removed the awaiting merge Awaiting merge label Nov 1, 2024
@amoeba
Copy link
Member Author

amoeba commented Nov 1, 2024

Merged, thanks again for the reviews.

Copy link

After merging your PR, Conbench analyzed the 3 benchmarking runs that have been run so far on merge-commit f3abc68.

There were no benchmark performance regressions. 🎉

The full Conbench report has more details. It also includes information about 1 possible false positive for unstable benchmarks that are known to sometimes produce them.

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.

[R][CI] Add r-devel/recheck workflow for doing reverse dependency checks on CI
3 participants