A Hydra-based Rails Engine that extends an application, adding the ability to Create, Read, Update and Destroy (CRUD) objects (based on Hydra::Works) and providing a generator for defining object types with custom workflows, views, access controls, etc.
During 2017, the Samvera community consolidated Sufia and CurationConcerns into Hyrax:
The Samvera Community effort has shifted its attention to developing out Hyrax.
A Hydra-based Rails Engine that extends an application, adding the ability to Create, Read, Update and Destroy (CRUD) objects (based on Hydra::Works) and providing a generator for defining object types with custom workflows, views, access controls, etc.
Curation Concerns requires the following software to work:
redlock
gem requires Redis >= 2.6.Add this line to your application’s Gemfile:
gem 'curation_concerns'
Then execute:
bundle install
Then run the install generator. You will be prompted if you want to overwrite the default app/controllers/catalog_controller.rb
, to which you should type Y
(yes). If you don’t want to be prompted on overwrite, you may run the generator with the -f
(force) option.
rails generate curation_concerns:install
rake db:migrate
To install FITS 0.8.5:
brew install fits
(you may also have to create a symlink from fits.sh -> fits in the next step).chmod a+x fits.sh
)fits.sh -h
from the command line and see a help message to ensure FITS is properly installedconfig.fits_path = "/<your full path>/fits.sh"
Curation Concerns includes support for transcoding audio and video files with ffmpeg > 1.0 installed.
On OSX, you can use homebrew:
brew install ffmpeg --with-fdk-aac --with-libvpx --with-libvorbis
Otherwise, to compile ffmpeg yourself, see the CompilationGuide.
To generate a new object type, use the curation_concerns:work
Rails generator. Follow the usage instructions provided on the command line when you run:
rails generate curation_concerns:work
To turn on virus detection, install clamav on your system and add the clamav
gem to your Gemfile:
gem 'clamav'
If you are modifying the curation_concerns gem and want to run the test suite, follow these steps to set up the test environment.
rake ci
Or you can do all the steps manually:
solr_wrapper -p 8985 -d solr/config/ --collection_name hydra-test
# in another window
fcrepo_wrapper -p 8986 --no-jms
# in another window
rake engine_cart:generate
rake curation_concerns:spec
Load the workflows, workflow states, transitions and user roles:
$ rails curation_concerns:workflow:load
Now that the Roles are loaded, grant the appropriate roles to the users by visiting the “Workflow Roles” section of the admin dashboard
Further documentation for defining and customizing workflows.
Something about notification should go here.
Sometimes when working with the test application, it can be helpful to have a repository populated with some number of objects. Rather than having to create them all through the user interface, which can be timely, the test application bundled with CurationConcerns provides a rake task that automatically creates 24 objects in the test application repository with different titles, levels of visibility, embargoes, and leases:
cd .internal_test_app
rake db:seed
To configure the Administration Pane see Admin Menu Guide
If you have questions or need help, please email the Hydra community tech list or stop by the Hydra community IRC channel.