Skip to main content

Overview

Connecting Spur to your CI/CD pipeline adds an automated quality gate right before deployment. When a pull request is opened or code is pushed, Spur triggers your test plans and reports results directly in your repository. Failing tests block a merge before anything reaches production. Spur supports both GitHub and GitLab CI/CD integrations.

What You Get

Automated Test Execution

Test plans run automatically on every pull request without manual intervention.

PR/MR Status Checks

Pass/fail results appear directly on pull requests (GitHub) or merge requests (GitLab).

Deployment Quality Gate

Tests run right before deployment, catching issues before they reach production.

Branch Protection

Prevent merging pull requests with failing tests using GitHub branch protection rules.

Setting Up GitHub CI/CD

1

Go to Integrations

Open the Integrations page in your Spur dashboard and connect GitHub.

Open Spur Integrations

Connect Spur with GitHub to get started
2

Open GitHub Settings

Once connected, find GitHub on the integrations page and click Settings.
GitHub integration settings
3

Configure Your Integration

The GitHub Integration Settings page has four sections. Review each one before proceeding.

API Key

Your unique Spur API key is displayed here. This is what authenticates your GitHub repository with Spur. Copy it if you need to reference it manually.

Directory Path

The path where your GitHub Actions workflow files will be stored. The default is .github/workflows — leave this as is unless your repository uses a custom structure.

Enabled Test Plans

Select which test plans should run as part of your CI/CD pipeline. Click + Add Test Plan to include additional ones.

YAML Files

Two workflow files are generated for you here. You will download and add these to your repository in the next step.
Other Integrations: You can also allow other integrations to be enabled for GitHub jobs.
Screenshot2026 02 18at4 07 55PM
GitHub integration configuration
4

Add the YAML Files to Your Repository

Download both YAML files from the settings page and add them to your repository under .github/workflows/.
These two files are what make the integration work. Without them in your repository, Spur will not trigger on pull requests and no quality gate will be in place. Do not skip this step.
  • Report Generation — generates and publishes test reports after each run
  • Test Plan Trigger — tells GitHub when to trigger a Spur test plan run
Adding YAML files to GitHub repository
5

Save Changes

Click Save Changes to finalise your integration. From this point, Spur will run your selected test plans automatically on every pull request.

Setting Up GitLab CI/CD

Spur also supports GitLab CI/CD. The setup process follows the same pattern as GitHub. Connect GitLab from the Integrations page, configure your test plans, and add the generated pipeline files to your repository.
For GitLab-specific setup instructions, reach out to the Spur team for guidance on configuring your .gitlab-ci.yml file.

Triggering via Webhook

As an alternative to the GitHub Actions or GitLab pipeline files, you can trigger Spur test plans directly using a curl request to the Spur webhook. This is useful if you use a CI/CD provider other than GitHub or GitLab, or if you want more control over when tests are triggered. Send a POST request to the Spur webhook endpoint with your API key (found on the GitHub Integration Settings page in Spur):
curl -X POST \
  -H "Content-Type: application/json" \
  -H "SPUR_GITHUB_KEY: <YOUR_API_KEY>" \
  "https://app.spurtest.com/api/webhook"
You can use this webhook in any CI/CD system, including Jenkins, CircleCI, Bitbucket Pipelines, or custom deployment scripts.