Docs Operation reference workflow operations
workflow operations#
1 operation. Generated from assets/operations.json; all areas.
workflow.run#
Run steps in order
Run a short list of operations in order in one call and return each step's result. A step that starts a job is followed until the job ends, or until its app is up (phase ready), unless the step sets wait false; the first step that fails, or whose job does not succeed, stops the rest and answers workflow_step_failed with every step so far under details.steps and the steps not run under details.skipped. A destructive step, and one that publishes (play.commit, an upload with ios.store_ship or apple.store), runs only with its own confirm true; without it nothing runs and the answer is workflow_needs_confirmation. An argument value {"from_step": N, "pointer": "/result/..."} is replaced by that JSON pointer into step N's record, such as /result/artifacts/0/path of a finished build. Unknown operations and wrong arguments are refused before the first step. When timeout runs out the current job keeps running.
Annotations: destructive, not idempotent, open world.
| Argument | Type | Required | Default | Details |
|---|---|---|---|---|
steps | array of object | yes | 1 to 20 items | |
steps[].operation | string | yes | non-empty; An operation's name, such as project.run | |
steps[].arguments | object | {} | The operation's arguments; a value may be {"from_step": N, "pointer": "/result/..."} | |
steps[].wait | boolean | true | Follow a job the step starts until it ends | |
steps[].confirm | boolean | false | Required for a destructive or publishing step: the person agreed to it | |
timeout | integer | 1800 | 10 to 7200; Seconds for the whole workflow |
tomaccoctl call workflow.run '{"steps":[{"operation":"<operation>"}]}'