Bulk deleting 400 repositories in Fisheye/Crucible

The user interface of Crucible/Fisheye is not very intuitive, so when asked to add 480+ repos to Crucible to see how Crucible and the Git repositories behind it dealt with the load back on version 3.10.1, i wrote a script that appended all repositories to the config.xml.

Since that we have upgraded to Crucible/Fisheye 4.0.2 and with that the repositories were moved away from the config.xml.

Is there a easy way bulk removing repositories either via the database or somewhere else on the filsystem, without having to spend 12 hours clicking around in the laggy interface?

Unfortuantly Bob Swift's Crucible CLI plugin is not compatible with the latest version of Crucible, and i seem to fail when attempting to do it via the Native REST api.

If someone has a snippet of bash script that can stop and remove a single repository, this could also help me.

Kind regards

Jonas

2 answers

1 accepted

Hi Jonas, repositories were always and are in config.xml - not server.xml. Please check you are looking at the correct config.xml in FISHEYE_INST.

mac

Hi Jonas,

Repositories are still present in config.xml (Crucible/Fisheye 4.0.2) so you still should be able to manipulate config.xml directly.

However I would recommend to use FishEye & Crucible REST Admin API to add/delete/update repositories.

Here is the repositories admin API: 

https://docs.atlassian.com/fisheye-crucible/latest/wadl/fecru.html#rest-service-fecru:admin:repositories

There is also a python FishEye & Crucible REST client that you could use:

https://bitbucket.org/atlassian/fecru-rest-examples/src

Install the REST client:

pip install git+https://bitbucket.org/atlassian/fecru-rest-examples.git

then run the script which should look something like:

from fecru_rest.admin_repositories import *
import fecru_rest.config
 
config.url = 'http://url/to/fecru'
config.user = 'adminName'
config.password = 'adminPassword'
 
rep_name = 'repositoryName'
 
stop_repository(rep_name)
delete_repository(rep_name)

 

Use:

get_repositories(start=0, limit=400)

to iterate over repositories. Have a look at examples here: https://bitbucket.org/atlassian/fecru-rest-examples/src/master/fecru_rest/examples_repositories.py?at=master&fileviewer=file-view-default

mac

 

No, repositories added on 3.10.1 are no longer in server.xml after the upgrade to 4.0.2, so yes, i can edit my license key and some other stuff, but the 1200 lines with XML describing the repos are no longer there. Not sure who approved this as the right answer, but feel free to reproduce the scenario and you will see i am right.

 

Will have a look REST API again, thanks a bunch for now.

Suggest an answer

Log in or Sign up to answer
How to earn badges on the Atlassian Community

How to earn badges on the Atlassian Community

Badges are a great way to show off community activity, whether you’re a newbie or a Champion.

Learn more
Community showcase
Published Thursday in Confluence

Three common content challenges + how to manage them

An efficient enterprise content management system, or ECM, is a must-have for companies that create work online (cough   cough, all companies). If content calendars, marketing plans, and bu...

71 views 0 4
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you