application.yml 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. # Default repository configuration.
  2. #
  3. # Copy this file or parts of it in a separate location to override these
  4. # settings. Individual items can be selectively overridden as long as the YAML
  5. # hierarchical structure is kept.
  6. ###
  7. # Application mode.
  8. #
  9. # One of ``prod``, ``test`` or ``dev``.
  10. # ``prod`` is normal running mode. 'test' is used for running test suites.
  11. # ``dev`` is similar to normal mode but with reload and debug enabled.
  12. app_mode: 'dev'
  13. ###
  14. # Base data directory.
  15. #
  16. # This contains both volatile files such as PID files,
  17. # and persistent ones, such as resource data. LDP-NRs will be stored under
  18. # ``<basedir>/ldpnr_store` and LDP-RSs under ``<basedir>/ldprs_store``.
  19. #
  20. # If different data files need to be running on different storage hardware,
  21. # the individual subdirectories can be mounted on different file systems.
  22. #
  23. # If unset, it will default to <lakesuperior package root>/data.
  24. data_dir:
  25. ###
  26. # Configuration for binary path and fixity check generation. The hash is a
  27. # checksumn of the contents of the file.
  28. uuid:
  29. ###
  30. # Algorithm used to calculate the hash that generates the content path.
  31. #
  32. # This can be any one of the Python hashlib functions:
  33. # https://docs.python.org/3/library/hashlib.html
  34. #
  35. # This needs to be ``sha1`` if a compatibility with the Fedora4 file
  36. # layout is needed, however in security-sensitive environments it is
  37. # strongly advised to use a stronger algorithm, since SHA1 is known to be
  38. # vulnerable to counterfeiting: see https://shattered.io/
  39. #
  40. # ``blake2b`` is a strong, fast cryptographic alternative to SHA2/3:
  41. # https://blake2.net/
  42. algo: blake2b
  43. ###
  44. # Data store configuration.
  45. store:
  46. ###
  47. # The semantic store used for persisting LDP-RS (RDF Source) resources.
  48. #
  49. # MUST support SPARQL 1.1 query and update.
  50. ldp_rs:
  51. ###
  52. # Store layout.
  53. #
  54. # At the moment, only ``rsrc_centric_layout`` is supported.
  55. layout: rsrc_centric_layout
  56. ###
  57. # Enable referential integrity checks.
  58. #
  59. # Whether to check if the object of a client-provided triple is the
  60. # uri of a repository-managed resource and veify if that exists. if
  61. # set to false, properties are allowed to point to resources in the
  62. # repositoy that do not exist. also, if a resource is deleted,
  63. # inbound relationships may not be cleaned up. this can be one of
  64. # ``False``, ``lenient`` or ``strict``. ``False`` does not check for
  65. # referential integrity. ``lenient`` quietly drops a user-provided
  66. # triple if its object violates referential integrity. ``strict``
  67. # raises an exception.
  68. #
  69. # Changes to this parameter require a full migration.
  70. referential_integrity: lenient
  71. ###
  72. # The path used to persist LDP-NR (bitstreams).
  73. #
  74. # This is for now a POSIX filesystem. Other solutions such as HDFS may be
  75. # possible in the future.
  76. ldp_nr:
  77. ###
  78. # See store.ldp_rs.layout.
  79. layout: default_layout
  80. ###
  81. # How to split the balanced pairtree to generate a path.
  82. #
  83. # The hash string is defined by the uuid.algo parameter value. This
  84. # parameter defines how many characters are in each branch. 2-4 is
  85. # the recommended setting. NOTE: a value of 2 will generate up to 256
  86. # sub-folders in a folder; 3 will generate max. 4096 and 4 will
  87. # generate max. 65536. Check your filesystem capabilities before
  88. # setting this to a non-default value.
  89. #
  90. # Changes to this parameter require a full migration.
  91. pairtree_branch_length: 2
  92. ###
  93. # Max. number of branches to generate.
  94. #
  95. # 0 will split the string until it reaches the end.
  96. #
  97. # E.g. if the hash value is 0123456789abcdef01234565789abcdef and the
  98. # branch length value is 2, and the branch number is 4, the path will
  99. # be 01/23/45/67/89abcdef01234565789abcdef. For a value of 0 it will
  100. # be 01/23/45/67/89/ab/cd/ef/01/23/45/67/89/ab/cd/ef. Be aware that
  101. # deeply nested directory structures may tax some of the operating
  102. # system's services that scan for files, such as `updatedb`. Check
  103. # your system capabilities for maximum nested directories before
  104. # changing the default.
  105. #
  106. # Changes to this parameter require a full migration.
  107. pairtree_branches: 4
  108. ###
  109. # Messaging configuration.
  110. messaging:
  111. ###
  112. # List of channels to send messages to.
  113. #
  114. # Each channel must define the `endpoint` and the `level` parameters.
  115. routes: []
  116. ###
  117. # Output handler. Currently only ``StompHandler`` is supported.
  118. #- handler: StompHandler
  119. # ###
  120. # # Activate this route.
  121. # #
  122. # # If ``False``, no messages will be emitted for this route.
  123. # active: True
  124. # ###
  125. # # Protocol version. One of ``10``, ``11`` or ``12``.
  126. # protocol: '12'
  127. # ###
  128. # # Host IP address.
  129. # host: 127.0.0.1
  130. # ###
  131. # # Host port.
  132. # port: 61613
  133. # ###
  134. # # User name for authentication.
  135. # #
  136. # # Credentials are optional.
  137. # username:
  138. # ###
  139. # # Password for authentication.
  140. # password:
  141. # ###
  142. # # Message topic.
  143. # destination: '/topic/fcrepo'
  144. # ###
  145. # # Message format: at the moment the following are supported:
  146. # #
  147. # # - ``ASResourceFormatter``: Sends information about a resource
  148. # # being created, updated or deleted, by who and when, with no
  149. # # further information about what changed.
  150. # #
  151. # # - ``ASDeltaFormatter``:
  152. # # Sends the same information as ``ASResourceFormatter`` with the
  153. # # addition of the triples that were added and the ones that were
  154. # # removed in the request. This may be used to send rich provenance
  155. # # data to a preservation system.
  156. # formatter: ASResourceFormatter