config

package
v0.0.0-...-2cd5006 Latest Latest
Warning

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

Go to latest
Published: Jun 2, 2026 License: BSD-2-Clause Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DbOpts

type DbOpts struct {
	// Format of the dump
	Format rune

	// Algorithm of the checksum of the file, "none" is used to
	// disable checksuming
	SumAlgo string

	// Number of parallel jobs for directory format
	Jobs int

	// Compression level for compressed formats, -1 means the default
	CompressLevel int

	// Purge configuration
	PurgeInterval time.Duration
	PurgeKeep     int

	// Limit schemas
	Schemas         []string
	ExcludedSchemas []string

	// Limit dumped tables
	Tables         []string
	ExcludedTables []string

	// Other pg_dump options to use
	PgDumpOpts []string

	// Whether to force the dump of large objects or not with pg_dump -b or
	// -B, or let pg_dump use its default. 0 means default, 1 include
	// blobs, 2 exclude blobs.
	WithBlobs int

	// Connection user for that database
	Username string
}

type Options

type Options struct {
	NoConfigFile      bool
	BinDirectory      string
	Directory         string
	Mode              int
	Host              string
	Port              int
	Username          string
	ConnDb            string
	ExcludeDbs        []string
	Dbnames           []string
	WithTemplates     bool
	Format            rune
	DirJobs           int
	CompressLevel     int
	Jobs              int
	PauseTimeout      int
	PurgeInterval     time.Duration
	PurgeKeep         int
	SumAlgo           string
	PreHook           string
	PostHook          string
	PgDumpOpts        []string
	PerDbOpts         map[string]*DbOpts
	CfgFile           string
	TimeFormat        string
	Verbose           bool
	Quiet             bool
	Encrypt           bool
	EncryptKeepSrc    bool
	CipherPassphrase  string
	CipherPublicKey   string
	CipherPrivateKey  string
	Decrypt           bool
	WithRolePasswords bool
	DumpOnly          bool
	UniformTimestamp  bool

	Upload         string // values are none, b2, s3, sftp, gcs
	UploadPrefix   string
	DeleteUploaded bool
	Download       string // values are none, b2, s3, sftp, gcs
	ListRemote     string // values are none, b2, s3, sftp, gcs
	PurgeRemote    bool
	S3Region       string
	S3Bucket       string
	S3EndPoint     string
	S3Profile      string
	S3KeyID        string
	S3Secret       string
	S3ForcePath    bool
	S3DisableTLS   bool

	B2Bucket                string
	B2KeyID                 string
	B2AppKey                string
	B2ForcePath             bool
	B2ConcurrentConnections int

	SFTPHost             string
	SFTPPort             string
	SFTPUsername         string
	SFTPPassword         string
	SFTPDirectory        string
	SFTPIdentityFile     string // path to private key
	SFTPIgnoreKnownHosts bool

	GCSBucket          string
	GCSEndPoint        string
	GCSCredentialsFile string

	AzureContainer string
	AzureAccount   string
	AzureKey       string
	AzureEndpoint  string
}

options struct holds command line and configuration file options

func DefaultOptions

func DefaultOptions() Options

func LoadConfigurationFile

func LoadConfigurationFile(path string, l *logger.LevelLog) (Options, error)

func MergeCliAndConfigOptions

func MergeCliAndConfigOptions(cliOpts Options, configOpts Options, onCli []string) Options

func ParseCli

func ParseCli(args []string, defaultCfg string) (Options, []string, error)

type ParseCliResult

type ParseCliResult struct {
	ShowHelp     bool
	ShowVersion  bool
	LegacyConfig string
	ShowConfig   bool
}

parseCliResult is use to handle utility flags like help, version, that make the program end early

func (*ParseCliResult) Error

func (*ParseCliResult) Error() string

Jump to

Keyboard shortcuts

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