Simultaneous GitLab CI/CD pipeline and external pipeline
Problem to solve
If a user has an external pipeline, say a Jenkins pipeline, and a GitLab CI/CD pipeline, say running Security testing, whichever pipeline finishes last sets the commit status. We should support having two (or more) simultaneous pipelines, with the commit status being the logical AND of the various pipelines.
Intended users
- Rachel (Release Manager)
- Delaney (Development Team Lead)
- Sasha (Software Developer)
- Devon (DevOps Engineer)
Further details
This could be solved via #22187 (closed), but could be solved in other ways as well. I swear there was an issue for this yeas ago, about treating pipelines with different inputs or different structure and context as distinct and logically ANDing the results, but I can't find it.
Proposal
Set commit status to the logical AND of all pipelines.
Care will have to be taken to do this right. If a pipeline fails and then is re-run, only the latest one should count. Not sure what we should do if there are scheduled pipelines or manual pipeline runs with different status results.