config

package
v0.0.0-...-e28afbe Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 25, 2021 License: AGPL-3.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ActivityPubConfig

type ActivityPubConfig struct {
	ClockTimezone                       string               `` /* 197-byte string literal not displayed */
	OutboundRateLimitQPS                float64              `` /* 195-byte string literal not displayed */
	OutboundRateLimitBurst              int                  `` /* 172-byte string literal not displayed */
	OutboundRateLimitPrunePeriodSeconds int                  `` /* 272-byte string literal not displayed */
	OutboundRateLimitPruneAgeSeconds    int                  `` /* 278-byte string literal not displayed */
	HttpSignaturesConfig                HttpSignaturesConfig `ini:"ap_http_signatures" comment:"HTTP Signatures configuration"`
	MaxInboxForwardingRecursionDepth    int                  `` /* 332-byte string literal not displayed */
	MaxDeliveryRecursionDepth           int                  `` /* 340-byte string literal not displayed */
	RetryPageSize                       int                  `` /* 165-byte string literal not displayed */
	RetryAbandonLimit                   int                  `` /* 275-byte string literal not displayed */
	RetrySleepPeriod                    int                  `` /* 390-byte string literal not displayed */
}

Configuration section specifically for ActivityPub.

func (*ActivityPubConfig) Verify

func (c *ActivityPubConfig) Verify() error

type Config

type Config struct {
	ServerConfig      ServerConfig      `ini:"server" comment:"HTTP server configuration"`
	OAuthConfig       OAuth2Config      `ini:"oauth" comment:"OAuth 2 configuration"`
	DatabaseConfig    DatabaseConfig    `ini:"database" comment:"Database configuration"`
	ActivityPubConfig ActivityPubConfig `ini:"activitypub" comment:"ActivityPub configuration"`
	NodeInfoConfig    NodeInfoConfig    `ini:"nodeinfo" comment:"NodeInfo configuration"`
}

Overall configuration file structure

func (*Config) ClockTimezone

func (c *Config) ClockTimezone() string

func (*Config) Host

func (c *Config) Host() string

func (*Config) Schema

func (c *Config) Schema() string

func (*Config) Verify

func (c *Config) Verify() error

type DatabaseConfig

type DatabaseConfig struct {
	DatabaseKind              string         `ini:"db_database_kind" comment:"(required) Only \"postgres\" supported"`
	ConnMaxLifetimeSeconds    int            `` /* 159-byte string literal not displayed */
	MaxOpenConns              int            `` /* 151-byte string literal not displayed */
	MaxIdleConns              int            `` /* 245-byte string literal not displayed */
	DefaultCollectionPageSize int            `` /* 148-byte string literal not displayed */
	MaxCollectionPageSize     int            `` /* 153-byte string literal not displayed */
	PostgresConfig            PostgresConfig `` /* 135-byte string literal not displayed */
}

Configuration section specifically for the database.

func (*DatabaseConfig) Verify

func (c *DatabaseConfig) Verify() error

type HttpSignaturesConfig

type HttpSignaturesConfig struct {
	Algorithms      []string `` /* 269-byte string literal not displayed */
	DigestAlgorithm string   `ini:"http_sig_digest_algorithm" comment:"(default: \"SHA-256\") RFC 3230 algorithm for use in signing header Digests"`
	GetHeaders      []string `` /* 182-byte string literal not displayed */
	PostHeaders     []string `` /* 204-byte string literal not displayed */
}

Configuration for HTTP Signatures.

func (*HttpSignaturesConfig) Verify

func (c *HttpSignaturesConfig) Verify() error

type NodeInfoConfig

type NodeInfoConfig struct {
	EnableNodeInfo                         bool `` /* 273-byte string literal not displayed */
	EnableNodeInfo2                        bool `` /* 278-byte string literal not displayed */
	EnableAnonymousStatsSharing            bool `` /* 387-byte string literal not displayed */
	AnonymizedStatsCacheInvalidatedSeconds int  `` /* 245-byte string literal not displayed */
}

Configuration section specifically for NodeInfo.

func (*NodeInfoConfig) Verify

func (c *NodeInfoConfig) Verify() error

type OAuth2Config

type OAuth2Config struct {
	AccessTokenExpiry  int `` /* 153-byte string literal not displayed */
	RefreshTokenExpiry int `` /* 154-byte string literal not displayed */
}

func (*OAuth2Config) Verify

func (c *OAuth2Config) Verify() error

type PostgresConfig

type PostgresConfig struct {
	DatabaseName            string `ini:"pg_db_name" comment:"(required) Database name"`
	UserName                string `ini:"pg_user" comment:"(required) User to connect as (any password will be prompted)"`
	Host                    string `ini:"pg_host" comment:"(default: localhost) The Postgres host to connect to"`
	Port                    int    `ini:"pg_port" comment:"(default: 5432) The port to connect to"`
	Password                string `ini:"password" comment:"The database password to use to connect"`
	SSLMode                 string `` /* 150-byte string literal not displayed */
	FallbackApplicationName string `ini:"pg_fallback_application_name" comment:"An application_name to fall back to if one is not provided"`
	ConnectTimeout          int    `` /* 131-byte string literal not displayed */
	SSLCert                 string `ini:"pg_ssl_cert" comment:"PEM-encoded certificate file location"`
	SSLKey                  string `ini:"pg_ssl_key" comment:"PEM-encoded private key file location"`
	SSLRootCert             string `ini:"pg_ssl_root_cert" comment:"PEM-encoded root certificate file location"`
	Schema                  string `ini:"pg_schema" comment:"Postgres schema prefix to use"`
}

Configuration section specifically for Postgres databases.

func (*PostgresConfig) Verify

func (c *PostgresConfig) Verify() error

type ServerConfig

type ServerConfig struct {
	Host                        string `` /* 142-byte string literal not displayed */
	HttpsPort                   int    `ini:"sr_https_port" comment:"(default: 443) Port to serve HTTPS requests on"`
	CertFile                    string `ini:"sr_cert_file" comment:"(required) Path to the certificate file used to establish TLS connections for HTTPS"`
	KeyFile                     string `ini:"sr_key_file" comment:"(required) Path to the private key file used to establish TLS connections for HTTPS"`
	CookieAuthKeyFile           string `ini:"sr_cookie_auth_key_file" comment:"(required) Path to private key file used for cookie authentication"`
	CookieEncryptionKeyFile     string `ini:"sr_cookie_encryption_key_file" comment:"Path to private key file used for cookie encryption"`
	CookieMaxAge                int    `` /* 187-byte string literal not displayed */
	CookieSessionName           string `ini:"sr_cookie_session_name" comment:"(required) Cookie session name to use for the application"`
	HttpsReadTimeoutSeconds     int    `` /* 132-byte string literal not displayed */
	HttpsWriteTimeoutSeconds    int    `` /* 134-byte string literal not displayed */
	HttpClientTimeoutSeconds    int    `` /* 132-byte string literal not displayed */
	RedirectReadTimeoutSeconds  int    `` /* 169-byte string literal not displayed */
	RedirectWriteTimeoutSeconds int    `` /* 154-byte string literal not displayed */
	StaticRootDirectory         string `` /* 202-byte string literal not displayed */
	SaltSize                    int    `` /* 143-byte string literal not displayed */
	BCryptStrength              int    `` /* 240-byte string literal not displayed */
	RSAKeySize                  int    `` /* 135-byte string literal not displayed */
}

Configuration section specifically for the HTTP server.

func (*ServerConfig) Verify

func (c *ServerConfig) Verify() error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL