backends

package
v0.12.0-a.8 Latest Latest
Warning

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

Go to latest
Published: Oct 4, 2026 License: MIT Imports: 22 Imported by: 0

Documentation

Overview

Package backends holds the fixed set of state backends a factory can use. An operator selects one by bare name in a stack state declaration, and the resolver looks the name up here. The encrypter set lives in pkg/encrypters the same way.

Index

Constants

View Source
const (
	LocalName = "local"
	S3Name    = "s3"
	GCSName   = "gcs"
)

Backend names, the registry keys an operator selects in stack state.

Variables

This section is empty.

Functions

func Backends

func Backends() map[string]sdkstate.BackendType

Backends returns the state backends keyed by the bare name an operator selects in stack state. Names are unique by construction: this is one map literal, so a duplicate is a compile error.

Types

type GCSBackendConfig added in v0.11.0

type GCSBackendConfig struct {
	Bucket     string
	Prefix     *string
	KMSKeyName *string
	GCP        *gcpcfg.Configuration
	Bootstrap  *GCSBootstrapConfig
}

GCSBackendConfig is the operator-facing body under `state: gcs { ... }`.

func (*GCSBackendConfig) Validate added in v0.11.0

func (c *GCSBackendConfig) Validate() error

type GCSBootstrapConfig

type GCSBootstrapConfig struct {
	Location         *string
	Versioning       *GCSBucketVersioning
	IAMConfiguration *GCSBucketIAMConfiguration
	Labels           *map[string]string
}

type GCSBucketIAMConfiguration

type GCSBucketIAMConfiguration struct {
	PublicAccessPrevention   *string
	UniformBucketLevelAccess *GCSBucketUniformBucketLevelAccess
}

type GCSBucketUniformBucketLevelAccess

type GCSBucketUniformBucketLevelAccess struct {
	Enabled bool
}

type GCSBucketVersioning

type GCSBucketVersioning struct {
	Enabled bool
}

type LocalBackendConfig

type LocalBackendConfig struct {
	Path string
}

LocalBackendConfig is the operator-facing body under `state: local { ... }`.

type S3BackendConfig added in v0.7.0

type S3BackendConfig struct {
	Bucket       string
	Prefix       *string
	KMSKeyID     *string
	UsePathStyle *bool
	AWS          *awscfg.Configuration
	Bootstrap    *S3BootstrapConfig
}

S3BackendConfig is the operator-facing body under `state: s3 { ... }`. The aws object holds the shared AWS connection settings from pkg/awscfg; bucket, prefix, kms-key-id, use-path-style, and bootstrap are the backend's own.

func (*S3BackendConfig) Validate

func (c *S3BackendConfig) Validate() error

type S3BootstrapConfig

type S3BootstrapConfig struct {
	BucketNamespace   *string
	Versioning        *S3BucketVersioning
	PublicAccessBlock *S3BucketPublicAccessBlock
	OwnershipControls *S3BucketOwnershipControls
	Tags              *map[string]string
}

type S3BucketOwnershipControls

type S3BucketOwnershipControls struct {
	ObjectOwnership string
}

type S3BucketPublicAccessBlock

type S3BucketPublicAccessBlock struct {
	BlockPublicAcls       *bool
	BlockPublicPolicy     *bool
	IgnorePublicAcls      *bool
	RestrictPublicBuckets *bool
}

type S3BucketVersioning

type S3BucketVersioning struct {
	Status string
}

Jump to

Keyboard shortcuts

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