Feature #13070

Rest API, add repository to project

Added by Yurii Khmelevskii almost 5 years ago. Updated over 3 years ago.

Status:NewStart date:
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:REST API
Target version:-
Resolution:

Description

I use init script that initialize my new project. It create project in redmine with help Rest API. I use gitolite-redmine plugin(https://github.com/ivyl/redmine-gitolite) that create git repository, if created it in redmine.
If I can create repository in redmine with RestAPI i can finished my script for automatization create new project. I am find topic http://www.redmine.org/boards/1/topics/29489 and i see, that feature needed not only for me.


Related issues

Related to Redmine - Feature #10417: Add repository to project New
Related to Redmine - Feature #11977: REST API for repositories New
Related to Redmine - Feature #11203: Rest API for Repository New

History

#1 Updated by Nick Tan over 4 years ago

+1 for this feature.
either new REST API or command line for repository are OK.

in our case, we'd like to create the project and then create the git repo (with redmine_gitolite plugin) as well automatically.

for now, the only workaround is to simulate the HTTP Post as below:

Form Data
authenticity_token:gNNDQEVaImyJUEjr6LqdbtFzPZBJjbNy+U44DhW6JzY=
repository_scm:Git
repository[is_default]:0
repository[is_default]:1
repository[identifier]:test
commit:Create

please also refer to the related feature requests:
#10417 Add repository to project
#11977 REST API for repositories
#11203 Rest API for Repository

#2 Updated by Dimitris Kapanidis over 4 years ago

+1

For Repo creation currently, I also use the POST directly, but would like to see an API for it.

#3 Updated by Rafael B. almost 4 years ago

+1

Isn’t the authenticity_token generated and stored in each session? Providing a token which you got from the source code of a form of a page would only work until the session expires. Is this true?

Is there a more reliable workaround for adding a repository to a project? I also don’t mind if it’s a CLI or API solution.

#4 Updated by André Jonsson over 3 years ago

+1
And also adding an option like /projects/{id}.xml?include=repositories, which would subsequently include the repository info for the requested project.

btw, I currently use a ruby script to accomplish this:

 repos = Repository::Mercurial.new;
 repos.url = 'file://blablabla';
 repos.project = Project.find_by_identifier('{id}');
 repos.save;
 
... which is generated at run-time and execute using rails' runner.
However, this is quite slow and slightly icky.

Also available in: Atom PDF