The section "Each Change Should Propagate through the Pipeline Instantly" in the Continuous Deliver book (pp. 118-119), describes a scenario where:
- The commit build is built for every change set
- The downstream phase, automated acceptance tests, are executed less frequently
So, for a given instance of the pipeline, the acceptance test phase might not get executed if that stage is currently in progress on an earlier instance of the pipeline.
Is it possible to implement #2? Go seems geared towards executing a given pipeline instance in its entirety. Certain stages are long-running (even when using parallelization), so it wouldn't be optimal to run that long-running stage if one is already in progress.