Browse Source
Error when the URL scheme doesn't match the database type
pull/652/head
Daniel García
5 years ago
No known key found for this signature in database
GPG Key ID: FC8A7D14C3CD543A
1 changed files with
20 additions and
0 deletions
-
src/config.rs
|
|
@ -366,6 +366,26 @@ make_config! { |
|
|
|
} |
|
|
|
|
|
|
|
fn validate_config(cfg: &ConfigItems) -> Result<(), Error> { |
|
|
|
let db_url = cfg.database_url.to_lowercase(); |
|
|
|
|
|
|
|
if cfg!(feature = "sqlite") { |
|
|
|
if db_url.starts_with("mysql:") || db_url.starts_with("postgresql:") { |
|
|
|
err!("`DATABASE_URL` is meant for MySQL or Postgres, while this server is meant for SQLite") |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if cfg!(feature = "mysql") { |
|
|
|
if !db_url.starts_with("mysql:") { |
|
|
|
err!("`DATABASE_URL` should start with mysql: when using the MySQL server") |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if cfg!(feature = "postgresql") { |
|
|
|
if !db_url.starts_with("postgresql:") { |
|
|
|
err!("`DATABASE_URL` should start with postgresql: when using the PostgreSQL server") |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if let Some(ref token) = cfg.admin_token { |
|
|
|
if token.trim().is_empty() { |
|
|
|
err!("`ADMIN_TOKEN` is enabled but has an empty value. To enable the admin page without token, use `DISABLE_ADMIN_TOKEN`") |
|
|
|