The POD Aggregator project is a Ruby on Rails application that receives and transmits MARC bibliographic and holdings data from multiple institutions.
Ruby 2.7.x, yarn
$ ruby --version
# ruby 2.7.x
$ git clone https://github.com/ivplus/aggregator.git
$ cd aggregator
$ bin/setup
$ bin/rails console
# Running via Spring preloader in process 96719
# Loading development environment (Rails 6.0.3.3)
# irb(main):001:0>
$ bin/rails agg:create_admin
POD Aggregator has several configuration settings many of which are available using the config gem at config/settings.yml
.
While adding MARC data locally is perfectly fine for many development use cases, you may want to more broadly hydrate your data lake. You can do this using the configurable db:seed
task.
$ bundle exec rake db:seed
The continuous integration tests for POD aggregator can be run using:
$ bundle exec rake
While using a standard development setup locally, developers may experience some issues with read/write concurrency in Sqlite and job processing using the ActiveJob AsyncAdapter. One solution to this is to temporarily switch to using PostgreSQL and Sidekiq with Redis locally for a more "production like" development environment.
Deployment is setup using Capistrano using standard Stanford Digital Library Systems and Services practices.