Currents Documentation
Currents.devGitHubChangelog
  • Getting Started
    • What is Currents?
    • Playwright
      • Playwright: Quick Start
      • Troubleshooting Playwright
    • Cypress
      • Your First Cypress Run
      • Integrating with Cypress
        • Compatibility
        • Alternative Cypress Binaries
      • Troubleshooting Cypress
    • Jest
      • Your First Jest Run
      • Detox + Jest
      • Troubleshooting Jest
    • Others
    • CI Setup
      • GitHub Actions
        • Cypress - GitHub Actions
        • Playwright - GitHub Actions
        • Jest - GitHub Actions
        • Node.js - GitHub Actions
        • Commit data for GitHub Actions
        • Custom Docker runners
        • Named Runners
      • GitLab
        • Cypress - GitLab CI/CD
        • Playwright - GitLab CI/CD
        • Custom Docker runners
      • Jenkins
        • Cypress - Jenkins
        • Playwright - Jenkins
      • CircleCI
        • Cypress - CircleCI
        • Playwright - CircleCI
      • Bitbucket
        • Cypress - Bitbucket Pipelines
      • Azure DevOps
        • Cypress - Azure DevOps
        • Playwright - Azure DevOps
      • AWS Code Build
        • Cypress - AWS Code Build
        • Playwright - AWS Code Build
      • NX
        • Playwright - NX
        • Cypress - NX
  • Guides
    • Record Key
    • CI Build ID
    • Reporting
      • Reporting Strategy
      • Reporting in CI
      • Step-Level Reporting
    • CI Optimization
      • Playwright Parallelization
      • Orchestration Setup
      • Fully Parallel Mode
      • Re-run Only Failed Tests
      • Cloud Spot Instances
      • Failing Fast
      • Load Balancing
    • Code Coverage
      • Code Coverage for Playwright
      • Code Coverage for Cypress
    • Currents Actions
      • Setup Currents Actions
      • Using Currents Actions
      • Reference
        • Conditions
        • Actions
    • Playwright Component Testing
    • Playwright Visual Testing
    • Playwright Annotations
    • Playwright Tags
    • MCP Server
  • Dashboard
    • Projects
      • Projects Summary view
      • Project Settings
      • Archive and Unarchive Projects
    • Runs
      • Run Status
      • Run Details
      • Commit Information
      • Tags
      • Run Timeouts
      • Cancelling Runs
      • Deleting Runs
      • Run Progress
    • Tests
      • Spec File Status
      • Test Status
      • Flaky Tests
      • Test History
    • Test Suite Explorer
      • Test Explorer
        • Tests Performance
      • Spec Files Explorer
        • Spec Files Performance
      • Errors Explorer
  • Automated Reports
  • Insights and Analytics
  • Administration
    • Email Domain Based Access
    • SSO SAML2.0
      • SAML2.0 Configuration
      • SCIM User Provisioning
      • IdP-initiated Sessions
      • JumpCloud
        • JumpCloud User provisioning
      • Okta
        • Okta User provisioning
      • Troubleshooting SSO
    • Billing & Usage
  • Billing and Pricing
  • Resources
    • Reporters
      • cypress-cloud
        • Batched Orchestration
        • Migration to Cypress@13
      • @currents/cli
      • @currents/playwright
        • Configuration
        • pwc
        • pwc-p (orchestration)
        • Playwright Fixtures
      • @currents/jest
      • @currents/node-test-reporter
      • @currents/cmd
        • currents api
        • currents upload
        • currents cache
        • currents convert
      • Data Format Reference
    • Integrations
      • GitHub
        • GitHub App
        • GitHub OAuth
      • GitLab
      • Slack
      • Microsoft Teams
      • HTTP Webhooks
      • Bitbucket
    • API
      • Introduction
      • Authentication
      • API Keys
      • Errors
      • Pagination
      • API Resources
        • Instances
        • Runs
        • Projects
        • Spec Files
        • Test Signature
        • Test Results
    • Data Privacy
      • Access to Customer Data
      • Data Retention
      • Cloud Endpoints
    • Support
Powered by GitBook
On this page
  • Activating GitHub Integration
  • Deactivating GitHub Integration
  • GitHub Integration Settings
  • PR Comments
  • Commit Status Checks
  • Troubleshooting GitHub Integration

Was this helpful?

  1. Resources
  2. Integrations
  3. GitHub

GitHub App

Cypress and Playwright GitHub App integration for Currents dashboard

PreviousGitHubNextGitHub OAuth

Last updated 2 months ago

Was this helpful?

Currents integration with GitHub allows posting results of your Playwright and Cypress tests as:

  • and / or

  • Pull Request comment

