How do I stop all repositories in crucible?

Steven Brown
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
February 10, 2015

We have several hundred repositories, in order to keep our current code reviews up to date more regularly, we stop any repositories that don't have open code reviews.

Whenever crucible is restart (e.g. for an upgrade) all of the repositories are started and we have to manually stop them.

Is there a tool (command line or interface) we can use to stop all repositories?

2 answers

0 votes
Steven Brown
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
February 17, 2015

Hi Piotr,

We have about 400 repositories and we add more each week, even if repositories do not have any activity it can still take a long time for the system to check each repository for activity and get around to the one you need. Even forcing the incremental index to run can take quite a while.

Currently we get around this by allowing admin access to everyone (not a major concern in a team with a handful of programmers). We stop all repositories regularly (manually) and then programmers can activate and force the incremental index to get their changes picked up almost immediately.

Due to us being a time billing driven company and requiring fast turn-around of work, we need to be able to write code and put it up for review in one time block if possible.

Your solution of disabling the repositories I think will be sufficient, assuming there are no flow-on effects.

Cheers,
Steven

Piotr Swiecicki
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
February 18, 2015

Hi Steven, Thanks for providing the rationale behind your case. Disabling repositories should indeed help you achieving your goal. But I am finding this a pretty radical solution to the problem, I'm guessing there is a value of keeping all repositories up and running, developers can use their data when searching the code or accessing old code reviews perhaps. If that's the case there might be a nicer solution to the problem. You may want to increase the default polling period, to 12h for instance, so each of your 400 repositories will be scanned twice a day only for changes. To ensure the active repositories are indexed promptly once new changes are committed, you may want to configure https://confluence.atlassian.com/display/FISHEYE/Configuring+commit+hooks instead. That would send a promptly notification to FishEye once new change is added. Also, depending on the SCM types you're using and hosting solutions used, if you use git and Stash, there is out of the box mechanism provided to have FishEye notified each time Stash detect repository change, see https://confluence.atlassian.com/display/FISHEYE/Integrating+FishEye+with+Stash. Hope that helps, Piotr

0 votes
Piotr Swiecicki
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
February 10, 2015

You could disable those repositories, that would be persisted between restarts.

But to be honest I don't fully understand your use case, what's the point of stopping repositories with no open reviews?  If there are no activity in those repositories, no new commits are pushed and no reviews created, keeping such repository open should not cause any harm to your instance.  On the other side if developer decides to push new changes to such repository and raise a code review, one would need to ask FeCru administrator to start this repository, wait for incremental index to pick up the changes before review could be created.  I would appreciate if you could explain your rationale behind stopping those repositories.

Finally, if you still believe you need a tool to stop selected repositories easily, you can consider using FishEye REST API, see https://docs.atlassian.com/fisheye-crucible/latest/wadl/fecru.html#rest-service-fecru:admin:repositories:name:stop

There is example python client provided, you can consider using it too: https://bitbucket.org/atlassian/fecru-rest-examples/src/master/python/README.md?at=master

Cheers,

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events