-
Notifications
You must be signed in to change notification settings - Fork 2
Home
There are two steps: install and configuration
Development work on deepblue requires a number of shell terminal windows
Most of us use iTerm on the mac for development but that isn't required
First cd to your preferred local development directory and clone the github repo
cd your-local-dev-directory
git clone https://github.com/mlibrary/deepblue.git
cd into the deepblue directory
cd deepblue
If using rbenv and rbenv-aliases do this, otherwise specify the ruby version somehow
rbenv local 2.4
set the git remote for deepblue repo and install the application
git remote add upstream https://github.com/mlibrary/deepblue.git
bundle install --without production --path .bundle
In the deepblue/config directory, check for files ending in .yml.sample
Then rename those files to remove the last .sample
And edit each of those files to point to the correct services if needed
Update the database by migrating any updates or changes
bundle exec rake db:migrate
Install new version of solr_wrapper next to avoid download error with earlier versions
gem install solr_wrapper -v '2.0'
Install fcrepo_wrapper (you might not have to do this)
gem install fcrepo_wrapper
Now you should be able to test that everything is set up correctly, takes a couple of minutes
bundle exec rake ci
Next we are going to get solr, fedora, and redis running in separate shell windows for /deepblue
In a new shell window for /deepblue
solr_wrapper -d solr/config/ --collection_name hydra-development
In another new shell window for /deepblue
fcrepo_wrapper -p 8984
This assumes you have redis installed locally
In yet another new shell window for /deepblue
redis-server
Now we should be able to run rails for /deepblue
In yet another new shell window for /deepblue
bundle exec rails server
In a web browser you can now enter "localhost:3000" to see deepblue data running locally
http://localhost:3000/
Deepblue needs a default adminstrative set for holding actual data
In the shell window we used for cloning deepblue or a new shell window
bundle exec rake hyrax:default_admin_set:create
Note, if the admin set has already been installed once, hyrax:default_admin_set:create will fail with message to clean fedora
You can clean fedora these commands with:
bundle exec rails console
require 'active_fedora/cleaner'
ActiveFedora::Cleaner.clean!
now try again
bundle exec rake hyrax:default_admin_set:create
Deepblue also needs some default collection types
bundle exec rake hyrax:default_collection_types:create
Next add yourself as an application administrator
Edit the file config/role_map.yml
and if it is not already there, add your email address under the line with " admin:"
then restart rails server and reload localhost:3000/data in your browser
Note: The rest of the deepblue setup takes place through the browser
Next, you want to create an administrative set for data collections and works
Navigate to the Dashboard using the drop down menu under your email address at the top of web window using your newly added admin account
Select Collections on the left side of the Dashboard
Now select the "New Collection" button to the right
create a collection with the name "DataSet Admin Set" of type Admin Set and select the "Save" button to save it
You should now see the Admin Set Edit page
Pick the tab for Workflow and select the "One-step mediated deposit workflow" option, and then the "Update Permissions template"
The page will update with a notice at the top that the workflow has been updated
You should still see the Admin Set Edit page, there is more to set up
Select the "Participants" tab
Towards the middle of the is a button "Allow all registered users to deposit"
Select that button to set permissions for these depositors
The page will update with a new section called "Depositors of This Set" showing "Registered Users"
Still on the Dashboard, select Settings on the left side of the Dashboard
Under Setting select Features which will show a number of options
Find the Batch Upload option and set it to "off"