HADOOP-19893: S3A CI tests for fork PRs#8530
Open
ajfabbri wants to merge 6 commits into
Open
Conversation
|
🎊 +1 overall
This message was automatically generated. |
There was a problem hiding this comment.
Pull request overview
Adds support for running S3A/Cloud-AWS CI for forked PRs (where secrets are not available) by introducing a maintainer-invoked workflow_dispatch path, plus fork-PR notifications and correct status reporting to the fork’s head SHA.
Changes:
- Extend the reusable S3A workflow template to allow checking out an arbitrary repository/ref and require the LocalStack auth secret.
- Add a manual (
workflow_dispatch) Cloud-AWS workflow path that resolves a fork PR’s head SHA/repo and runs the reusable workflow against that commit. - Add a fork-PR
pull_request_targetnotifier workflow and update the report workflow to publish commit status against the correct SHA for manual runs.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 7 comments.
| File | Description |
|---|---|
| .github/workflows/tmpl_cloud_aws.yml | Adds checkout repo/ref inputs and required secret wiring for manual fork runs. |
| .github/workflows/cloud_aws.yml | Adds workflow_dispatch support for maintainers to run Cloud-AWS against fork PRs. |
| .github/workflows/report_cloud_aws.yml | Resolves the correct target SHA for status posting on manual workflow runs. |
| .github/workflows/notify_cloud_aws.yml | Adds a sticky PR comment + check run instructing maintainers how to trigger fork CI. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
🎊 +1 overall
This message was automatically generated. |
- Add workflow_dispatch inputs in cloud_aws.yml to run CI by fork PR number - Resolve PR head repo/SHA via API and run tests against that exact fork commit. - Keep automatic cloud_aws CI runs only for same-repo pull_request events. - tmpl_cloud_aws.yml adds checkout_repository/checkout_ref inputs. - Pass LOCALSTACK_CI_KEY explicitly to reusable workflow (required). - Post S3A Test Summary commit status for manual runs when CI wasn't skipped. - Stash PR number and branch repo details for reporting workflow. - Tweak report_cloud_aws.yml to consume PR details, using stashed target commit for report.
ca978cd to
b1c7840
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description of PR
The approach we are following in HADOOP-19857–-running actions for forked-repo
PRs on the forks–-doesn't work here, because fork repos don't have the
LOCALSTACK_CI_KEY secret installed. This PR:
notify_cloud_aws.ymlworkflow that leaves a sticky commenton fork PRs that affect hadoop-aws (s3a) code, explaining how to manually trigger
S3A tests.
How was this patch tested?
I set up two fork repositories so I could test both the non-fork PR case, and the fork PR case:
For code changes:
LICENSE,LICENSE-binary,NOTICE-binaryfiles?AI Tooling
If an AI tool was used:
where is the name of the AI tool used.
https://www.apache.org/legal/generative-tooling.html