Possible to Export Inspections for custom reports?
Hi,
Am I new to TeamCity, and I am trying to figure out the appropriate place to begin. Basically, I want to be able to create a plugin (?) or modify a build task which will export build/inspection stats from TeamCity. Basically, I want to be able to create a custom report which will tell me 'Who' is modifying the build, and what error (at the pretested commit stage) occured. Essentially, I want to report on the 'Verify' stage of the Edit->Verify->Commit scenario, and report on the 'code-breaker'.
Will I need to access the internal API or to access TeamCity database tables directly? I understand that the inspections plugin is not a part of OpenAPI, so no documentation is available about it...
Any help or direction to kickstart me on the correct path would be greatly appreciated!!
Tyler
Please sign in to leave a comment.
Just to add to my posting, I've since tried to install TeamCity, and load the OpenApi into Eclipse to begin to understand how I can go about creating a plugin, or solving my problem.
Does anyone have a best practice or guide for going about developing a plugin or developing with the OpenApi? Right now, I'm pretty much dead in the water
Tyler
Please take a look at this page: http://www.jetbrains.net/confluence/display/TCD4/Extending+TeamCity
There you will find references to javadoc, brief explanation of plugins packaging as well as source code of some plugins.
Inspections are not a part of open api right now, but if you describe in more details what types of inspections do you want to check probably we could help.
Pavel,
Thanks for your reply! Basically what I'm looking to do is to create 1 report which will show the pre-commit failures and the developer which tried to check it in. So in other words, I'd like to be able to take a snapshot of a project at any time, see what failures exist and who is responsible for them for reporting purposes. I will definitely have a look through the 'Extending TeamSpace' area though.
Given what I've described, do you think this would be possible?
Tyler
Tyler,
The question is still relevant? If yes please leave a comment or create a separate thread.
Kind regards,
Marina
Hi,
I think it's still relevant.. maybe only to me. I never actually implemented the solution after I investigated it. There are open source options that seemed to get me where I needed to go. Should this feature become available it would definitely be worth being alerted to.
Tyler
If my understanding is correct, you need to find all personal builds (in some specified configurations?) with pre-tested commit option turned on that failed and because of that commit did not happen, is it true?
I do not quite understand why do you need information about such commits. To obtain all builds of a build configuration, you can use SBuildType::getHistoryFull() method, then traverse all the builds by checking isPersonal() method. For builds with isPersonal() == true, you need to obtain changes (getContainingChanges() method), and again find thouse which have isPersonal() == true.
For these changes you can call getPersonalChangeInfo() method and from the returned personal change descriptor object you can obtain commit option (PersonalChangeDescriptor::getCommitType()).
Hope this helps.