Skip to content

xelkano/redmine_webdav

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

71 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

This WebDav plugin allows to access files and documents using WebDav protocol.
This plugin is a fork of this existing railsdav plugin (railsdav) with some modifications to make it run with REDMINE.

Current version was done using REDMINE 2.2-stable with ruby 1.9.3 but any REDMINE release >= 2.1.0 should be supported. Redmine 1.X is not no more supported (but you can still use the readmine_12 branch)

For repositories, only filesystem and local subversion repositories are supported.

About subversion support:
To commit changes in Subversion, the plugin opens the repository with the file protocol. For this reason, you need the following:

  • The repositories have to be installed on the REDMINE server.
  • Plugin will replace the beginning of your repository location ([protocol]://[server]/) with “file:///svnroot/”. You may need to create a symbolic link /svnroot for this to work…

Setup

WEBDAV is using basic HTTP authentication which is not supported in REDMINE core. A workaround is to use this very nice plugin redmine_http_auth in conjunction with Apache and RedmineAdvanced.pm (located in redmine_webdav/extra/svn). As you may have trouble with it, a “light” version is provided (redmine_http_auth.tgz in redmine_webdav/extra).

All this documentation is based on my own server configuration. Especially, my REDMINE instance is installed in a /redmine sub-uri (see http://www.redmine.org/wiki/redmine/HowTo_Install_Redmine_in_a_sub-URI for more details). If this doesn’t apply to your server, you will have to change the following instructions to reflect your own configuration (for example, replace /redmine/webdav with /webdav only, if you don’t use a sub-uri…)

1. Install plugin into vendor/plugins

Follow instructions from http://www.redmine.org/projects/redmine/wiki/Plugins :

  • cd $REDMINE_HOME/plugins
  • git clone git://github.com/amartel/redmine_webdav.git redmine_webdav
  • cd $REDMINE_HOME
  • bundle install —without development test postgresql sqlite
  • rake redmine:plugins:migrate RAILS_ENV=“production”

Download and install the “light” version of redmine_http_auth with the following command from your $REDMINE_HOME/plugins directory:

  • tar xvzf redmine_webdav/extra/redmine_http_auth.tgz

3. Configure your web server

Assuming you are using RHEL5/CentOS5:

  • Copy redmine_webdav/extra/svn/RedmineAdvanced.pm in /etc/httpd/Apache/Authn
  • Create the file /etc/httpd/conf.d/redmine_webdav.conf

<Location /redmine/webdav>
AuthType Basic
AuthName REDMINE
Require valid-user
PerlAccessHandler Apache::Authn::RedmineAdvanced::access_handler
PerlAuthenHandler Apache::Authn::RedmineAdvanced::authen_handler
RedmineDSN “DBI:mysql:database=redmine;host=192.168.10.1;port=3306”
RedmineDbUser “redmine”
RedmineDbPass “password”
RedmineAuthenticationOnly “On”
Order allow,deny
Allow from 127.0.0.1
Satisfy Any
</Location>

4. Restart your web server

/etc/init.d/httpd restart

5. Configure REDMINE with your web browser

If everything is OK, you should see both plugins (WebDav and HTTP authentication) in the plugin list (Administration → Plugins)

  • Configure default values for the plugin (Administration → Plugins → WebDav plugin)
  • New permissions are now available and you have to assign them to the roles you need

6. Set up your project

Don’t forget to activate the webdav module in the projects where you want to access files over WevDav. You will also have to go in the WebDAV tab of your project’s settings to define what you want to publish over WebDAV (files, documents and/or main repository) and how.

7. Use webdav to manage files and documents

You have to use a WebDav client in order to use the plugin.

Below, you will find instructions for the most used operating systems where webdav support is integrated. However, I strongly recommend you to use a dedicated webdav client. The best ones (from my point of view) are:

If you don’t want to use a dedicated webdav client, you can follow these instructions:

For MacOSX (webdav access is natively supported):

  • Open the finder and choose “Go to → Connect to server…”
  • enter http://myserver/redmine/webdav as the url of the server
  • enter your credentials (login/password)
  • You’re in

For linux/Ubuntu:

  • menu PlacesConnect to Server…
    • Service type: WebDAV (HTTP)
    • Server: myserver
    • Folder: /redmine/webdav
  • Click Connect

For WindowsXP:

  • Open My Network Places.
  • Double-click Add Network Place.
  • Click Next twice, then type http://myserver/redmine/webdav
  • Click Next
  • enter your credentials (login/password)
  • Click Finish

For Windows 7:

  • Open Computer.
  • Click Map network drive….
  • Use http://myserver/redmine/webdav as folder
  • Don’t forget to check “Connect using different credentials”
  • Click Finish
  • enter your credentials (login/password)
  • You’re in !!!

Original author’s README:

Railsdav (WebDAV for Ruby On Rails)
=======

THIS IS A MODIFIED VERSION OF THE ORIGINAL Railsdav, created by Marcello Nuccio. I have done it because I was not able to make to use the original one.

READ COMMENTS IN lib/acts_as_webdav.rb TO START!

Railsdav is a plugin which allows for custom WebDAV controllers to be added to a Ruby On Rails application to expose functionality as filesystems to WebDAV clients such as Mac OS X Finder, Windows Network Places, Dreamweaver etc.

Railsdav requires the following gems in addition to rails

  • unicode (gem install unicode)
  • shared-mime-info (gem install shared-mime-info)

Railsdav was created by Stuart Eccles (http://www.liverail.net/). I’d like to thank the following people for assisting with Railsdav

  • Albert Ramstedt who contributed bug fixes for a variety of code issues and helped with re-structuring the plugin
  • Alex MacCaw
  • Fabien Franzen

About

WebDav plugin for redmine

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 74.4%
  • Perl 25.6%