(Mostly) Automatic FAST reconciliation for Hyrax-based repositories
The University of Victoria Libraries uses FAST Update in production as part of Vault, its Digital Asset Management System.
- Hyrax, v.3.0.X and associated gems (e.g. Nokogiri, Blacklight, Sidekiq)
- SimpleXlsxReader - for reading/parsing .xslx (Microsoft Excel) files from OCLC FAST
- RSpec for testing
- Optional: sidekiq-cron for scheduling recurring updates every X number of days/weeks/months
At present, the files in the repo would need to be copied into the root directory of your Hyrax/Rails app, following the exact structure of directories and files—with the exception of 3 files described in Configuration below. Development work is underway to transform these files into a gem for easier installation.
Run rails db:migrate after copying the files over.
There are 3 files whose contents need to be copy/pasted into your corresponding app files:
Rails.application.routes.draw do
# ... your own application code here ...
get '/fast_update/replace_uri', to: 'fast_update/changes#index', as: :fast_update_replace_uri
get '/fast_update/search_preview', to: 'fast_update/changes#search_preview', as: :fast_update_search_preview
get '/fast_update/search_preview/page/:page', to: 'fast_update/changes#search_preview'
namespace :fast_update do
resources :changes, except: [:update, :edit]
end
# ...
end# ... your own application code here ...
fast_update:
other_changes_email: [email protected] # Recipient email address for obsolete/deprecated headings goes here
FAST Update comes with a web interface for replacing or deleting a URI. To add a link to this page in the Hyrax dashboard sidebar, edit app/controllers/hyrax/dashboard_controller.rb like below:
# Line 18
self.sidebar_partials = { activity: [], configuration: [], repository_content: [], tasks: ["hyrax/dashboard/sidebar/replace_or_delete_fast_uris"] }If you're using sidekiq-cron, you may also want to create a schedule.yml file. See the wiki or the sidekiq-cron documentation for more details.



