-
-
Notifications
You must be signed in to change notification settings - Fork 430
chore: add cross repo test #1532
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
Merged
Merged
Conversation
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
commit: |
Pull Request Test Coverage Report for Build 16939848928Details
💛 - Coveralls |
o-santi
approved these changes
Aug 13, 2025
This was referenced Aug 13, 2025
mandarini
added a commit
to supabase/auth-js
that referenced
this pull request
Aug 13, 2025
## What kind of change does this PR introduce? CI/CD enhancement - Improves the preview release workflow and cross-repository testing integration. ## What is the current behavior? - Preview releases are created but there's no automated way to test compatibility with downstream packages - No cross-repository testing between `auth-js` and `supabase-js` - Manual testing required to verify changes don't break integration points - Limited feedback loop for developers on cross-package compatibility ## What is the new behavior? - **Automated Cross-Repo Testing**: Preview releases automatically trigger compatibility tests in `supabase-js` - **Smart Triggering**: Only runs on actual source code changes (src/, package files, tsconfig) to avoid unnecessary builds - **Enhanced Control**: Manual workflow dispatch with configurable options for target branch and test triggering - **Better UX**: PR comments show preview package URLs and test status updates - **Secure Integration**: Uses GitHub App authentication for cross-repository workflow triggering ## Key Features ### 🚀 **Cross-Repository Test Integration** - Automatically triggers `supabase-js` external tests when `auth-js` changes are made - Passes preview package URL and metadata to downstream tests - Supports both PR and push-based workflows ### ⚡ **Optimized Triggering** - **Path-based filtering**: Only triggers on meaningful changes (`src/**`, `package.json`, etc.) - **Label-based control**: PRs require `trigger: preview` label for activation - **Manual override**: Workflow dispatch with configurable target branch ### 💬 **Enhanced Feedback** - Automated PR comments with preview package links - Status updates on cross-repo test progress - Clear visibility into the testing pipeline ### 🔒 **Secure Cross-Repo Access** - GitHub App-based authentication for repository access - Scoped permissions to `auth-js` and `supabase-js` repositories only ## Testing This workflow enables: - Early detection of breaking changes between `auth-js` and `supabase-js` - Automated compatibility verification for all preview releases - Faster feedback cycles for developers working on authentication features - Reduced risk of integration issues in production releases ## Additional context This enhancement creates a robust CI/CD pipeline that ensures `auth-js` changes are automatically validated against its primary consumer (`supabase-js`), significantly improving the development workflow and reducing integration risks. More context: supabase/supabase-js#1532
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.
What kind of change does this PR introduce?
Chore/CI enhancement - adds cross-repository testing infrastructure
What is the current behavior?
Currently, when changes are made to Supabase client library dependencies (auth-js, storage-js, realtime-js, postgrest-js, functions-js), there is no automated way to test if those changes break supabase-js before merging.
What is the new behavior?
This PR introduces a new GitHub Actions workflow (
external-test.yml
) that enables cross-repository testing. When a PR is opened in any of the Supabase client library dependencies with a preview release, this workflow can be triggered to:The workflow provides real-time status updates and a comprehensive test report, making it easy to verify compatibility before merging changes to dependencies.
Key features:
Additional context
This workflow enhances the development workflow for the Supabase JavaScript ecosystem by catching breaking changes early. It can be triggered via
workflow_dispatch
with parameters including the triggering repository, PR number, preview package URL, and other relevant metadata.The workflow uses a GitHub App token for cross-repository communication and includes proper error handling and timeouts for all test stages.