Problems with material pipeline

28 views
Skip to first unread message

Rafael Figueiró Berto

unread,
Sep 2, 2020, 8:27:42 AM9/2/20
to go-cd
Hello,

For our integration process we desire to have a queue where all developers start the pipeline identifying the branch they want to merge, in a second pipeline (slower than the first one) is where the build and tests will be done and if everything is ok the branch will merge. The problem is that this queue system skip some executions of the first pipeline in the second one. Here an example:

Screenshot from 2020-09-02 09-13-13.png 

test_a is the queue pipeline that runs really fast, test_b is the main pipeline that should run for every execution of test_a. test_b in this example is just a long sleep. The issue is when I run test_a multiple times, in this case test_b skip some executions of test_a.

Here the history of both pipelines:
  • test_a:
Screenshot from 2020-09-02 09-19-18.png

  • test_b:
Screenshot from 2020-09-02 09-20-50.png

As you can see by the Revision in pipeline test_b history, the run 18 of test_a didn't triggered test_b.
I've seen a lot of people suggesting this exactly approach for similar problems, so I don't know what I'm doing wrong in here. Anyone can help me?

Thanks!

Aravind SV

unread,
Sep 5, 2020, 7:46:19 AM9/5/20
to Rafael Figueiró Berto, go-cd

Hello Rafael,

I think you need https://github.com/gocd/gocd/issues/938

There was some talk about working on it, recently. The general reason that multiple commits or pipeline runs are “combined” or ignored, I think, are two-fold:

  1. It could be inefficient / performance intensive (unless it’s a case like yours where you want it).
  2. It’s generally assumed that a new commit includes everything that a previous one has. In your case again, you’re using it in a way that the assumption does not hold, since your developers specify a different branch each time.

Cheers,
Aravind

Reply all
Reply to author
Forward
0 new messages