Project

General

Profile

Actions

Feature #2925

closed

Url to fetch changesets for a repository

Added by Eric Davis about 15 years ago. Updated over 9 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
SCM
Target version:
Start date:
2009-03-07
Due date:
% Done:

0%

Estimated time:
Resolution:
Fixed

Description

I'd like to add a url hook to Redmine's repositories so a repository can have it's fetch changesets called from a basic HTTP GET/POST. This could be linked up with post commit hooks or a web hook service (e.g. GitHub) to allow a repository to stay up to date without using auto fetch commits or a scheduled rake task.


Related issues

Related to Redmine - Feature #296: REST APIClosedJean-Philippe Lang

Actions
Related to Redmine - Feature #3389: Increase speed of Repository.fetch_changesetsClosed2009-05-19

Actions
Actions #1

Updated by Eric Davis about 15 years ago

This might need part of the REST API implemented first, specifically authentication.

Actions #2

Updated by Markus Knittig about 15 years ago

+1
Re REST API: I think the controllers need to be refactored first...

Actions #3

Updated by Jean-Philippe Lang about 15 years ago

I think we could easily add this entry point to SysController that already provides some repository related methods (used by reposman).

Actions #4

Updated by Eric Davis about 15 years ago

Jean-Philippe Lang wrote:

I think we could easily add this entry point to SysController that already provides some repository related methods (used by reposman).

I think once REST is complete, we should remove SysController completely. Nice side effect is that reposman would be a good example of using the REST API.

  • SysController#projects would become ProjectsController#index, :format => :xml (list of projects in xml)
  • SysController#create_project_repository would become RepositoriesController#create, :format => :xml (create a new repository from xml)

I don't think we should just remove SysController though, it should be depreciated in order to give developers enough time to port to the REST API. I'm saying this because it's taken me over two weeks to recover from the Rails 2.2.x i18n and Enumeration API changes and I don't want to cause that pain on any other developer without giving notice.

Actions #5

Updated by Jean-Philippe Lang almost 15 years ago

Eric Davis wrote:

  • SysController#create_project_repository would become RepositoriesController#create, :format => :xml (create a new repository from xml)

But this would require a Redmine admin account to run reposman.
I don't think it's the best solution.

Actions #6

Updated by Chris Miller almost 15 years ago

I believe that if you `curl http://www.your-redmine.com/projects/your-project/repository | /dev/null` in your post-commit hook it will cause Redmine to "look" at the repository, specifically fetch the changesets. If you have a private project this would become crazy-complicated, however, this seems to work for me (although I use a local Git repo on the server hard disk).

I'm not suggesting this isn't a good feature, I'm just saying that until the feature is done that a good band-aid solution exists (or exists with my setup - YMMV).

Actions #7

Updated by Jean-Philippe Lang over 14 years ago

  • Status changed from New to Closed
  • Target version set to 0.9.0
  • Resolution set to Fixed

Added in r3107.

Actions #8

Updated by Lukas Pirl over 9 years ago

There is also a plugin to fetch commits for a specific repository only.

Actions

Also available in: Atom PDF