Config: Add scheme support to DBConfig

pull/3815/head
Samantaz Fox 2 years ago
parent 4a73618a7b
commit ad06ab9d6a
No known key found for this signature in database
GPG Key ID: F42821059186176E

@ -1,12 +1,5 @@
struct DBConfig
include YAML::Serializable
property user : String
property password : String
property host : String
property port : Int32
property dbname : String
end
require "yaml"
require "./config/*"
struct ConfigPreferences
include YAML::Serializable
@ -69,7 +62,7 @@ class Config
# Default log level, valid YAML values are ints and strings, see src/invidious/helpers/logger.cr
property log_level : LogLevel = LogLevel::Info
# Database configuration with separate parameters (username, hostname, etc)
property db : DBConfig? = nil
property db : IV::Config::DBConfig? = nil
# Database configuration using 12-Factor "Database URL" syntax
@[YAML::Field(converter: Preferences::URIConverter)]

@ -0,0 +1,23 @@
module Invidious::Config
struct DBConfig
include YAML::Serializable
property scheme : String
property user : String
property password : String
property host : String
property port : Int32
property dbname : String
def to_uri
return URI.new(
scheme: @scheme,
user: @user,
password: @password,
host: @host,
port: @port,
path: @dbname,
)
end
end
end
Loading…
Cancel
Save