Skip to main content
Every build setting has exactly one trigger. The trigger decides when the build fires.

Manual

The simplest. A user clicks Build now in the dashboard, or you call the API:
Use this when you want a human (or a script) to decide when a build runs.

Push

The build setting fires every time a push to the tracked branch (or stream) lands.

GitHub

GitHub pushes are delivered via the BuildPixel App’s webhook automatically — no setup in your repo needed. Set:
Push to main → matching build settings fire.

Perforce triggers

Perforce has no native webhook. Wire a Helix change-commit trigger script that calls BuildPixel’s trigger endpoint on every submit:
Register in p4 triggers:

Scheduled

Pick a schedule for the build (e.g. nightly at 2am UTC). At fire time, BuildPixel pulls the latest commit / changelist and builds. Set trigger: "scheduled" and configure the schedule in the dashboard’s build setting view. Useful for nightlies, weekly snapshots, or coordinating with other systems.

Trigger metadata

Every build records its trigger:
  • Manual via dashboard: triggeredBy: "user:<userId>"
  • Manual via API: triggeredBy: "api_token:<tokenId>"
  • Push: triggeredBy: "push:<commit>"
  • Schedule: triggeredBy: "cron"
Visible in the build detail page, useful for “why did this build run?” debugging.