Order of scm update! and has_changes?
Reported by Niklas Koponen | February 26th, 2009 @ 04:58 AM
We have encountered a problem that cerberus does not know that the build gets fixed even if it does get fixed.
This is due to the fact that cerberus performs an scm update and then checks the status resulting from the update. The correct way to do it would be to check if there are modifications, and if there are, then perform the update.
Attached is a patch that fixes this issue regarding svn.
I don't have any experience on the other scm implementations so I don't know how to check for modifications without doing the update on those systems.
Comments and changes to this ticket
-
Niklas Koponen February 26th, 2009 @ 07:41 AM
I'm not sure if this issue was the cause for the bad behaviour or the other bug (http://cpjolicoeur.lighthouseapp...>
-
Niklas Koponen February 26th, 2009 @ 07:42 AM
Here is the correct link which was messed up somehow in the previous message.
-
Niklas Koponen February 26th, 2009 @ 08:02 AM
This bug might be completely irrelevant. The patch that is attached in the first issue does not work. The status regexp is wrong. If somebody is intrested in making this change you can ask me for the right regexp.
-
Craig March 10th, 2009 @ 04:38 PM
- Assigned user set to Craig
- State changed from new to accepted
-
Craig March 10th, 2009 @ 04:46 PM
I guess I'm not following exactly what is happening that is wrong?
Cerberus would have run the test suite and entered a failing state and marked that currently checked out revision as failing.
The next time Cerberus runs, it see's that it is in a failed state and does the scm update to pull in any new changes if they have been committed. If there are new changed that were pulled down from the scm update, then the test suite is run again and checked for pass fail.
What issues exactly where you seeing by running the scm update where it originally was? I'm not understanding how you were getting into a use-case where Cerberus didn't recognize the codebase had been fixed?
-
Niklas Koponen March 11th, 2009 @ 05:57 AM
My mistake...
I thought the maven build that we have was doing "clean install" but it was just doing "test". The project is a multimodule project so it needs to be cleaned and installed before testing (actually the test is run in the install phase).
The problem was that I had a typo in the .yml file. I had tabs preceding the task: definition when it should have been spaces.
Now it works as expected. This ticket can be closed.
-
Craig March 11th, 2009 @ 09:20 AM
- State changed from accepted to invalid
Please Sign in or create a free account to add a new ticket.
With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile ยป
Cerberus is a lightweight and easy-to-use Continuous Builder software for Ruby.