Skip to content

tolsen/limeberry

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LimeBerry is a prototype of an advanced WebDAV server written in Ruby
on Rails.  LimeBerry currently implements the WebDAV and Access
Control RFCs, as well as the BIND draft. Support for the DeltaV and
Quota & Size RFCs is currently incomplete.

At this time, LimeBerry is almost 4 years old and is experiencing
major code rot.  LimeBerry once worked with Rails 1.2.  Some work
would need to be done to get it to work with the latest Rails and
gems.

General Software Requirements: xdelta, mysql server & client

Gem Requirements: mysql, rake, shared-mime-info, uuidtools

Gem Conflicts: httpauth

Installation

   1. Install the following software:
          *  xdelta library
          *  MySQL server & client
          *  Ruby
          *  Ruby Gems 
   2. Install required gems: gem install mysql rake shared-mime-info uuidtools mongrel
   3. We use our own modified httpauth library. Make sure the httpauth gem is not installed: gem uninstall httpauth
   4. You will need two to three databases - one development, one test, and a production database if desired. For each database, you will need to set four environment variables:
         1. LIMEBERRY_DEV_DB, LIMEBERRY_TEST_DB, or LIMEBERRY_PROD_DB: database name
         2. LIMEBERRY_DEV_USER, LIMEBERRY_TEST_USER, or LIMEBERRY_PROD_USER: database user
         3. LIMEBERRY_DEV_PASS, LIMEBERRY_TEST_PASS, or LIMEBERRY_PROD_PASS: password for the database user
         4. LIMEBERRY_DEV_HOST, LIMEBERRY_TEST_HOST, or LIMEBERRY_PROD_HOST: hostname of the database server 
   5. Check out the LimeBerry code: git clone git://github.com/tolsen/limeberry
   6. Change to the limeberry directory: cd limeberry
   7. Drop and recreate the database tables: rake db:reset
   8. Run the tests: rake
   9. Start mongrel (defaults to port 3000): mongrel_rails start 

Adding Users

$ ./script/console 
Loading development environment.
>> User.make :name => 'tim', :password => 'swordfish'
=> #<User id: 17, uuid: "720f0069ea314cddb913b72b74c653fb", created_at: "2007-10-05 20:53:38", displayname: "", comment: "", type: "User", owner_id: 17, creator_id: 1, lock_version: 1>
>> exit
$ 

Sample Session with  Cadaver

$ cadaver http://localhost:3000/home/tim
Authentication required for users@limedav.com on server `localhost':
Username: tim
Password: 
dav:/home/tim/> ls
Listing collection `/home/tim/': collection is empty.
dav:/home/tim/> put timmay.gif
Uploading timmay.gif to `/home/tim/timmay.gif':
Progress: [=============================>] 100.0% of 1 bytes succeeded.
dav:/home/tim/> ls
Listing collection `/home/tim/': succeeded.
        timmay.gif                          5794  Oct  5 16:55
dav:/home/tim/> exit
Connection to `localhost' closed.



Lime Berry is the result of the hard work of many contributors.
Contributors include:

Pawan Agarwal
Sugam Agarwal
Ritesh Arora
Ryan Davis
Eric Hodel
Amy Hoy
Pranay Jain
Sriram Malladi
Sharad Maloo
Michael Nutt
Tim Olsen
Chetan Reddy
Umang Sharan
Paritosh Shah
Shubham Singal
Gyanit Singh
Nitin Sivakrishnan
Christine Yen
David Yeu

About

Advanced WebDAV server (Rails 1.2)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages