Git Product home page Git Product logo

od2-migration's Introduction

OregonDigital

Circle CI Coverage Status

Overview

Current production Oregon Digital running Fedora 3 and Hydra 6.

New development is focused on Oregon Digital 2: http://github.com/OregonDigital/OD2

Connected projects:

Local Development Setup

Using Docker

Grab everything you need

# Grab the repository
git clone [email protected]:OregonDigital/oregondigital.git

# Start the whole stack - on your first run, this can take a while to download
# all the necessary images
docker-compose up -d

Making zoomable images work

Create config/app.yml with information about how to reach your local system's RAIS container; e.g.:

iip_server:
  location: http://localhost:12415/images/dzi

You may need to choose something other than localhost if you're doing a demo or running docker inside a virtual machine. The rest of the settings (port and path) should remain untouched.

Generate filler data

First, run the rake task:

docker-compose exec workers bundle exec rake filler_data

Next, log into the main application by browsing to http://localhost:3000/users/sign_in. Docker sets up the admin user as "[email protected]" with the password "admin123". Once you're signed in, visit http://localhost:3000/resque/overview and watch the queue slowly get processed. This can take a while, but once it's done you should have 3 collections of dummy data.

Testing

Easy as ./docker/test.sh! Except....

  • Want to focus tests? Just pass in a path: ./docker/test.sh spec/models.
  • If you need to ensure your environment is pristine, use the --destroy flag, which will destroy and rebuild all containers.

Updating Gems

The safest way to update gems is to destroy and rebuild the dev image, otherwise you're only updating gems within a container, and containers do not necessarily persist very long.

docker-compose stop
docker-compose rm
docker rmi oregondigital/od1-dev
docker-compose build workers

You can also run "bundle install" inside a particular container, but this should only be done if you know what you're doing. It can get really confusing when you accidentally use docker-compose run when you meant docker-compose exec. Or if you choose the wrong container name.

Various other docker stuff

This list of commands should get you moving forward with most typical development tasks:

# When you change code, if you start getting odd errors, you may have to
# restart the OD containers:
docker-compose restart web workers resquehead

# If things are still "weird", rebuild the OD containers:
docker-compose stop web workers resquehead
docker-compose rm web workers resquehead
docker-compose build web workers resquehead
docker-compose up -d

# If you need a "hard reset", nuke it!  WARNING: THIS WILL REMOVE ALL YOUR
# DEVELOPMENT-INGESTED ASSETS!
./docker/nuke.sh

# When nukes just don't destroy enough, try out a SUPERNOVA!  This will remove
# every Docker entity related to OD, which will mean re-downloading the images:
./docker/supernova.sh

# Watch the logs for everything
docker-compose logs -f

# Just watch the Rails web app logs
docker-compose logs -f web

Manual

Requires Ruby 2.0

(Mongo needs to be running, 2.4 is known to work: https://docs.mongodb.com/v2.4/tutorial/install-mongodb-on-ubuntu/ )

git clone [email protected]:OregonDigital/oregondigital.git
cd oregondigital
bundle install
rake db:migrate
git submodule init
git submodule update
rake hydra:jetty:config

On a newer install, may have to pin

Symlink media directories:

ln -s /path/to/rails/media public/media
ln -s /path/to/rails/media/thumbnails public/thumbnails

Install memcached if needed, or make sure it's running (needed for login sessions):

Start the servers:

rake jetty:start
rails server

Vagrant Setup

Requires Git, VirtualBox, and Vagrant. Also requires 3 gigs of RAM to be available for the VM which vagrant creates.

Option 1: manual submodule setup:

git clone [email protected]:OregonDigital/oregondigital.git
cd oregondigital
git submodule init
git submodule update

Option 2: automatic submodule setup:

git clone [email protected]:OregonDigital/oregondigital.git --recursive
cd oregondigital

Either way, you then tell vagrant to download and start the virtual machine:

vagrant up
vagrant ssh

After vagrant ssh you'll be logged into the VM. From there, you'll want to start the Rails server:

cd /vagrant
rails server

You can browse the app via http://localhost:3000, and check on the jetty container (which houses solr and fedora) at http://localhost:8983.

od2-migration's People

Contributors

lsat12357 avatar wickr avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

od2-migration's Issues

QA template to copy/paste

QA

Overall:

  • All works are migrated- original number of works and OD2 works match (Migration)
  • Check that a minimum of 5 works are accessible in browse everything/all
  • Check that a minimum of 5 works are accessible in by clicking on them in browse everything/all
  • If collections have different Hyrax types (Documents, Images, Video, Audio, etc.), check 5 of each type, if possible.
  • Confirm works are in the correct Admin set.

Search/indexing/faceting check:

  • Works and collections appear in browse everything/all when searched with corresponding metadata
  • Thumbnails are appearing for works; the collection has the correct icon.
  • Keyword searching appears in browse everything/all and keywords in title, description, full text appear with hit highlighting for works and collections

Facets:

  • Controlled and uncontrolled facets appear and are populated by data from works (When checking facets, check the core facets in the search results and the collection-specific facets on the collection homepage.)
  • Labels are fetching correctly
  • URIs are resolving correctly

Work pages:

  • The digital object(s) appear in viewer
  • Files are attached
  • Derivatives were created (both automated check from Migration and visual check from Metadeities)
  • Metadata is also there in work and viewer
  • Collection information is also on work page
  • Confirm metadata is in IIIF viewer
  • Linked Data:
  • Labels are fetching correctly
  • URIs are resolving correctly
  • Download
  • If high res download, double-check
  • Copyright
  • Confirm copyright logo matches statement

Collection pages:

  • Collection pages are there

  • Collection description/blurb is there

  • Facets are there

  • Restrictions: Double-check restricted collections and works (VPN)

  • Bulk Approve (step 11)

  • Collection-level QA: Compare number of assets on OD2 with total in original pidlist (step 12)

Gertrude Bass Warner papers, 1879-1954 (gb-warner-papers-ua022)

Laura J. Bock papers, 1962-1969 (ua018)

Joel Palmer Papers (joel-palmer)

Gertrude Bass Warner (1863-1951) photographs (gb-warner)

Western Waters Digital Library (western-waters)

Gertrude Bass Warner papers, 1909-1923 (gbwarnerpapers)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.