[bugfix] Remove hardcoded "public" db schema assumption (#4269)

This pull request closes https://codeberg.org/superseriousbusiness/gotosocial/issues/4257 by removing the hardcoded "public" schema assumption in the database migrations. Tested on a local postgres with both the default public schema, and with the connection string (gotosocial schema) mentioned in the issue. Both seem to work OK!

Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4269
Co-authored-by: tobi <tobi.smethurst@protonmail.com>
Co-committed-by: tobi <tobi.smethurst@protonmail.com>
This commit is contained in:
tobi 2025-06-13 16:05:00 +02:00 committed by tobi
commit 726584287a
5 changed files with 44 additions and 43 deletions

View file

@ -56,31 +56,32 @@ func InitTestConfig() {
func testDefaults() config.Configuration {
return config.Configuration{
LogLevel: envStr("GTS_LOG_LEVEL", "error"),
LogTimestampFormat: "02/01/2006 15:04:05.000",
LogDbQueries: true,
ApplicationName: "gotosocial",
LandingPageUser: "",
ConfigPath: "",
Host: "localhost:8080",
AccountDomain: "localhost:8080",
Protocol: "http",
BindAddress: "127.0.0.1",
Port: 8080,
TrustedProxies: []string{"127.0.0.1/32", "::1"},
DbType: envStr("GTS_DB_TYPE", "sqlite"),
DbAddress: envStr("GTS_DB_ADDRESS", ":memory:"),
DbPort: envInt("GTS_DB_PORT", 0),
DbUser: envStr("GTS_DB_USER", ""),
DbPassword: envStr("GTS_DB_PASSWORD", ""),
DbDatabase: envStr("GTS_DB_DATABASE", ""),
DbTLSMode: envStr("GTS_DB_TLS_MODE", ""),
DbTLSCACert: envStr("GTS_DB_TLS_CA_CERT", ""),
DbMaxOpenConnsMultiplier: 8,
DbSqliteJournalMode: "WAL",
DbSqliteSynchronous: "NORMAL",
DbSqliteCacheSize: 8 * bytesize.MiB,
DbSqliteBusyTimeout: time.Minute * 5,
LogLevel: envStr("GTS_LOG_LEVEL", "error"),
LogTimestampFormat: "02/01/2006 15:04:05.000",
LogDbQueries: true,
ApplicationName: "gotosocial",
LandingPageUser: "",
ConfigPath: "",
Host: "localhost:8080",
AccountDomain: "localhost:8080",
Protocol: "http",
BindAddress: "127.0.0.1",
Port: 8080,
TrustedProxies: []string{"127.0.0.1/32", "::1"},
DbType: envStr("GTS_DB_TYPE", "sqlite"),
DbAddress: envStr("GTS_DB_ADDRESS", ":memory:"),
DbPort: envInt("GTS_DB_PORT", 0),
DbUser: envStr("GTS_DB_USER", ""),
DbPassword: envStr("GTS_DB_PASSWORD", ""),
DbDatabase: envStr("GTS_DB_DATABASE", ""),
DbTLSMode: envStr("GTS_DB_TLS_MODE", ""),
DbTLSCACert: envStr("GTS_DB_TLS_CA_CERT", ""),
DbPostgresConnectionString: envStr("GTS_DB_POSTGRES_CONNECTION_STRING", ""),
DbMaxOpenConnsMultiplier: 8,
DbSqliteJournalMode: "WAL",
DbSqliteSynchronous: "NORMAL",
DbSqliteCacheSize: 8 * bytesize.MiB,
DbSqliteBusyTimeout: time.Minute * 5,
WebTemplateBaseDir: "./web/template/",
WebAssetBaseDir: "./web/assets/",