config

package
v0.8.0 Latest Latest
Warning

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

Go to latest
Published: Apr 23, 2026 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config added in v0.0.8

type Config struct {
	// LogLevel represents log verbosity. Overridden to "debug" if DevMode is true.
	LogLevel string
	// DevMode when set to "true" logs in unstructured text instead of JSON.
	DevMode bool
	// DeletionEnabled represent whether external components should be deleted based on K8s resources deletion
	DeletionEnabled bool
	// DefaultOriginDomain represents a valid domain to define in default origin.
	DefaultOriginDomain string
	// CloudFrontPriceClass determines how many edge locations CloudFront will use for your distribution.
	// ref: https://docs.aws.amazon.com/sdk-for-go/api/service/cloudfront/
	CloudFrontPriceClass string
	// CloudFrontSecurityPolicy the minimum SSL/TLS protocol that CloudFront can use to communicate with viewers.
	// ref: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html
	CloudFrontSecurityPolicy string
	// CloudFrontEnableLogging if should enable cloudfront logging.
	CloudFrontEnableLogging bool
	// CloudFrontS3BucketLog if logging enabled represents the S3 Bucket URL to persists, for example myawslogbucket.s3.amazonaws.com.
	CloudFrontS3BucketLog string
	// CloudFrontS3BucketLogPrefix is the prefix that should be added to the S3 path when sending logs. The directory on which logs should be stored.
	// Trailing slashes are ignored ("foo/bar/" is the same as "foo/bar").
	CloudFrontS3BucketLogPrefix string
	// CloudFrontEnableIPV6 if should enable ipv6 for distribution responses.
	CloudFrontEnableIPV6 bool
	// CloudFrontDescriptionTemplate the description template for distribution.
	CloudFrontDescriptionTemplate string
	// CloudFrontCustomTags all custom tags that will be persisted to distribution.
	CloudFrontCustomTags map[string]string
	// CloudFrontDefaultCachingPolicyID is the default caching policy ID.
	CloudFrontDefaultCachingPolicyID string
	// CloudFrontDefaultDistributionRequestPolicyID is the default request policy for distributions.
	CloudFrontDefaultCacheRequestPolicyID string
	// CloudFrontDefaultPublicOriginAccessRequestPolicyID is the default request policy for public origin access.
	CloudFrontDefaultPublicOriginAccessRequestPolicyID string
	// CloudFrontDefaultBucketOriginAccessRequestPolicyID is the default request policy for bucket origin access.
	CloudFrontDefaultBucketOriginAccessRequestPolicyID string
	// IsCreateBlocked configure whether to block creation of new CloudFront distributions. Useful when phasing out clusters or accounts, for example
	IsCreateBlocked bool
	// CreateAllowList holds a list of Ingresses namespaced names for which we should allow creation, even if IsCreateBlocked is true
	CreateAllowList []types.NamespacedName
}

Config represents all possible configurations for the Operator

func Parse

func Parse() (Config, error)

Parse environment variables into a config struct

func (Config) IsCreationAllowed added in v0.5.0

func (c Config) IsCreationAllowed(ing *networkingv1.Ingress) bool

IsCreationAllowed returns whether the creation of a new CloudFront distribution for the given Ingress should be allowed

func (Config) TLSIsEnabled added in v0.3.0

func (c Config) TLSIsEnabled() bool

TLSIsEnabled returns whether TLS is enabled

Jump to

Keyboard shortcuts

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