Updated GitHub action for manual integration tests#4147
Open
dmytrostruk wants to merge 12 commits intomainfrom
Open
Updated GitHub action for manual integration tests#4147dmytrostruk wants to merge 12 commits intomainfrom
dmytrostruk wants to merge 12 commits intomainfrom
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR restructures the GitHub Actions workflow for manual integration testing by creating dedicated integration-only workflows and adding automatic change detection to run only relevant test suites.
Changes:
- Created dedicated
dotnet-integration-tests.ymlandpython-integration-tests.ymlworkflows for integration-only test runs - Updated
integration-tests-manual.ymlto use the new dedicated workflows with automatic dotnet/python change detection - Cleaned up orphaned
workflow_calltriggers andcheckout-refparameters frompython-merge-tests.ymlanddotnet-build-and-test.yml - Fixed permissions in
python-merge-tests.ymlfromcontents: writetocontents: read
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| .github/workflows/integration-tests-manual.yml | Added change detection logic to conditionally run dotnet/python tests; removed fork protection check; updated to call dedicated integration test workflows |
| .github/workflows/python-integration-tests.yml | New dedicated workflow for Python integration tests (called from manual orchestrator) |
| .github/workflows/dotnet-integration-tests.yml | New dedicated workflow for .NET integration tests (called from manual orchestrator) |
| .github/workflows/python-merge-tests.yml | Removed orphaned workflow_call trigger, checkout-ref parameter, and corrected permissions to read-only; fixed spacing in output reference |
| .github/workflows/dotnet-build-and-test.yml | Removed orphaned workflow_call trigger and checkout-ref parameter |
Comments suppressed due to low confidence (1)
.github/workflows/integration-tests-manual.yml:101
- The change detection logic for branches doesn't handle errors from the GitHub API call. If the branch doesn't exist, if there's an API error, or if the comparison cannot be performed, CHANGED_FILES will be empty and grep will fail silently, causing both DOTNET_CHANGES and PYTHON_CHANGES to remain false. Consider adding error handling to detect API failures and either fail the workflow or default to running all tests when the comparison cannot be performed.
if [ -n "$PR_NUMBER" ]; then
CHANGED_FILES=$(gh pr diff "$PR_NUMBER" --repo "$REPO" --name-only)
else
# For branches, compare against main using the GitHub API
CHANGED_FILES=$(gh api "repos/$REPO/compare/main...$BRANCH" --jq '.files[].filename')
fi
TaoChenOSU
approved these changes
Feb 21, 2026
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.
Motivation and Context
Contribution Checklist