Documentation
¶
Index ¶
Constants ¶
View Source
const RedactedStr = "<redacted>"
Variables ¶
This section is empty.
Functions ¶
func IsRedactedString ¶ added in v1.0.0
IsRedactedString checks if a value is the redacted placeholder
func RedactString ¶ added in v1.0.0
RedactString replaces a string with redacted placeholder
Types ¶
type Config ¶
type Config struct {
Version string
Host string `toml:"host" mapstructure:"host"`
Port int `toml:"port" mapstructure:"port"`
BaseURL string `toml:"baseUrl" mapstructure:"baseUrl"`
SessionSecret string `toml:"sessionSecret" mapstructure:"sessionSecret"`
LogLevel string `toml:"logLevel" mapstructure:"logLevel"`
LogPath string `toml:"logPath" mapstructure:"logPath"`
LogMaxSize int `toml:"logMaxSize" mapstructure:"logMaxSize"`
LogMaxBackups int `toml:"logMaxBackups" mapstructure:"logMaxBackups"`
DataDir string `toml:"dataDir" mapstructure:"dataDir"`
CheckForUpdates bool `toml:"checkForUpdates" mapstructure:"checkForUpdates"`
PprofEnabled bool `toml:"pprofEnabled" mapstructure:"pprofEnabled"`
MetricsEnabled bool `toml:"metricsEnabled" mapstructure:"metricsEnabled"`
MetricsHost string `toml:"metricsHost" mapstructure:"metricsHost"`
MetricsPort int `toml:"metricsPort" mapstructure:"metricsPort"`
MetricsBasicAuthUsers string `toml:"metricsBasicAuthUsers" mapstructure:"metricsBasicAuthUsers"`
TrackerIconsFetchEnabled bool `toml:"trackerIconsFetchEnabled" mapstructure:"trackerIconsFetchEnabled"`
ExternalProgramAllowList []string `toml:"externalProgramAllowList" mapstructure:"externalProgramAllowList"`
// CrossSeedRecoverErroredTorrents enables recovery attempts for errored/missingFiles torrents
// in cross-seed automation. When enabled, qui will pause, recheck, and resume errored torrents
// before candidate selection. This can cause automation runs to take 25+ minutes per torrent.
// When disabled (default), errored torrents are simply excluded from candidate selection.
CrossSeedRecoverErroredTorrents bool `toml:"crossSeedRecoverErroredTorrents" mapstructure:"crossSeedRecoverErroredTorrents"`
// AuthDisabled disables all authentication when both QUI__AUTH_DISABLED=true and
// QUI__I_ACKNOWLEDGE_THIS_IS_A_BAD_IDEA=true are set. Intended for deployments behind
// a reverse proxy that handles authentication. Use IsAuthDisabled() to check.
AuthDisabled bool `toml:"authDisabled" mapstructure:"authDisabled"`
IAcknowledgeThisIsABadIdea bool `toml:"I_ACKNOWLEDGE_THIS_IS_A_BAD_IDEA" mapstructure:"I_ACKNOWLEDGE_THIS_IS_A_BAD_IDEA"`
AuthDisabledAllowedCIDRs []string `toml:"authDisabledAllowedCIDRs" mapstructure:"authDisabledAllowedCIDRs"`
// OIDC Configuration
OIDCEnabled bool `toml:"oidcEnabled" mapstructure:"oidcEnabled"`
OIDCIssuer string `toml:"oidcIssuer" mapstructure:"oidcIssuer"`
OIDCClientID string `toml:"oidcClientId" mapstructure:"oidcClientId"`
OIDCClientSecret string `toml:"oidcClientSecret" mapstructure:"oidcClientSecret"`
OIDCRedirectURL string `toml:"oidcRedirectUrl" mapstructure:"oidcRedirectUrl"`
OIDCDisableBuiltInLogin bool `toml:"oidcDisableBuiltInLogin" mapstructure:"oidcDisableBuiltInLogin"`
}
Config represents the application configuration
func (*Config) IsAuthDisabled ¶ added in v1.14.0
IsAuthDisabled returns true only when both AuthDisabled and IAcknowledgeThisIsABadIdea are set, requiring the operator to explicitly acknowledge the risks of running without authentication.
func (*Config) ParseAuthDisabledAllowedCIDRs ¶ added in v1.14.0
ParseAuthDisabledAllowedCIDRs parses configured auth-disabled IP ranges. Entries can be either CIDR (for example 192.168.1.0/24) or a single IP (for example 192.168.1.10, which is treated as /32 or /128).
func (*Config) ValidateAuthDisabledConfig ¶ added in v1.14.0
ValidateAuthDisabledConfig validates required settings for auth-disabled mode.
Click to show internal directories.
Click to hide internal directories.