GitHub Action Reference

Every input and output of the Mergifyio/gha-mergify-ci GitHub Action, by action.


Step uses: Mergifyio/gha-mergify-ci@v25

One action, several jobs: the action input picks what a step does, and every input and output below lists the actions that use it. This page is generated from the action's action.yml at v25.

For workflows that put it to work, see the GitHub Actions integration, CI Insights on GitHub Actions and Merge Queue Scopes.

Actions

action: junit-process

process JUnit XML files with Mergify CI Insights (Upload and Quarantine)

Inputs: action token mergify_api_url job_name report_path test_step_outcome mergify_cli_version

Outputs: test_results_upload

action: scopes

detect and upload pull requests scopes to Mergify Merge Queue

Inputs: action token mergify_api_url all_scopes mergify_config_path base head mergify_cli_version

Outputs: scopes base head

action: scopes-git-refs

return the base/head git references of the pull request in Merge Queue context

Inputs: action mergify_config_path mergify_cli_version

Outputs: base head

action: scopes-upload

upload pull requests scopes to Mergify Merge Queue

Inputs: action token mergify_api_url scopes all_scopes mergify_config_path mergify_cli_version

Outputs: base head

action: wait-jobs

wait for specified jobs to complete before proceeding

Inputs: action jobs mergify_cli_version

Inputs

action

The Mergify CI action:

  • junit-process: process JUnit XML files with Mergify CI Insights (Upload and Quarantine)
  • scopes: detect and upload pull requests scopes to Mergify Merge Queue
  • scopes-git-refs: return the base/head git references of the pull request in Merge Queue context
  • scopes-upload: upload pull requests scopes to Mergify Merge Queue
  • wait-jobs: wait for specified jobs to complete before proceeding

Default: junit-process

Used by: junit-process scopes scopes-git-refs scopes-upload wait-jobs

token

Mergify CI token

Used by: junit-process scopes scopes-upload

mergify_api_url

URL of the Mergify API

Default: https://api.mergify.com

Used by: junit-process scopes scopes-upload

job_name

Override the job name, must be used in case of matrix job to avoid having the same name for all jobs

Used by: junit-process

report_path

Path of the files to upload

Used by: junit-process

scopes

Comma separated list of scopes to upload

Used by: scopes-upload

all_scopes

Declare that the pull request impacts all scopes (actions: scopes, scopes-upload). The Merge Queue treats such a pull request as a barrier: it conflicts with every scope, so it is never batched or merged in parallel with other pull requests. Typical use: a build-system or CI configuration change where enumerating every impacted scope is brittle.

Default: false

Used by: scopes scopes-upload

mergify_config_path

Path to the Mergify configuration file

Used by: scopes scopes-git-refs scopes-upload

base

Base git reference for scope detection (action: scopes). Overrides the automatic push/pull-request detection. Leave unset to auto-detect.

Used by: scopes

head

Head git reference for scope detection (action: scopes). Defaults to HEAD. Leave unset to auto-detect.

Used by: scopes

test_step_outcome

Outcome of the test runner step (e.g. steps.<id>.outcome). Pass this to detect silent failures where the test runner crashed but the JUnit report appears clean. Values: 'success', 'failure', 'cancelled', 'skipped', or omit entirely. 'skipped' is treated the same as omitting this input.

Used by: junit-process

jobs

List of jobs to wait for completion

Used by: wait-jobs

mergify_cli_version

Version of mergify-cli to install. Use latest to install the latest released version without pinning. Leave unset to use the version pinned by Mergifyio/setup-cli.

Used by: junit-process scopes scopes-git-refs scopes-upload wait-jobs

Outputs

test_results_upload

Outcome of the JUnit test-results upload to Mergify Test Insights (action: junit-process): 'success', 'rejected' (the API refused the upload, e.g. a token without CI Insights access — no test data was recorded) or 'failed' (transient upload error). Empty when the junit-process step did not run or the installed mergify-cli predates this output.

Set by: junit-process

scopes

stringified JSON mapping with names of all scopes matching any of the changed files

Set by: scopes

base

The Merge Queue-aware base SHA of the pull request

Set by: scopes scopes-git-refs scopes-upload

head

The Merge Queue-aware head SHA of the pull request

Set by: scopes scopes-git-refs scopes-upload

Was this page helpful?