secretscfg

package
v0.0.2 Latest Latest
Warning

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

Go to latest
Published: Apr 13, 2026 License: AGPL-3.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// ProviderEnv represents environment variables.
	ProviderEnv = "env"
	// ProviderNoop represents the noop provider.
	ProviderNoop = "noop"
	// ProviderGCP represents GCP Secret Manager.
	ProviderGCP = "gcp"
	// ProviderSSM represents AWS SSM Parameter Store.
	ProviderSSM = "ssm"
	// ProviderKubectl represents Kubernetes secrets.
	ProviderKubectl = "kubectl"
)

Variables

This section is empty.

Functions

func ProvideSecretSourceFromConfig

func ProvideSecretSourceFromConfig(ctx context.Context, cfg *Config, logger logging.Logger, tracerProvider tracing.TracerProvider, metricsProvider metrics.Provider) (secrets.SecretSource, error)

ProvideSecretSourceFromConfig provides a SecretSource from config.

func RegisterSecretSource

func RegisterSecretSource(i do.Injector)

RegisterSecretSource registers a secrets.SecretSource with the injector.

Types

type Config

type Config struct {
	GCPClient     gcp.SecretVersionAccessor `json:"-"`
	SSMClient     ssm.GetParameterAPI       `json:"-"`
	KubectlClient kubectl.SecretGetter      `json:"-"`
	Env           *env.Config               `env:"init"     envPrefix:"ENV_"     json:"env,omitempty"`
	GCP           *gcp.Config               `env:"init"     envPrefix:"GCP_"     json:"gcp,omitempty"`
	SSM           *ssm.Config               `env:"init"     envPrefix:"SSM_"     json:"ssm,omitempty"`
	Kubectl       *kubectl.Config           `env:"init"     envPrefix:"KUBECTL_" json:"kubectl,omitempty"`
	Provider      string                    `env:"PROVIDER" json:"provider"`
}

Config configures secret source selection.

func (*Config) ProvideSecretSource

func (cfg *Config) ProvideSecretSource(ctx context.Context, logger logging.Logger, tracerProvider tracing.TracerProvider, metricsProvider metrics.Provider) (secrets.SecretSource, error)

ProvideSecretSource returns a SecretSource from config.

func (*Config) ValidateWithContext

func (cfg *Config) ValidateWithContext(ctx context.Context) error

ValidateWithContext validates the config.

Jump to

Keyboard shortcuts

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