Feature #2925
closedUrl to fetch changesets for a repository
0%
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
Updated by Eric Davis over 15 years ago
This might need part of the REST API implemented first, specifically authentication.
Updated by Markus Knittig over 15 years ago
+1
Re REST API: I think the controllers need to be refactored first...
Updated by Jean-Philippe Lang over 15 years ago
I think we could easily add this entry point to SysController that already provides some repository related methods (used by reposman).
Updated by Eric Davis over 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 becomeProjectsController#index, :format => :xml
(list of projects in xml)SysController#create_project_repository
would becomeRepositoriesController#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.
Updated by Jean-Philippe Lang over 15 years ago
Eric Davis wrote:
SysController#create_project_repository
would becomeRepositoriesController#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.
Updated by Chris Miller over 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).
Updated by Jean-Philippe Lang almost 15 years ago
- Status changed from New to Closed
- Target version set to 0.9.0
- Resolution set to Fixed
Added in r3107.
Updated by Lukas Pirl over 10 years ago
There is also a plugin to fetch commits for a specific repository only.