Community
Participate
Working Groups
A build instance represents a finished build, with includes data like console log and passed tests. A build plan can have zero to infinite build instances.
Assign to you Markus. It would be great if you proposed a design for this before getting too deep into the implementation. I think an EMF model would work well for building a generic build editor.
Well, I don't really see much to design. I would just start with a little enhancement the the EMF model with a few basic attributes, so that I can start to create an nearly empty build details editor.
Great, sounds like we are on the same page.
How is this coming along? I would like to change some of the abstractions in the existing model but don't want to cause any conflicts with your changes.
Created attachment 173256 [details] Adds build instaces to the EMF model So, here are the model enhancement. Not so many attributes available from Hudson, at least when your use the API from the root. There is a more fine-granular API with some more attributes, but I not sure how there two would play together and if this API is really needed.
Created attachment 173257 [details] mylyn/context/zip
Looking at http://mylyn.eclipse.org/hudson/job/mylyn--heartbeat/45/api/xml and http://mylyn.eclipse.org/hudson/job/mylyn--heartbeat/45/testReport/api/xml I see a ton of detail like artifacts, scm changes, test results, people etc. We definitely want that in the generic model for the build editor. The patch is a good start, but I think we can already model the other artifacts based on the Hudson API as well. Could you propose model classes for these: * Artifact * ChangeSet, Change * Person * TestResult, TestSuite, TestCase I would also suggest to rename IBuildRun to IBuild. It's a bit shorter and builds are the central artifact of this framework similar to what ITask is for the tasks framework. Please feel free to break up this task if that are too many changes for one patch.
Created attachment 173610 [details] build instance model Updated model, didn't include any test stuff. The test report should be parseable by JUnit (Eclipse integeration) -> extra layer even necessary?
Created attachment 173611 [details] mylyn/context/zip
This looks great! Could you recreate the patch and only include the interfaces and the model changes? Then I can go ahead and apply it. We will probably need to iterate over the model for change sets to make it fit better for Git and SVN but this looks like a great start. We can leave the model for tests out for now. At least Bamboo does not directly provide JUnit compatible protocols and it would be nice to support viewing results of other test systems as well (e.g. for hyperlinked stack traces) so we we'll probably end up with a generic model but we can worry about that later.
Created attachment 173722 [details] build instance model Ups, that was actually my intention (only interfaces and model changes)...
Created attachment 173723 [details] mylyn/context/zip
Thanks. I have applied the patch.