git clone gitusername@github.com/Det-Kongelige-Bibliotek/valhal.git
Replace ‘gitusername’ with your own gitusername. This is necessary, if you want to push commits back to master branch.
The Hydra part of valhal has the same basic software requisites as the Hydra-Head component (Ruby, Rails, etc.).
-
The software requisites for the Hydra-Head can be found here: github.com/projecthydra/hydra-head/wiki/Installation-Prerequisites
-
A set of step-by-step instructions for installing Ruby, Rails, and other useful tools, on a selection of operation systems, can be found here: installfest.railsbridge.org/installfest/
-
Ruby version 2.0
-
Rails version 4.1.6
-
Fedora Commons version 4.1.0 or better (fedorarepository.org/)
-
Apache Solr version 4.10.x (lucene.apache.org/solr/)
In a development setting it is recommended to use a Hydra Jetty Instance which comes with both Solr and Fedora pre-installed. For the set up of Hydra Jetty, see bellow.
Redis version 2.8.x or greater (redis.io/) - default package only contains source code, so remember to run ‘make install’.
RabbitMQ. Note that RabbitMQ depends on Erlang.
ImageMagick-devel (on RHEL6 run ’yum install ImageMagick-devel’ with repo ’rhel-x86_64-server-optional-6’) (on Ubuntu run ’apt-get install libmagickwand-dev’).
File Information Tool Set (FITS), projects.iq.harvard.edu/fits/downloads. Set environment variable FITS_HOME to the fully qualified file name of the FITS script. We have tested with FITS 0.8.4, and we have compiled it in a version, which supports java 8 (github.com/Det-Kongelige-Bibliotek/fits)
In RubyMine chose File->Open Directory and select the valhal directory. RubyMine should automatically integrate with the valhal Git repository.
In the config directory, create an application.local.yml file based on the application.local.template.yml file.
Run RabbitMQ on default port - 5672 (on RHEL6 there might be a Qpid daemon running on port 5672 already)
$ bundle install $ rake db:migrate $ rake jetty:clean
Before using the Valhal interface it can be an advantage to load the set of predefined controlled lists by:
$ rake valhal:load_controlled_lists $ rake adl:init
Start Redis (must be running in a separate terminal or as a background job):
$ cd REDIS_HOME (where ever you have installed redis) $ ./src/redis-server
Start fedora and solr:
$ rake jetty:start
Start the workflow engine (must be running in a separate terminal or as a background job):
$ rake resque:work QUEUE='*'
Start a job for receiving responses from preservation (does not require its own terminal):
$ rake valhal:schedule_preservation_receiver
The interface can be started on localhost:3000 by:
$ rails server
The tests can be run by:
$ rake spec
Stop the rails server by using “ctrl-c” in the terminal running “rails server”.
then stop the jetty application with:
$ rake jetty:stop
-
Public website
-
Valhal is only intended for curation inside the Royal Librarys firewall. All public material should eventually be published through our dissemination platform ‘Bifrost’
-
License
See LICENSE.txt