BUILD AUTOMATION

Schedules, timeouts and triggers

Visual cron, timezone, webhook triggers and run lifetime.

Examples use remoteops.example.com and fictional systems. Adapt them to your tenant.

Screen reference#

Visual cron schedule and run history
Visual cron schedule and run history

Package identifies the workflow. Schedule edits its five-field cron expression. Status enables or cancels future runs. Next run is the next calculated occurrence and Last run is the latest trigger. Editing a schedule does not prove that its next job will succeed.

For event-based starts and response tracing, see Webhooks.

Cron schedules#

Schedules use the configured orchestrator timezone (REMOTEOPS_TIMEZONE). The supported format is:

text
minute hour day-of-month month day-of-week

Examples:

text
0 4 * * *        Every day at 04:00
0 4 * * 2        Every Tuesday at 04:00
0 * * * *        Every hour
*/15 * * * *     Every 15 minutes
0 9 1,15 * 1-5   At 09:00 on the 1st and 15th, or Monday-Friday

When both day-of-month and day-of-week are restricted, either field may match, following traditional cron behavior.

Package metadata#

yaml
- cron: '0 9 * * 1-5'
- timeout: 600
- task: inline_powershell
  name: scheduled_report
  inputs:
    script: |
      return @{ created = [DateTimeOffset]::UtcNow.ToString('o') }

This is a schedule example, not a guarantee of a particular tenant timezone. Inspect the schedule's next-run display and the configured tenant/orchestrator timezone. Traditional cron treats restricted day-of-month and day-of-week as an OR match.

Timeouts and waiting#

Package jobs normally have a 300-second overall timeout. Supported package metadata can set the package timeout from 1 to 86400 seconds. An explicitly supplied manual Run timeout can override the YAML metadata. Inline PowerShell has its own one-hour bound. Trigger automation buttons have their saved timeout. A wait task accepts a positive duration with ms/s/m/h/d units up to 24h and does not consume the execution timeout budget while waiting; cancellation still interrupts it.

yaml
- task: wait
  name: settle
  inputs:
    duration: '30s'

Wait/control-flow steps are sequential barriers rather than ordinary parallel tasks. See the task reference for exact supported fields.

Other ways to start a package#

Triggers do not all provide the same context. A monitor task requires a monitor-triggered run; a manually started or scheduled package cannot manufacture that context. See Integrations and Monitoring.

Product screenshot