GitHub Push Trigger
See GitHub Triggers for an overview and Event Triggers for generic options like title, target, and if.
Placing the following snippet at the top of an RWX file will result in all tasks in the file running on every GitHub push.
on:
github:
push:
It's common to pass values from the event as init parameters into tasks.
on:
github:
push:
init:
commit-sha: ${{ event.git.sha }}
base:
image: ubuntu:24.04
config: rwx/base 1.0.2
tasks:
- key: code
call: git/clone 2.0.7
with:
repository: https://github.com/YOUR_ORG/PROJECT.git
ref: ${{ init.commit-sha }}
github-token: ${{ github.token }}
Merge Groups / Merge Queues
The push trigger is also used for merge groups. See GitHub Merge Queues for more details.
Event Fields
The following fields are available on GitHub Push events.
| attribute | description |
|---|---|
event.git.branch | The name of the branch that was pushed (set to an empty string if a branch was not pushed) |
event.git.sha | The SHA of the most recent commit on ref after the push |
event.git.ref | The full git ref that was pushed. Example: refs/heads/main or refs/tags/v3.14.1. |
event.git.tag | The name of the tag that was pushed (set to an empty string if a tag was not pushed) |
event.github.push.head_commit.message | The commit message of the head commit. |
event.github.push.repository.clone_url | The https URL that can be used to clone the repository. |
event.github.push.sender.login | The GitHub username of the user who pushed. |
For the full set of attributes available within event.github.push, see GitHub's documentation on push webhooks