Add CI job state for waiting for external action
Proposal
Add a new job status, waiting_for_callback
, which will represent a CI job that is currently being executed by a service external to GitLab.
When a job that is external
(CI YAML syntax for external jobs (#415737)) is triggered, instead of transitioning to the pending
state and being picked by a runner, it will enter waiting_for_callback
and remain there until the external service provides a valid result via API (Add API endpoint for setting the status of exte... (#415738)).
Once in the waiting_for_callback
state, an external job does nothing until either:
- A success or failure result is received via API
- The job or pipeline timeout is reached
- The pipeline is cancelled
Definition of done
-
waiting_for_callback
is added to the list of valid CI build and pipeline states. !134605 (merged) -
External jobs model created. !134938 (closed) -
Timeouts are enforced for external jobs. !134938 (closed) - [-] A job in the
waiting_for_callback
state can be viewed from the UI. #417141 -
Import/export supported for external jobs. !135678 (closed)
Edited by Tiger Watson