Skip to content

Commit 8493cf1

Browse files
authored
Merge pull request #184 from argos-ci/merge-queue
merge queue
2 parents 0d3d4cf + 76821b6 commit 8493cf1

File tree

1 file changed

+51
-17
lines changed

1 file changed

+51
-17
lines changed

docs/learn/integrations/github.mdx

Lines changed: 51 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -7,27 +7,34 @@ description: Connect Argos to GitHub for automated visual testing on pull reques
77

88
# GitHub Integration
99

10-
Seamlessly integrate Argos with GitHub for automated visual testing directly within your workflow. Connect Argos to your repositories and receive instant feedback on your pull requests, making it easier to maintain visual consistency across your project.
10+
Connect Argos to GitHub for automated visual testing on every pull request and merge queue run. Argos reads commit history to pick the right baseline build and reports results back to GitHub so you can ship with confidence.
11+
12+
## What Argos does on GitHub
13+
14+
- Add commit and pull request checks, so Argos results can block merges when required in GitHub.
15+
- Post [pull request comments](/pull-request-comments) with the latest build results and links back to Argos.
16+
- Analyze commit history to find the right merge base and select the correct [baseline build](/baseline-build) for visual comparisons.
1117

1218
## Why Argos needs repository access
1319

1420
Argos analyzes commit history to choose the right [baseline build](/baseline-build) and posts commit statuses or pull request comments. Granting repository access lets Argos read commits, find merge bases, and report build results back to GitHub.
1521

16-
## GitHub Connect
22+
## Choose your access level
1723

18-
Use GitHub Connect to log in to Argos with your GitHub account. This integration allows Argos to access your repositories and streamline the setup process.
24+
- **Full access (recommended)** — Required for Merge Queue and baseline selection based on commit history.
25+
- **Limited access (no content)** — Works for basic checks without reading repository content; Merge Queue is not supported. See [GitHub Integration without Content Permission](#github-integration-without-content-permission).
1926

20-
## Argos' GitHub App
27+
Use GitHub Connect to log in with your GitHub account, then install the Argos GitHub App to link repositories.
2128

22-
Argos provides a dedicated GitHub App that connects directly to your repositories, enabling real-time visual testing feedback on pull requests.
29+
## Install the Argos GitHub App
2330

24-
### Install the Argos GitHub App
31+
Argos provides a dedicated GitHub App that connects directly to your repositories, enabling real-time visual testing feedback on pull requests.
2532

2633
1. Visit the [Argos app page on GitHub](https://github.com/apps/argos-ci)
2734
2. Click on "Configure" and select the organization where you want to install Argos
2835
3. Follow the prompts to complete the installation
2936

30-
### Import a GitHub Repository to Argos
37+
### Import a GitHub repository to Argos
3138

3239
1. Sign in to Argos and click on "Create a new project"
3340
2. Choose GitHub as your provider, then click "Import your repository"
@@ -51,30 +58,57 @@ Argos needs the following permissions to operate:
5158

5259
We take your security and privacy seriously. If you have any concerns or questions, please [contact us](https://argos-ci.com/contact).
5360

61+
## GitHub Merge Queue support
62+
63+
Argos supports GitHub Merge Queue when you use the full-access Argos GitHub App. Merge Queue relies on Argos reading commit history to compute merge bases and publish required checks, so the restricted “GitHub without content access” integration does not support it. When Argos runs inside the merge queue, it compares your queued change against the previously approved commit on the target branch to ensure only clean visual changes are merged.
64+
65+
### GitHub Actions setup for Merge Queue
66+
67+
Listen to both `pull_request` and `merge_group` events so Argos uploads run for PR reviews and for queued merges:
68+
69+
```yaml title=".github/workflows/ci.yml"
70+
name: Visual tests
71+
72+
on:
73+
pull_request:
74+
merge_group:
75+
76+
jobs:
77+
argos:
78+
runs-on: ubuntu-latest
79+
steps:
80+
- uses: actions/checkout@v6
81+
- uses: actions/setup-node@v6
82+
- run: npm ci
83+
- run: npm run test:e2e # Run E2E tests with Argos SDK integration
84+
env:
85+
ARGOS_TOKEN: ${{ secrets.ARGOS_TOKEN }} # Argos token stored in GitHub Secrets
86+
```
87+
5488
## GitHub Integration without Content Permission
5589
56-
If you prefer to use Argos without granting full content access to your repositories, you can now integrate via a more restricted setup.
90+
If you prefer to use Argos without granting full content access to your repositories, you can integrate via a more restricted setup. This mode does not support Merge Queue because Argos cannot read commit history.
5791
5892
### Setting Up Argos with Limited GitHub Access
5993
60-
1. From the dashboard, select your team from the scope selector
61-
2. Select the **Settings** tab and go to the **Integrations** section
62-
3. Scroll to "GitHub without content access"
63-
4. Click **Install GitHub App**
94+
1. From the dashboard, select your team from the scope selector.
95+
2. Select the **Settings** tab and go to the **Integrations** section.
96+
3. Scroll to "GitHub without content access".
97+
4. Click **Install GitHub App**.
6498
6599
![GitHub without content access settings in Argos](./github/github-light-settings.jpg)
66100
67-
3. On the next screen you are redirected to GitHub, choose the specific repositories where you want to install the Argos app
101+
5. On GitHub, choose the specific repositories where you want to install the Argos app.
68102
69103
![Argos GitHub app without content access](./github/github-light-app.jpg)
70104
71-
4. Select **Projects** tab
72-
5. Click **Create a new project** at the top right
73-
6. Select **Continue with GitHub (no-content access)**
105+
6. Back in Argos, go to the **Projects** tab.
106+
7. Click **Create a new project** at the top right.
107+
8. Select **Continue with GitHub (no-content access)**.
74108
75109
![Argos GitHub app without content access](./github/create-project.jpg)
76110
77-
7. Choose the repository you want to connect
111+
9. Choose the repository you want to connect.
78112
79113
## GitHub Enterprise
80114

0 commit comments

Comments
 (0)