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
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">
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 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
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.