123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185 |
- # Default repository configuration.
- #
- # Copy this file or parts of it in a separate location to override these
- # settings. Individual items can be selectively overridden as long as the YAML
- # hierarchical structure is kept.
- ###
- # Application mode.
- #
- # One of ``prod``, ``test`` or ``dev``.
- # ``prod`` is normal running mode. 'test' is used for running test suites.
- # ``dev`` is similar to normal mode but with reload and debug enabled.
- app_mode: 'prod'
- ###
- # Base data directory.
- #
- # This contains both volatile files such as PID files,
- # and persistent ones, such as resource data. LDP-NRs will be stored under
- # ``<basedir>/ldpnr_store` and LDP-RSs under ``<basedir>/ldprs_store``.
- #
- # If different data files need to be running on different storage hardware,
- # the individual subdirectories can be mounted on different file systems.
- #
- # If unset, it will default to <lakesuperior package root>/data.
- data_dir: /data
- ###
- # Configuration for binary path and fixity check generation. The hash is a
- # checksumn of the contents of the file.
- uuid:
- ###
- # Algorithm used to calculate the hash that generates the content path.
- #
- # This can be any one of the Python hashlib functions:
- # https://docs.python.org/3/library/hashlib.html
- #
- # This needs to be ``sha1`` if a compatibility with the Fedora4 file
- # layout is needed, however in security-sensitive environments it is
- # strongly advised to use a stronger algorithm, since SHA1 is known to be
- # vulnerable to counterfeiting: see https://shattered.io/
- #
- # ``blake2b`` is a strong, fast cryptographic alternative to SHA2/3:
- # https://blake2.net/
- algo: sha1
- ###
- # Data store configuration.
- store:
- ###
- # The semantic store used for persisting LDP-RS (RDF Source) resources.
- #
- # MUST support SPARQL 1.1 query and update.
- ldp_rs:
- ###
- # Store layout.
- #
- # At the moment, only ``rsrc_centric_layout`` is supported.
- layout: rsrc_centric_layout
- ###
- # Enable referential integrity checks.
- #
- # Whether to check if the object of a client-provided triple is the
- # uri of a repository-managed resource and veify if that exists. if
- # set to false, properties are allowed to point to resources in the
- # repositoy that do not exist. also, if a resource is deleted,
- # inbound relationships may not be cleaned up. this can be one of
- # ``False``, ``lenient`` or ``strict``. ``False`` does not check for
- # referential integrity. ``lenient`` quietly drops a user-provided
- # triple if its object violates referential integrity. ``strict``
- # raises an exception.
- #
- # Changes to this parameter require a full migration.
- referential_integrity: lenient
- ###
- # Split newly minted URIs into pairtrees.
- #
- # This mimics Fedora4 behavior which segments an identifier on POST.
- legacy_ptree_split: False
- ###
- # The path used to persist LDP-NR (bitstreams).
- #
- # This is for now a POSIX filesystem. Other solutions such as HDFS may be
- # possible in the future.
- ldp_nr:
- ###
- # See store.ldp_rs.layout.
- layout: default_layout
- ###
- # How to split the balanced pairtree to generate a path.
- #
- # The hash string is defined by the uuid.algo parameter value. This
- # parameter defines how many characters are in each branch. 2-4 is
- # the recommended setting. NOTE: a value of 2 will generate up to 256
- # sub-folders in a folder; 3 will generate max. 4096 and 4 will
- # generate max. 65536. Check your filesystem capabilities before
- # setting this to a non-default value.
- #
- # Changes to this parameter require a full migration.
- pairtree_branch_length: 2
- ###
- # Max. number of branches to generate.
- #
- # 0 will split the string until it reaches the end.
- #
- # E.g. if the hash value is 0123456789abcdef01234565789abcdef and the
- # branch length value is 2, and the branch number is 4, the path will
- # be 01/23/45/67/89abcdef01234565789abcdef. For a value of 0 it will
- # be 01/23/45/67/89/ab/cd/ef/01/23/45/67/89/ab/cd/ef. Be aware that
- # deeply nested directory structures may tax some of the operating
- # system's services that scan for files, such as `updatedb`. Check
- # your system capabilities for maximum nested directories before
- # changing the default.
- #
- # Changes to this parameter require a full migration.
- pairtree_branches: 4
- ###
- # Messaging configuration.
- messaging:
- ###
- # List of channels to send messages to.
- #
- # Each channel must define the `endpoint` and the `level` parameters.
- routes:
- ###
- # Output handler. Currently only ``StompHandler`` is supported.
- - handler: StompHandler
- ###
- # Activate this route.
- #
- # If ``False``, no messages will be emitted for this route.
- active: True
- ###
- # Protocol version. One of ``10``, ``11`` or ``12``.
- protocol: '11'
- ###
- # Host IP address.
- host: 127.0.0.1
- ###
- # Host port.
- port: 61613
- ###
- # User name for authentication.
- #
- # Credentials are optional.
- username:
- ###
- # Password for authentication.
- password:
- ###
- # Message topic.
- destination: '/topic/fcrepo'
- ###
- # Message format: at the moment the following are supported:
- #
- # - ``ASResourceFormatter``: Sends information about a resource
- # being created, updated or deleted, by who and when, with no
- # further information about what changed.
- #
- # - ``ASDeltaFormatter``:
- # Sends the same information as ``ASResourceFormatter`` with the
- # addition of the triples that were added and the ones that were
- # removed in the request. This may be used to send rich provenance
- # data to a preservation system.
- formatter: ASResourceFormatter
|