# GitHub Actions

<div align="left"><img src="/files/-MjH7sQqcDycHAdAvBKZ" alt=""></div>

## Set up

### Navigate to the Integration settings view

1. Select an app in the top left corner from the Switcher
2. Navigate to **App Settings** by clicking the gear icon (⚙️) at the top of the Timeline sidebar
3. Click on **Integrations** in the sidebar

### Connect GitHub Actions

* Find the **GitHub Actions** integration module under the **CI/CD** section
* Click the **Connect** button. You’ll be taken through a standard [GitHub app](https://developer.github.com/apps/) OAuth flow. (Or, you’ll be given the option to reuse the GitHub connection you already established when setting up GitHub for version control.)
* GitHub redirects you back to Runway
  * Select the name of your repo from the list of options
  * Select the name of your Release Candidate workflow from the list of options
  * Optionally, enter the name of your release workflow (the one that generates the builds that you end up submitting to the App Store/Play Store) if it’s different than your Release Candidate workflow
  * Optionally, enter the name of the deploy branch on which your release workflows are triggered, if this branch is different than the branch your Release Candidate workflow is triggered on
  * For any of the above workflows, you can optionally enter workflow arguments (a.k.a. "inputs" or "trigger variables") as key-value pairs.
    * If you enter workflow arguments, Runway will pass them in calls to the GitHub API when you trigger builds from within Runway.
    * Runway can also filter the builds it fetches based on workflow arguments. This can be useful if you use the same workflow for multiple different build types and the specific build type that's built is determined by one or more workflow arguments. **Note**: because the GitHub API does not return workflow arguments in its build responses, you must inject your arguments into the workflow [run name](https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#run-name). Use the notation `key=value`, e.g. `pilot=Sully` or `pilot='Sully B.'` (wrap any keys or values that contain spaces in single quotes).

{% hint style="info" %}
Learn more about [builds and branches in Runway](/getting-started/setting-up-your-integrations/builds-and-branches.md).
{% endhint %}

### Triggering builds from Runway

In order to trigger builds from Runway, your GitHub Actions workflow will need to have `workflow_dispatch` configured. See GitHub’s [documentation](https://docs.github.com/en/actions/reference/workflows-and-actions/events-that-trigger-workflows#workflow_dispatch) for more info.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.runway.team/integrations/ci-cd/github-actions.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
