mirror of
https://gitea.invidious.io/iv-org/invidious-copy-2023-06-08.git
synced 2024-08-15 00:53:38 +00:00
Config: Add scheme support to DBConfig
This commit is contained in:
parent
ce8b83ab18
commit
8bbc46fd98
2 changed files with 26 additions and 10 deletions
|
@ -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)]
|
||||
|
|
23
src/invidious/config/db.cr
Normal file
23
src/invidious/config/db.cr
Normal file
|
@ -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…
Reference in a new issue