Activating GitHub Integration

To set up an integration:

  • Open your project settings select a Project > Settings > Integrations

  • Click “Connect” in the “Connect your GitHub repositories” section.

Currents doesn't have access to the source code 🙈

We only user the following permissions:

  • read and write to issues (for posting PR comments)

  • read and write to Pull Requests (for posting PR comments)

  • read and write to commit statuses (for posting commit status updates)

After approving the installation you'll be able to see the list of repositories. To finish the setup select a repository and click “Save” to reveal the integration settings (see below).

Connecting multiple GitHub organizations

You can have multiple GitHub organizations connected to Currents. Click + Add Installation to restart the approval process for a new organization.

After the new approval is complete, you will be able to switch the GitHub organizations and select a new repository.

Deactivating GitHub Integration

To detach a repository from a project, navigate to Project Settings > Integration > GitHub and click “Disconnect Repository”.

To completely remove GitHub integration open Project Settings > Integration > GitHub > Configure and then uninstall “currents-bot” Github App. Uninstalling the app will automatically detach all the projects from their respective repositories.

GitHub Integration Settings

PR Comments

Enabling PR comments will post a summary of your run to the associated GitHub PR. The comment will be posted:

  • after run’s completion - with the details of test results

  • after run’s timeout - with the last known test results

Re-running tests for the same PR will delete the previous comment and post a new one with the most recent result unless Keep Old Results option is enabled

Failed Runs Only

Enabling the "Failed Runs Only" toggle would prevent posting a comment for successful runs - i.e. runs that have 0 failed or skipped tests.

Events Selection

You can customize what event can trigger posting a PR comment:

  • Run Finish - will post a comment when a run completes its execution without cancellation or a timeout

  • Run Cancelled - will post a comment upon the run's cancellation, due to Failing Fastor cancellation via the Dashboard. See more at Cancelling Runs

  • Run Timeout - will post a comment after a run's timeout is detected. Read more about Run Timeouts.

Keep Old Results

When enabled, old results posted as a PR comment will be preserved, i.e. the integration will keep the comments with the results of the previous runs.

Commit Status Checks

Enabling Commit Status checks will trigger updates for the associated commit - the status depends on the outcomes of your run:

  • “Pending” for on-going runs

  • “Failed” for failed or timed out runs

  • “Passed” for successful runs

Commit Status Label

Set the commit status label to distinguish the GitHub status checks one from another. For example, when multiple Current Dashboard projects are connected to the same repository, setting the Commit Status label will conveniently display the status check for each project separately.

Using the same status label for the same repo across different projects can create a conflict - runs from both projects will overwrite the associated status check item.

Run one check per framework

If you are reporting tests from multiple frameworks in the same job, you can enable this option to make sure the commit status check has a prefix with the framework label. This will guarantee that each testing framework gets their own status check.

Make sure to update any repository rules that makes it mandatory for the commit status check to pass, as enabling this option will change the commit status title.

Grouping commit status event into a single comment

Single Notification for all groups (Optional) – enabling will update GitHub commit status once per run event, regardless of the number of groups.

Troubleshooting GitHub Integration

Commit information must be available for GitHub integrations (PR comments, commit status updates). See Commit Information.

  • To expose your git information, please make sure that .git directory is present in your CI environment

  • You can explicitly provide git information via environment variables

branch: COMMIT_INFO_BRANCH
message: COMMIT_INFO_MESSAGE
email: COMMIT_INFO_EMAIL
author: COMMIT_INFO_AUTHOR
sha: COMMIT_INFO_SHA
timestamp: COMMIT_INFO_TIMESTAMP
remote: COMMIT_INFO_REMOTE

I have enabled GitHub integration, but nothing appears in GitHub

Behind the scenes, Currents is using git commit data to identify the PR (issue) to comment on.

The simplified flow is:

  1. Get the list of pull requests associated with the commit using an API call: 'GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls',

  2. Select a PR with HEAD commit matching the reported commit sha

Sometimes the commit SHA reported for a run is different from PR's HEAD commit - our integration would not be able to detect the Pull Requests and won't post a comment and status checks.

Please contact our support via in-app chat and share:

  • Run that is affected

  • Commit sha of the affected run

  • HEAD commit sha of the associated Pull Request

Read more about Commit data for GitHub Actions.

Your browser will be redirected to GitHub. Approve the new installation for or request an approval from your GitHub organization admin.

currents-bot
Commit status checks
Creating a new Currents integrations with GitHub
Selecting repository for GitHub integration with Currents
Switching GitHub Organizations
GitHub integration - PR comment example
GitHub Integration - commit status check example
Single notification for all groups