Understanding multiple pipelines

I’d like to trigger multiple independent builds from the master branch of a single repo. I’m trying to understand if multiple pipelines in 1.0 support this kind of use case. (We’re currently running 0.8.7 in production, and my understanding is this is only supported in the upcoming 1.0.)

My assumption is that if I have multiple pipelines in a .drone.yml, they will all be triggered and run in parallel. But do they fail/succeed independently? I.e., if I look at the UI, will it show two separate “builds” that have a separate success/failure status?

My assumption is that if I have multiple pipelines in a .drone.yml, they will all be triggered and run in parallel.

This is the default behavior, but you can also use depends_on to create a dependency graph. You can read more about pipeline dependencies in the docs.

But do they fail/succeed independently. If I look at the UI, will it show two separate “builds” that have a separate success/failure status?

You will see one build entry in the user interface. The build status represents the overall status of all pipelines. When you click the build, you see multiple pipelines, where each pipeline has its own status. Here is an example of what you would see in the user interface: https://cloud.drone.io/drone/hello-world/18

And this is the corresponding Yaml: https://github.com/drone/hello-world/blob/multi-arch/.drone.yml

Great, thanks! I think multiple pipelines will work for our use case.

In terms of the UI I have some suggestions. This is something that’s been bothering with me 0.8 as well. A very common use case seems to me that you want to know whether the build is currently “green” on the master branch or some other finite set of branches. This style of “activity feed” UI which interleaves builds from all branches (including many feature branches in our case) totally obscures that.

I think we could build our own build dashboard using the drone API. But it seems like the idea of a red/green dashboard is a very common feature in CI systems and some variant of that would be great in Drone.

A very common use case seems to me that you want to know whether the build is currently “green” on the master branch or some other finite set of branches

This is on our 1.1 roadmap. I am told the design and front-end coding is complete, but it is waiting on some backend changes which will not be complete until after 1.0 is released.

I think we could build our own build dashboard using the drone API. But it seems like the idea of a red/green dashboard is a very common feature in CI systems and some variant of that would be great in Drone.

This came up a few years back [1] but the reason we do not have an official dashboard is because it is one of those things that people are very opinionated about, and I feared it would become a source of unbounded requests for changes, tweaks and customization. For this reason we have encouraged the community to create and share dashboards on GitHub, and then fork and modify them to meet their specific needs.

With that being said, if a company offered to hire / contract the Drone team to create a dashboard we may reconsider our position.

[1] https://github.com/drone/drone/pull/128#issuecomment-36070821