= lyber_core
Require the following:
require 'lyber_core'
Constants that need to be defined with sample values:
If using WorkflowService:
Dor::WF_URI = 'http://lyberservices-dev.stanford.edu/workflow'
Dor::CREATE_WORKFLOW = true
If using SuriService:
Dor::MINT_SURI_IDS = true
Dor::SURI_URL = 'http://some.suri.host:8080'
Dor::ID_NAMESPACE = 'druid'
Dor::SURI_USER = 'suriuser'
Dor::SURI_PASSWORD = 'suripword'
If connecting to https servers:
LyberCore::CERT_FILE = File.dirname(__FILE__) + '/../certs/dummy.crt'
LyberCore::KEY_FILE = File.dirname(__FILE__) + '/../certs/dummy.key'
LyberCore::KEY_PASS = 'dummy'
== lyber_core/utils
If using Utilities, require the following:
require 'lyber_core/utils'
This will give you:
LyberCore::Utils::BagitBag
LyberCore::Utils::ChecksumValidate
LyberCore::Utils::FileUtilities
If you do not want all 3, you can require the individual classes. I.E. if you only want the bagit utils, then require:
require 'lyber_core/utils/bagit_bat'
The BagitBag class requires the bagit gem
http://github.com/flazz/bagit
== Build and release procedure
Modify the version number in lyber-core.gemspec, then push your commits to AFS. DO NOT TAG!
Run: 'rake dlss_release' to tag, build, and publish the lyber-core gem
See the Rakefile and the LyberCore::DlssRelease task in lib/lyber_core/rake/dlss_release.rb for more details
== Releases
- 1.3 Started to use Dor::Config for workspace configuration
- 1.2.1 Clean up logging of exceptions in LyberCore::Log
- 1.2 Robots can now run as daemons via the LyberCore::Robots::ServiceController
- 1.1.2 Can pass an array of "command line" arguments to the Robot constructor
- 1.1.1 Robot#start now returns LyberCore::Robots::CONTINUE if it did work without error, LyberCore::Robots::SLEEP if it did no work,
and LyberCore::Robots::HALT if it reached its error limit while working on its queue
- 1.1.0 Allow Robots::WorkQueue to resolve an arbitrary number of prerequisites
- 1.0.0 Factored all Dor::* classes and object models out of lyber-core and into a separate dor-services gem. WARNING: MAY BREAK COMPATIBILITY WITH PREVIOUS DOR-ENABLED CODE.
- 0.9.8 Created branch for legacy work "0.9-legacy". Robots can now be configured with fully qualified workflows for prerequisites
eg dor:googleScannedBookWF:register-object
- 0.9.7.4 Untangled a couple development dependencies; fixed issue where "include REXML" was polluting the Object namespace
- 0.9.7.3 Logging enhancements
- 0.9.7.2 IdentityMetadata bugfixes
- 0.9.7.1 Enhanced exception handling
- 0.9.7 ActiveMQ message-based robot parallelization as described here: https://consul.stanford.edu/x/tQjdBw . Removal of ROXML models.
- 0.9.6.3 Better error reporting for LyberCore::Utils::FileUtilities.execute, which means when a system command fails we have a better idea of why.
- 0.9.6.2 Handles new response from workflow service when there are no objects in the queue:
- 0.9.6 DorService.get_objects_for_workstep can handle one or two completed steps. Trimmed-down gem dependencies now defined in lyber-core.gemspec. 'rake dlss_release' will tag, build and publish gem
- 0.9.5.5 Robots now log to ROBOT_ROOT/log/robot_name.log unless specified in constructor
- 0.9.5.4 Custom exception classes, more checking of error conditions
- 0.9.5.3 More robust testing, minor bug fixes, compatible with active_fedora 1.2.6
- 0.9.5 Significantly refactored to provide central logging and many more debugging statements.
- 0.9.4 First version that requires Ruby 1.8.7. Built with bundler and rvm
- 0.9.3.9 Last version compatible with Ruby 1.8.6. Stored in source control as the 'facets-282' branch.
- 0.9.3 Compatibility with bagit 1.0.0. Bump to active-fedora 1.1.13
- 0.9.2 Workflow bug fixes. Last version that supports active-fedora 1.0.7
- We recommend that you DO NOT USE any version older than these
== Copyright
Copyright (c) 2010 Stanford University Library. See LICENSE for details.