Install the GitHub App
1
Start the installation
Go to app.opslane.com/auth/github/login and click Install GitHub App. GitHub will prompt you to sign in if you aren’t already authenticated.
2
Choose an account
Select the GitHub account or organization where you want to install Opslane. If you want to use Opslane across multiple organizations, you can install it separately on each one.
3
Select repositories
Choose which repositories Opslane can access. You have two options:
- All repositories — Opslane monitors every repo in the account, including new ones created in the future.
- Only select repositories — Pick specific repos by name. You can add more later from your GitHub App settings.
4
Authorize and finish
Click Install & Authorize. GitHub redirects you back to Opslane, where your connected repositories appear in the dashboard. Opslane is now active and will pick up the next pull request you open.
Repository access and permissions
Opslane requests only the permissions it needs to do its job. The table below explains what each permission is used for.Opslane does not read your source code to run tests. It uses your running app’s URL — typically a preview deployment — as the test target. Source code access is limited to reading deployment configuration where necessary.
How PR events trigger runs
Opslane subscribes to GitHub’spull_request webhook and starts a browser run whenever any of these events occur:
opened— a new pull request is createdsynchronize— a new commit is pushed to an open pull requestreopened— a previously closed pull request is reopened
- Reads the PR’s head commit and associated deployment URL
- Spins up an ephemeral sandbox with a real browser
- Crawls the app at that URL and runs flow verification
- Posts a PR comment with pass/fail status, screenshots, and a video
- Sets a GitHub commit status check to
successorfailure
Each run is tied to the specific commit at the time the event fired. Pushing a new commit to the same PR starts a fresh run for that commit.
PR comment and status checks
After every run, Opslane posts a comment on the pull request from theopslane-bot account. The comment includes:
- A pass or fail summary for the run
- Screenshots captured during the browser session
- A video of the full run for debugging regressions
- A link to the full run details in the Opslane dashboard
opslane / browser-test. This status appears in the PR checks section and can be used with branch protection rules to block merges when regressions are detected.
Block merges with branch protection
To enforce that regressions cannot be merged, configure GitHub branch protection to require the Opslane status check to pass.1
Open branch protection settings
In your GitHub repository, go to Settings → Branches. Under Branch protection rules, click Add rule or edit an existing rule for your default branch (typically
main or master).2
Enable required status checks
Check Require status checks to pass before merging, then check Require branches to be up to date before merging.
3
Add the Opslane check
In the search box that appears, type
opslane and select opslane / browser-test from the results.4
Save the rule
Click Create or Save changes. From this point on, any PR where Opslane detects a regression will be blocked from merging until the check passes.