Files
pile/crates/pile-config/src/config.toml
rm-dr aecc84233b
Some checks failed
CI / Typos (push) Successful in 1m5s
CI / Clippy (push) Failing after 1m50s
CI / Build and test (push) Successful in 3m1s
Extractor refactor, S3 support
2026-03-07 10:38:50 -08:00

46 lines
1.5 KiB
TOML

[dataset]
# This dataset's name. Must be unique.
name = "dataset"
# root directory for fts indices, relative to the parent dir of this config file.
# Files are written to {working_dir}/{dataset.name}/*.
# Default is ".pile"
#
# working_dir = ".pile"
# Data sources available in this dataset
source."music" = { type = "filesystem", path = "music" }
# This dataset's schema.
# Defines normalized fields that are extracted from source entries on-demand.
#
# Format is as follows:
#
# "field-name" = {
# # The type of data this field contains.
# # only text is supported in this version.
# type = "text",
#
# # An array of jsonpaths (rfc9535) used to extract this field from each source entry.
# # These are evaluated in order, the first non-null value is used.
# # A single string is equivalent to an array with one element.
# path = "$.json.path"
# }
[schema]
album = { type = "text", path = "$.Album" }
isrc = { type = "text", path = "$.Isrc" }
artist = { type = "text", path = ["$.Artist", "$.TrackArtist"] }
lyrics = { type = "text", path = "$.Lyrics" }
genre = { type = "text", path = "$.Genre" }
title = { type = "text", path = ["$.Title", "$.TrackTitle"] }
# Fts configuration.
# Determines which fields (defined in `schema`) are included in the fts index.
[fts]
field.album = { tokenize = true }
field.isrc = { tokenize = true }
field.artist = { tokenize = true }
field.lyrics = { tokenize = true }
field.genre = { tokenize = true }
field.title = { tokenize = true }