Hyku: A multi-tenant Hyrax application built on the latest and greatest Samvera community components. Brought to you by the Hydra-in-a-Box project partners and IMLS.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.ebextensions
.github
app
bin Merge pull request #1314 from samvera-labs/graphviz Mar 29, 2018
config
db
lib
public
solr/config
spec
vendor/assets
.coveralls.yml
.fcrepo_wrapper
.gitignore Ignore postgres artifacts Jan 24, 2017
.hound.yml
.rspec
.rubocop.yml
.rubocop_todo.yml
.scss-lint.yml
.solr_wrapper
.travis.yml
CONTRIBUTING.md
Dockerfile
Gemfile
Gemfile.lock
LICENSE
README.md
Rakefile
config.ru
docker-compose.yml

README.md

Build Status Coverage Status Stories in Ready

Hyku, the Hydra-in-a-Box Repository Application

Product Owner: Hydra-in-a-Box Project (DPLA, DuraSpace, and Stanford University)

Running the stack

For development

solr_wrapper
fcrepo_wrapper
postgres -D ./db/postgres
redis-server /usr/local/etc/redis.conf
bin/setup
DISABLE_REDIS_CLUSTER=true bundle exec sidekiq
DISABLE_REDIS_CLUSTER=true bundle exec rails server -b 0.0.0.0

For testing

See the Hyku Development Guide for how to run tests.

Working with Translations

You can log all of the I18n lookups to the Rails logger by setting the I18N_DEBUG environment variable to true. This will add a lot of chatter to the Rails logger (but can be very helpful to zero in on what I18n key you should or could use).

$ I18N_DEBUG=true bin/rails server

On AWS

AWS CloudFormation templates for the Hyku stack are available in a separate repository:

https://github.com/hybox/aws

With Docker

We distribute a docker-compose.yml configuration for running the Hyku stack and application using docker. Once you have docker installed and running, launch the stack using e.g.:

docker-compose up -d

With Vagrant

The samvera-vagrant project provides another simple way to get started "kicking the tires" of Hyku (and Hyrax), making it easy and quick to spin up Hyku. (Note that this is not for production or production-like installations.) It requires VirtualBox and Vagrant.

Switching accounts

The recommend way to switch your current session from one account to another is by doing:

AccountElevator.switch!('repo.example.com')

Development Dependencies

Postgres

Hydra-in-a-Box supports multitenancy using the apartment gem. apartment works best with a postgres database.

Importing

from CSV:

./bin/import_from_csv localhost spec/fixtures/csv/gse_metadata.csv ../hyku-objects

from purl:

./bin/import_from_purl ../hyku-objects bc390xk2647 bc402fk6835 bc483gc9313