Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { URI string `yaml:"uri"` MigrationsDir string `yaml:"migrations_dir"` PasswordFile string `yaml:"password_file"` // Allow injection of mock DBs for unit testing. Mock DB `yaml:"-"` }
Config configures the database.
func (*Config) RegisterFlags ¶
RegisterFlags adds the flags required to configure this to the given FlagSet.
type DB ¶
type DB interface { // GetRulesConfig gets the user's ruler config GetRulesConfig(ctx context.Context, userID string) (userconfig.VersionedRulesConfig, error) // SetRulesConfig does a compare-and-swap (CAS) on the user's rules config. // `oldConfig` must precisely match the current config in order to change the config to `newConfig`. // Will return `true` if the config was updated, `false` otherwise. SetRulesConfig(ctx context.Context, userID string, oldConfig, newConfig userconfig.RulesConfig) (bool, error) // GetAllRulesConfigs gets all of the ruler configs GetAllRulesConfigs(ctx context.Context) (map[string]userconfig.VersionedRulesConfig, error) // GetRulesConfigs gets all of the configs that have been added or have // changed since the provided config. GetRulesConfigs(ctx context.Context, since userconfig.ID) (map[string]userconfig.VersionedRulesConfig, error) GetConfig(ctx context.Context, userID string) (userconfig.View, error) SetConfig(ctx context.Context, userID string, cfg userconfig.Config) error GetAllConfigs(ctx context.Context) (map[string]userconfig.View, error) GetConfigs(ctx context.Context, since userconfig.ID) (map[string]userconfig.View, error) DeactivateConfig(ctx context.Context, userID string) error RestoreConfig(ctx context.Context, userID string) error Close() error }
DB is the interface for the database.
Click to show internal directories.
Click to hide internal directories.