Skip to content

feat: Add integration test trigger workflow#188

Merged
eric-wang-1990 merged 3 commits intomainfrom
feat/integration-test-trigger
Jan 28, 2026
Merged

feat: Add integration test trigger workflow#188
eric-wang-1990 merged 3 commits intomainfrom
feat/integration-test-trigger

Conversation

@eric-wang-1990
Copy link
Collaborator

Summary

This PR adds a workflow to trigger integration tests in the internal databricks/databricks-driver-test repository when PRs are ready to merge.

How It Works

PR Phase (Flexible)

  • Add integration-test label to trigger tests on any PR
  • Tests auto re-run on new commits if label exists
  • No path restrictions - can manually test any PR

Merge Queue Phase (Efficient)

  • Only runs tests if relevant files changed:
    • .github/workflows/trigger-integration-tests.yml
    • ci/scripts/**
    • csharp/src/**
    • csharp/test/**
  • Skips duplicate runs if tests already passed on PR head
  • Auto-approves if no relevant files changed

Benefits

Cost-efficient: Only runs tests when needed
Flexible: Can manually test any PR via label
Smart: Avoids duplicate test runs
Guards merging: Blocks merge if tests fail

Setup Required

This workflow requires GitHub App setup:

  1. Create GitHub App with permissions:

    • checks: write (to report status on PRs)
    • contents: read (to dispatch events)
    • metadata: read
  2. Install app on both repos:

    • adbc-drivers/databricks (this repo)
    • databricks/databricks-driver-test (internal test repo)
  3. Add secrets to both repos:

    • INTEGRATION_TEST_APP_ID
    • INTEGRATION_TEST_PRIVATE_KEY
  4. Internal repo needs matching workflow: databricks/databricks-driver-test/.github/workflows/adbc-integration-tests.yml (already created)

  5. Enable merge queue in branch protection rules (optional but recommended)

Testing

After setup, test by:

  1. Opening a test PR with C# changes
  2. Add integration-test label
  3. Verify tests trigger and report back

🤖 Generated with Claude Code

This workflow triggers integration tests in databricks/databricks-driver-test
when PRs are ready to merge.

Features:
- Label-based trigger: Add 'integration-test' label to run tests on any PR
- Auto re-run on new commits if label exists
- Smart merge queue handling:
  - Only tests if relevant files changed (csharp/src, csharp/test, ci/scripts)
  - Skips duplicate runs if tests already passed on PR head
  - Auto-approves if no relevant files changed
- Uses GitHub App for cross-repo authentication

Relevant paths that trigger tests in merge queue:
- .github/workflows/trigger-integration-tests.yml
- ci/scripts/**
- csharp/src/**
- csharp/test/**

Requires GitHub App setup with secrets:
- INTEGRATION_TEST_APP_ID
- INTEGRATION_TEST_PRIVATE_KEY

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@eric-wang-1990 eric-wang-1990 added the integration-test Trigger integration tests in internal repo label Jan 26, 2026
GitHub-hosted runners are IP-blocked from accessing the internal
databricks/databricks-driver-test repository. Switch all jobs to
use the self-hosted peco-team-runner which has network access.

Changes:
- All 7 jobs now use: runs-on: [self-hosted, Linux, X64, peco-driver]
- This enables access to the internal test repository
- Runner: peco-team-runner (status: online)
@eric-wang-1990 eric-wang-1990 added integration-test Trigger integration tests in internal repo and removed integration-test Trigger integration tests in internal repo labels Jan 27, 2026
@eric-wang-1990
Copy link
Collaborator Author

Trigger workflow with updated App ID

@eric-wang-1990 eric-wang-1990 added integration-test Trigger integration tests in internal repo and removed integration-test Trigger integration tests in internal repo labels Jan 27, 2026
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@github-actions
Copy link

🚀 Integration tests triggered! View workflow run

@eric-wang-1990 eric-wang-1990 added integration-test Trigger integration tests in internal repo and removed integration-test Trigger integration tests in internal repo labels Jan 27, 2026
@github-actions
Copy link

🚀 Integration tests triggered! View workflow run

@eric-wang-1990 eric-wang-1990 added integration-test Trigger integration tests in internal repo and removed integration-test Trigger integration tests in internal repo labels Jan 28, 2026
@github-actions
Copy link

🚀 Integration tests triggered! View workflow run

@eric-wang-1990 eric-wang-1990 merged commit 1beb5c1 into main Jan 28, 2026
29 of 30 checks passed
@eric-wang-1990 eric-wang-1990 deleted the feat/integration-test-trigger branch January 28, 2026 00:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

integration-test Trigger integration tests in internal repo

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants