application.yml 5.5 KB

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