Forum Discussion

joseph_allen's avatar
joseph_allen
Occasional Contributor
10 years ago

How to force reviewers to always be on reviews

Here is my situation. I have a large team of developers spread out across the country. This includes both employee developers and contract developers. We implemented a hook in our svn server to restrict all code commits to reference a code review in a completed status. I am now finding that some developers are putting 1 reviewer on their review, getting it approved, and then checking it it. Most of the time this code ends up breaking something or is just crap code.

 

We have identified a few senior developers we want to be on all reviews, but I can't force people to add them to the review. What I would like to do is create a few groups of sr. developers, and force all reviews to include these groups. So any time someone creates a review, these groups automatically get added to the review as reviewers, and they cannot be removed.

 

Is there a way I can do this?

  • If you are on version 9.0.9001, or greater, then you can lock down review pools using some Java VMOPTIONs. 

     

    A review pool allows you to specify a list of users, in your case, this would be the senior developers. The review pool can then be added as a participant in a review; one of it's members will be required to step up, and volunteer to take the pool position.

     

    We have added a feature for a client, allowing them to prevent the deletion of review pools. You can specify a regular expression that will be matched against the review pool name. If the review pool name matches, then it cannot be removed from a review, once added. 

     

    com.smartbear.reviewpools.lock.regex

    Prevents review pools from being deleted. If a review pool group name matches the specified regular expression, this group cannot be deleted.

    com.smartbear.reviewpools.lock.allowrolechange

    A boolean setting to allow the roles of the locked review pools to be changed by anyone.

    This setting has effect only if the com.smartbear.reviewpools.lock.regexsetting is specified.

    com.smartbear.reviewpools.lock.rolesallowedtomodify

    A comma separated list of system role names that are allowed to modify locked review pools and their roles. Administrators are always allowed to modify the locked review pools and their roles.

    This setting has effect only if the com.smartbear.reviewpools.lock.regexsetting is specified.

    Source: http://codecollaborator.smartbear.com/docs/manual/9.0/appdx_java_vm_options.html

     

     

    Once you have configured theses options, you can then use a review created, or a phase change trigger to add the review pool to the review.

     

    More on triggers: http://codecollaborator.smartbear.com/docs/manual/9.0/admin_triggers.html

     

    Adding a review pool using the command line: http://codecollaborator.smartbear.com/docs/manual/9.0/ccollab_admin_review_pool_create.html

     

    Adding a review pool using the JSON API: http://codecollaborator.smartbear.com/docs/manual/9.0/json_manage_reviews_and_review_part.html

     

    Thanks,

    Rick

  • If you are on version 9.0.9001, or greater, then you can lock down review pools using some Java VMOPTIONs. 

     

    A review pool allows you to specify a list of users, in your case, this would be the senior developers. The review pool can then be added as a participant in a review; one of it's members will be required to step up, and volunteer to take the pool position.

     

    We have added a feature for a client, allowing them to prevent the deletion of review pools. You can specify a regular expression that will be matched against the review pool name. If the review pool name matches, then it cannot be removed from a review, once added. 

     

    com.smartbear.reviewpools.lock.regex

    Prevents review pools from being deleted. If a review pool group name matches the specified regular expression, this group cannot be deleted.

    com.smartbear.reviewpools.lock.allowrolechange

    A boolean setting to allow the roles of the locked review pools to be changed by anyone.

    This setting has effect only if the com.smartbear.reviewpools.lock.regexsetting is specified.

    com.smartbear.reviewpools.lock.rolesallowedtomodify

    A comma separated list of system role names that are allowed to modify locked review pools and their roles. Administrators are always allowed to modify the locked review pools and their roles.

    This setting has effect only if the com.smartbear.reviewpools.lock.regexsetting is specified.

    Source: http://codecollaborator.smartbear.com/docs/manual/9.0/appdx_java_vm_options.html

     

     

    Once you have configured theses options, you can then use a review created, or a phase change trigger to add the review pool to the review.

     

    More on triggers: http://codecollaborator.smartbear.com/docs/manual/9.0/admin_triggers.html

     

    Adding a review pool using the command line: http://codecollaborator.smartbear.com/docs/manual/9.0/ccollab_admin_review_pool_create.html

     

    Adding a review pool using the JSON API: http://codecollaborator.smartbear.com/docs/manual/9.0/json_manage_reviews_and_review_part.html

     

    Thanks,

    Rick

    • joseph_allen's avatar
      joseph_allen
      Occasional Contributor

      Alright, I upgraded to version 9, wrote a small java app to add the groups which I'll trigger off of.

       

      My question now is, how to I define multiple groups to be locked down? Seems like if I put multiple entries in the vmoptions file, the last one overrides the variable. I tried a comma separated list, but that didn't work either.

      • joseph_allen's avatar
        joseph_allen
        Occasional Contributor

        Nevermind, I realized I am passing in a regex. It's | separated.

         

        Thanks for the help!