Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master

This branch is 0 commits ahead and 0 commits behind master

Fetching latest commit…

Cannot retrieve the latest commit at this time

README.textile

Hydrangea

Hydrangea (an Open Access version of Libra)

Introduction and Installation Instructions

Libra Open Access is self-submission application for open-access publications.

Libra OA is an extension and customization of Hydrangea, the reference implementation of the Hydra framework.

For a more thorough overview of the Hydra framework, see HYDRA_OVERVIEW.textile
===
h3. Basic installation & Running RSpec tests

This is based on Matt Zumwalt’s Hydra Stack: Getting Started notes from LibDevConX in March 2010.

Clone the git repository from github and pull the copy of jetty

git clone git://github.com/projecthydra/hydrangea.git
cd hydrangea
git submodule init
git submodule update

Note: It’s OK if ‘git submodule init’ returns ‘No submodule mapping found in .gitmodules for path ’vendor/plugins/blacklight/data’

This will pull all of the code. The ‘git submodule update’ command is pulling a copy of hydra-jetty into the jetty directory within hydrangea.

You are now in your working copy of hydrangea. Use bundler to install the gem dependencies.

bundle install

Run your database migrations (only need to do this once after cloning the git repository).


rake db:migrate
rake db:migrate:plugins

Now run the bundled copy of Jetty, which has Fedora and Solr installed & configured to work with Hydra. We have created rake tasks to make this easier. For a full listing of rake tasks provided by Hydra, run

rake --describe hydra

Note that java 1.6 must be invoked by the “java” command or Hydrangea won’t work.

rake hydra:jetty:load

Import the fixture objects that are used by the rspec and cucumber tests. Please note you must import them in both the development and test rails environments in order to be able to run the tests.

Order is important here

rake libra_oa:default_fixtures:refresh
rake hydra:fixtures:refresh
RAILS_ENV=test rake hydra:fixtures:refresh

Note: The libra_oa fixtures have to be manually imported once in order to ensure that the first fixture is included (sometimes it gets skipped when you run hydra:fixtures:refresh. See HYDRA-410 Bug ticket for more info.

Run the Rspec tests to make sure everything is working properly.


rake spec

If all of the RSpec tests are passing, try the Cucumber tests

rake cucumber

If you have all of the RSpec and Cucumber tests passing, then the application is installed correctly.

Now run the rails lighttpd server

./script/server

For instructions on how to build and run Libra OA, please refer to the Hydrangea project

To pre-populate Libra OA with a set of fixture objects, run the following rake task:
rake libra_oa:default_fixtures:load

To overwrite the pre-packaged fedora instance, make the desired changes to fedora/conf/fedora.fcfg and then run the following rake task(s):
If you already have a jetty running:
rake hydra:jetty:stop
To load your changes (this task will automatically start your jetty):
rake hydra:jetty:load

Cucumber Usage:

Additional rake tasks are provided for adding features that override or extend core functionality:

rake cucumber:local_with_core
rake cucumber:local
rake cucumber:core

For further information, see Cucumber Usage

Custom Fedora Config

If, for some reason, you would like to tweak the fedora instance that is bundled in the jetty, copy your custom fedora.fcfg file to {Rails.root}/fedora/conf/fedora.fcfg and issue the following command:

 rake hydra:jetty:load

One use-case for this is to permit you to define your own default pid-namespace for the application. You would do this by changing the following line from:

  <param name="pidNamespace" value="changeme">

to

  <param name="pidNamespace" value="my-namespace">

Acknowledgements

Design & Strategic Contributions

The Hydra Framework would not exist without the extensive design effort undertaken by representatives of repository initiatives from Stanford University, University of Virginia and University of Hull. Contributors to that effort include Tom Cramer, Lynn McRae, Martha Sites, Richard Green, and Chris Awre.

Thorny Staples from Fedora Commons & DuraSpace deserves special thanks for putting all of these people in the same room together.

Technical Contributions

Technical Lead: Matt Zumwalt (MediaShelf)
User Interface & User Experience Designer: Jennifer Vine

Developers:
Eddie Shin, Jessie Keck, Christopher Jesuderai, McClain Looney, Luke Francl, Dan Weinand, Ken Earley, Paul Wenzel

Testers:
Charles Kerns, Bess Sadler, Richard Green, Tom Lauderman, Mark Matienzo

Additional thanks

Project Blacklight and the Blacklight contributors
Willy Mene, who created one of the “Hydra head” prototypes on which Hydrangea is based.
Chris Fitzpatrick & Douglas Kim, who created the first version of Solrizer and then thoroughly exercised it.
Naomi Dushay, whose knowledge of solr is impeccable.
Stu Snydman, project manager for the SALT Hydra prototype.

Something went wrong with that request. Please try again.