annil-rs

annil-rs 是最简单的音频仓库实现之一。其本身只实现了对 HS256 签名的 JWT 的校验,只要校验通过就允许用户访问资源。

配置文件

[server]
# 音频仓库名称
name = "My Server"
# 仓库监听的地址
listen = "localhost:3614"
# 仓库签名 JWT 的密钥
hmac-key = "a hmac key"
# 分享使用的 secret
share-key = "49040a2d-55e7-41a2-b4b5-45527879536e"
# 分享使用的 key-id
share-key-id = "b5b605d8-9349-45f5-bbf6-75690cb58090"
# 调用管理接口的 token
admin-token = "reload-token"

# 音频后端名称为 default
[backends.default]
# 是否启用该音频后端
enable = true
# 音频后端类型
type = "file"
# FileBackend 的参数,根目录
root = "/path/to/music"
# 使用严格目录格式(true) 或约定目录格式(false)
# 目前尚未实现
strict = false

# Google Drive 后端
[backends.drive]
enable = true
type = "drive"
corpora = "drive"
# 团队盘 ID
drive-id = "0AJIJiIDxF1yBUk9PVA"
# 初始 Token 路径
initial-token-path = "/data/annil.token"
# Token 的存放路径
token-path = "/tmp/ruaaaa/annil.token"

# drive 的缓存设置
[backends.drive.cache]
# 缓存根目录
root = "/tmp"
# 缓存最大容量,0 表示不限制
max-size = 1073741824 # 1GB

# 元数据
[metadata]
# 仓库地址
repo = "https://github.com/ProjectAnni/repo"
# 使用的分支
branch = "master"
# 元数据存放的路径
base = "/tmp/ruaaaa"
# 每次启动/reload 时是否更新仓库
pull = true