Gerrit configuration - gerrit

we want to use gerrit for code reviews but we are missing some settings in the webview.
is it possible to forbid committers to review/verify their own
commits?
is it possible that two reviewers give +1 an accumulate it
to a +2 so it can be submitted?
thanks

You can forbid self-reviews and add a +1 + +1 = +2 rule, but it isn't well documented. Newer versions of Gerrit use a prolog engine to calculate submit rules. Improved documentation for this feature is actually being worked on currently: https://gerrit-review.googlesource.com/#/c/37102/

is it possible to forbid committers to review/verify their own commits?
Yes, setup autobuild to verify all commits. You can set this up by using the Gerrit Trigger for Jenkins or gReview for Bamboo. That way nobody has to verify commits. Additionally, you can setup superusers so only a select group can actually merge the final reviewed change.
is it possible that two reviewers give +1 an accumulate it to a +2 so
it can be submitted?
No, two +1 doesn't make the +2 necessary to submit. Here's what the doc says:
The label that the reviewer selects determines what can happen next.
The +1 and -1 level are just an opinion where as the +2 and -2 levels
are allowing or blocking the change. In order for a change to be
accepted it must have at least one +2 and no -2 votes. Although these
are numeric values, they in no way accumulate; two +1s do not equate
to a +2.

The documentation that Brad mentioned in his answer is now merged into the master branch of Gerrit and available in the latest release (2.5.1 as of now):
Make change submittable only if Code-Review+2 is given by a non author
Make two +1 votes equal +2

Related

Minimum number of triggers and actions to publish a zapier app?

I worked with Zapier a few years ago and remember that they expect a minimum number of triggers and actions to go live on the app directory. However I'm not finding that document right now (or maybe it was never there and I'm mistaken?).
Does anyone have context on what's the least number of triggers and actions needed to go live with a Zapier app?
There's no hard and fast rule here. 1 is the minimum. Initially it's recommended to do no more than 5 total. From the docs:
We recommend your Zapier integration have no more than 5 of each (trigger, action, or search) at first; we suggest starting with your most popular 2-3 use cases.
You shouldn't pad your integration; it should have enough important functionality to be useful.

Remove keys from Zapier Storage older than 1 month old

I need help create a Zap that remove Keys from a Zapier Storage older than 1 month old, I'm not using Python Store Client (i know those are removed after 3 months of last use) but I'm using Zapier Storage, any idea in how to achieve this?
David here, from the Zapier Platform team.
First things first - both the Storage by Zapier app and the Python / JS store clients all use the same backend. Ergo, keys that haven't been touched in 3 months are purged, regardless of which client originally added them. If that knowledge fixes your problem, great!
If the 1 month window is important, there are a few options.
whenever you write the key, add another step on a 1 month delay that removes it
store the info with the date it was written. Then periodically (weekly?) get all the values, iterate over them to find the values that are outside your window, and delete those.
Those are the best ways I can think to do it. Hope that points you in the right direction!

Restricting Parent Issue status based on sub-task status

Is there a FREE way in JIRA to require that a parent issue can't be
advanced to a state until the children (sub-tasks) are advanced to an
equal or greater state?
FOR EXAMPLE: Suppose an issue has 4 sub-tasks: 3 in PROD state and 1 sub-task is in UAT state. I shouldn't be able to advance the main issue to PROD until that 1 sub-task is advanced to PROD first so all my sub-tasks are in PROD state. Same thing with CLOSING an issue when sub-tasks are OPEN.
There is no such specific post function out of the box from Jira but you can surely write your own plugin or Groovy script(this needs script runner plugin) which can do this job.
Simple condition like, you cannot close parent issue unless sub tasks are closed can be achieved as simple as this: https://confluence.atlassian.com/jirakb/preventing-issues-from-being-closed-while-their-sub-task-are-still-open-724928276.html
Other helpful discussions can be referred here:
https://answers.atlassian.com/questions/142131/parent-issue-needs-to-close-once-sub-task-are-closed
https://answers.atlassian.com/questions/262497/close-subtask-when-parent-is-closed
https://jamieechlin.atlassian.net/wiki/display/GRV/Post+Functions#PostFunctions-Autocloseallsubtasks
Thank you,
Yes, under the transition Conditions. Add a condition Called "Sub-Task Blocking Condition.
Then, select the statuses the sub-task requires before the parent tasks can move forward. You can select more than one, so select the statuses that are equal to or greater state. Heads up though: the selection page shows all existing statuses, not just the statuses used for that workflow.
Do this for each step you want restricted.

What is the maximum CFBundleVersion

our build system automatically sets the CFBundleVersion to the number of commits in git. When we set this up we thought this would be a good way to track what was built and not have to update the build number manually.
The question is what happens when we reach really high numbers? We're currently at around 2500.
Thanks
Maciej
It's held as a string, and you're highly unlikely to hit any limits based on the number of commits to a git repository.
Maximum number is 1,000 over.
Because, My project has 1052.1052 for CFBundleversion. And I can upload/submit it project to the iTunese connect.

JIRA/Greenhopper Handling patch releases?

We have the following scenario that we'd like to solve.
We create a new sprint, call it sprint "A" with a bunch of issues.
Then, we get a call from a customer which results in an emergency patch needing to be released.
Here, we'd like to create a new sprint for the patch, and move it to the top of the planning board. We're unable to do this.
I tried to create a second planning board in an attempt to solve this, but it seems like we cannot have two sprints going at once.
How should we handle this scenario of wanting to create a "patch" release cycle?
EDIT - Another thing I could do is run simultaneous sprints, but I don't know how to do it, and the post I found was not helpful at all.
Why not just add the new issue for the emergency patch to the existing sprint and rank it to the top so it will be done first? You could even configure an 'Emergency' swimlane to appear at the top of the board which guarantees that emergency issues would be shown with the highest priority.
If you really want to create a separate sprint for the Emergency fix you should enable Parallel Sprints (there's some information on this in the release notes, please ensure you're running GreenHopper 6.0.3 or above). Once you do this you'll be able to start another sprint on the same board as your existing running sprint.
Thanks,
Shaun

Resources