ActiveFedora
¶ ↑
What is ActiveFedora
?¶ ↑
ActiveFedora
is a Ruby gem for creating and managing objects in the Fedora Repository Architecture (fedora-commons.org). ActiveFedora
is loosely based on “ActiveRecord” in Rails. Version 9.0+ works with Fedora 4 and prior versions work on Fedora 3. Version 9.2+ works with Solr 4.10. Version 10.0+ works with Fedora >= 4.5.1.
Product Owner & Maintenance¶ ↑
ActiveFedora
is a Core Component of the Samvera community. The documentation for what this means can be found here.
Product Owner¶ ↑
Help¶ ↑
The Samvera community is here to help. Please see our support guide.
Getting Started¶ ↑
The Dive into Hydra gives you a brief tour through ActiveFedora’s features on the command line.
Prerequisites¶ ↑
-
A Fedora Commons Repository installation (configured by URL in fedora.yml)
-
A Solr index (configured by URL in solr.yml)
-
A JDK8+ installation (if running the test suite)
Installation¶ ↑
The gem is hosted on rubygems.
gem install active-fedora
Generators¶ ↑
You can generate a model inheriting from ActiveFedora::Base
.
rails generate active_fedora:model Book
Testing (this Gem)¶ ↑
In order to run the RSpec tests, you need to have a copy of the ActiveFedora
source code, and then run bundle install in the source directory. You can download the source code by doing the following:
git clone https://github.com/samvera/active_fedora.git cd active_fedora bundle install
Using the continuous integration server¶ ↑
You can test ActiveFedora
using the same process as our continuous integration server. This will automatically pull down a copy of Solr and Fedora Content Repository.
The ci
rake task will download solr and fedora, start them, and run the tests for you.
rake active_fedora:ci
Testing Manually¶ ↑
If you want to run the tests manually, follow these instructions:
solr_wrapper
To start FCRepo, open another shell and run:
fcrepo_wrapper -p 8986
Now you’re ready to run the tests. In the directory where active_fedora is installed, run:
rake spec
Contributing¶ ↑
If you’re working on PR for this project, create a feature branch off of main
.
This repository follows the Samvera Community Code of Conduct and language recommendations. Please do not create a branch called master
for this repository or as part of your pull request; the branch will either need to be removed or renamed before it can be considered for inclusion in the code base and history of this repository.
Release Process¶ ↑
The release process is documented on the wiki.
Acknowledgments¶ ↑
This software has been developed by and is brought to you by the Samvera community. Learn more at the Samvera website.