aws_s3_bucket_lifecycle_configuration

package
v0.0.0-...-4deecce Latest Latest
Warning

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

Go to latest
Published: Apr 16, 2024 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Args

type Args struct {
	// Bucket: string, required
	Bucket terra.StringValue `hcl:"bucket,attr" validate:"required"`
	// ExpectedBucketOwner: string, optional
	ExpectedBucketOwner terra.StringValue `hcl:"expected_bucket_owner,attr"`
	// Id: string, optional
	Id terra.StringValue `hcl:"id,attr"`
	// Rule: min=1
	Rule []Rule `hcl:"rule,block" validate:"min=1"`
	// Timeouts: optional
	Timeouts *Timeouts `hcl:"timeouts,block"`
}

Args contains the configurations for aws_s3_bucket_lifecycle_configuration.

type Resource

type Resource struct {
	Name string
	Args Args

	DependsOn terra.Dependencies
	Lifecycle *terra.Lifecycle
	// contains filtered or unexported fields
}

Resource represents the Terraform resource aws_s3_bucket_lifecycle_configuration.

func New

func New(name string, args Args) *Resource

New creates a new instance of Resource.

func (*Resource) Attributes

func (asblc *Resource) Attributes() awsS3BucketLifecycleConfigurationAttributes

Attributes returns the attributes for Resource.

func (*Resource) Configuration

func (asblc *Resource) Configuration() interface{}

Configuration returns the configuration (args) for Resource.

func (*Resource) DependOn

func (asblc *Resource) DependOn() terra.Reference

DependOn is used for other resources to depend on Resource.

func (*Resource) Dependencies

func (asblc *Resource) Dependencies() terra.Dependencies

Dependencies returns the list of resources Resource depends_on.

func (*Resource) ImportState

func (asblc *Resource) ImportState(state io.Reader) error

ImportState imports the given attribute values into Resource's state.

func (*Resource) LifecycleManagement

func (asblc *Resource) LifecycleManagement() *terra.Lifecycle

LifecycleManagement returns the lifecycle block for Resource.

func (*Resource) LocalName

func (asblc *Resource) LocalName() string

LocalName returns the local name for Resource.

func (*Resource) State

func (asblc *Resource) State() (*awsS3BucketLifecycleConfigurationState, bool)

State returns the state and a bool indicating if Resource has state.

func (*Resource) StateMust

func (asblc *Resource) StateMust() *awsS3BucketLifecycleConfigurationState

StateMust returns the state for Resource. Panics if the state is nil.

func (*Resource) Type

func (asblc *Resource) Type() string

Type returns the Terraform object type for Resource.

type Rule

type Rule struct {
	// Id: string, required
	Id terra.StringValue `hcl:"id,attr" validate:"required"`
	// Prefix: string, optional
	Prefix terra.StringValue `hcl:"prefix,attr"`
	// Status: string, required
	Status terra.StringValue `hcl:"status,attr" validate:"required"`
	// RuleAbortIncompleteMultipartUpload: optional
	AbortIncompleteMultipartUpload *RuleAbortIncompleteMultipartUpload `hcl:"abort_incomplete_multipart_upload,block"`
	// RuleExpiration: optional
	Expiration *RuleExpiration `hcl:"expiration,block"`
	// RuleFilter: optional
	Filter *RuleFilter `hcl:"filter,block"`
	// RuleNoncurrentVersionExpiration: optional
	NoncurrentVersionExpiration *RuleNoncurrentVersionExpiration `hcl:"noncurrent_version_expiration,block"`
	// RuleNoncurrentVersionTransition: min=0
	NoncurrentVersionTransition []RuleNoncurrentVersionTransition `hcl:"noncurrent_version_transition,block" validate:"min=0"`
	// RuleTransition: min=0
	Transition []RuleTransition `hcl:"transition,block" validate:"min=0"`
}

type RuleAbortIncompleteMultipartUpload

type RuleAbortIncompleteMultipartUpload struct {
	// DaysAfterInitiation: number, optional
	DaysAfterInitiation terra.NumberValue `hcl:"days_after_initiation,attr"`
}

type RuleAbortIncompleteMultipartUploadAttributes

type RuleAbortIncompleteMultipartUploadAttributes struct {
	// contains filtered or unexported fields
}

func (RuleAbortIncompleteMultipartUploadAttributes) DaysAfterInitiation

func (RuleAbortIncompleteMultipartUploadAttributes) InternalRef

func (RuleAbortIncompleteMultipartUploadAttributes) InternalTokens

func (RuleAbortIncompleteMultipartUploadAttributes) InternalWithRef

type RuleAbortIncompleteMultipartUploadState

type RuleAbortIncompleteMultipartUploadState struct {
	DaysAfterInitiation float64 `json:"days_after_initiation"`
}

type RuleAttributes

type RuleAttributes struct {
	// contains filtered or unexported fields
}

func (RuleAttributes) AbortIncompleteMultipartUpload

func (r RuleAttributes) AbortIncompleteMultipartUpload() terra.ListValue[RuleAbortIncompleteMultipartUploadAttributes]

func (RuleAttributes) Expiration

func (RuleAttributes) Filter

func (RuleAttributes) Id

func (RuleAttributes) InternalRef

func (r RuleAttributes) InternalRef() (terra.Reference, error)

func (RuleAttributes) InternalTokens

func (r RuleAttributes) InternalTokens() (hclwrite.Tokens, error)

func (RuleAttributes) InternalWithRef

func (r RuleAttributes) InternalWithRef(ref terra.Reference) RuleAttributes

func (RuleAttributes) NoncurrentVersionExpiration

func (RuleAttributes) NoncurrentVersionTransition

func (RuleAttributes) Prefix

func (r RuleAttributes) Prefix() terra.StringValue

func (RuleAttributes) Status

func (r RuleAttributes) Status() terra.StringValue

func (RuleAttributes) Transition

type RuleExpiration

type RuleExpiration struct {
	// Date: string, optional
	Date terra.StringValue `hcl:"date,attr"`
	// Days: number, optional
	Days terra.NumberValue `hcl:"days,attr"`
	// ExpiredObjectDeleteMarker: bool, optional
	ExpiredObjectDeleteMarker terra.BoolValue `hcl:"expired_object_delete_marker,attr"`
}

type RuleExpirationAttributes

type RuleExpirationAttributes struct {
	// contains filtered or unexported fields
}

func (RuleExpirationAttributes) Date

func (RuleExpirationAttributes) Days

func (RuleExpirationAttributes) ExpiredObjectDeleteMarker

func (e RuleExpirationAttributes) ExpiredObjectDeleteMarker() terra.BoolValue

func (RuleExpirationAttributes) InternalRef

func (e RuleExpirationAttributes) InternalRef() (terra.Reference, error)

func (RuleExpirationAttributes) InternalTokens

func (e RuleExpirationAttributes) InternalTokens() (hclwrite.Tokens, error)

func (RuleExpirationAttributes) InternalWithRef

type RuleExpirationState

type RuleExpirationState struct {
	Date                      string  `json:"date"`
	Days                      float64 `json:"days"`
	ExpiredObjectDeleteMarker bool    `json:"expired_object_delete_marker"`
}

type RuleFilter

type RuleFilter struct {
	// ObjectSizeGreaterThan: string, optional
	ObjectSizeGreaterThan terra.StringValue `hcl:"object_size_greater_than,attr"`
	// ObjectSizeLessThan: string, optional
	ObjectSizeLessThan terra.StringValue `hcl:"object_size_less_than,attr"`
	// Prefix: string, optional
	Prefix terra.StringValue `hcl:"prefix,attr"`
	// RuleFilterAnd: optional
	And *RuleFilterAnd `hcl:"and,block"`
	// RuleFilterTag: optional
	Tag *RuleFilterTag `hcl:"tag,block"`
}

type RuleFilterAnd

type RuleFilterAnd struct {
	// ObjectSizeGreaterThan: number, optional
	ObjectSizeGreaterThan terra.NumberValue `hcl:"object_size_greater_than,attr"`
	// ObjectSizeLessThan: number, optional
	ObjectSizeLessThan terra.NumberValue `hcl:"object_size_less_than,attr"`
	// Prefix: string, optional
	Prefix terra.StringValue `hcl:"prefix,attr"`
	// Tags: map of string, optional
	Tags terra.MapValue[terra.StringValue] `hcl:"tags,attr"`
}

type RuleFilterAndAttributes

type RuleFilterAndAttributes struct {
	// contains filtered or unexported fields
}

func (RuleFilterAndAttributes) InternalRef

func (a RuleFilterAndAttributes) InternalRef() (terra.Reference, error)

func (RuleFilterAndAttributes) InternalTokens

func (a RuleFilterAndAttributes) InternalTokens() (hclwrite.Tokens, error)

func (RuleFilterAndAttributes) InternalWithRef

func (RuleFilterAndAttributes) ObjectSizeGreaterThan

func (a RuleFilterAndAttributes) ObjectSizeGreaterThan() terra.NumberValue

func (RuleFilterAndAttributes) ObjectSizeLessThan

func (a RuleFilterAndAttributes) ObjectSizeLessThan() terra.NumberValue

func (RuleFilterAndAttributes) Prefix

func (RuleFilterAndAttributes) Tags

type RuleFilterAndState

type RuleFilterAndState struct {
	ObjectSizeGreaterThan float64           `json:"object_size_greater_than"`
	ObjectSizeLessThan    float64           `json:"object_size_less_than"`
	Prefix                string            `json:"prefix"`
	Tags                  map[string]string `json:"tags"`
}

type RuleFilterAttributes

type RuleFilterAttributes struct {
	// contains filtered or unexported fields
}

func (RuleFilterAttributes) And

func (RuleFilterAttributes) InternalRef

func (f RuleFilterAttributes) InternalRef() (terra.Reference, error)

func (RuleFilterAttributes) InternalTokens

func (f RuleFilterAttributes) InternalTokens() (hclwrite.Tokens, error)

func (RuleFilterAttributes) InternalWithRef

func (RuleFilterAttributes) ObjectSizeGreaterThan

func (f RuleFilterAttributes) ObjectSizeGreaterThan() terra.StringValue

func (RuleFilterAttributes) ObjectSizeLessThan

func (f RuleFilterAttributes) ObjectSizeLessThan() terra.StringValue

func (RuleFilterAttributes) Prefix

func (RuleFilterAttributes) Tag

type RuleFilterState

type RuleFilterState struct {
	ObjectSizeGreaterThan string               `json:"object_size_greater_than"`
	ObjectSizeLessThan    string               `json:"object_size_less_than"`
	Prefix                string               `json:"prefix"`
	And                   []RuleFilterAndState `json:"and"`
	Tag                   []RuleFilterTagState `json:"tag"`
}

type RuleFilterTag

type RuleFilterTag struct {
	// Key: string, required
	Key terra.StringValue `hcl:"key,attr" validate:"required"`
	// Value: string, required
	Value terra.StringValue `hcl:"value,attr" validate:"required"`
}

type RuleFilterTagAttributes

type RuleFilterTagAttributes struct {
	// contains filtered or unexported fields
}

func (RuleFilterTagAttributes) InternalRef

func (t RuleFilterTagAttributes) InternalRef() (terra.Reference, error)

func (RuleFilterTagAttributes) InternalTokens

func (t RuleFilterTagAttributes) InternalTokens() (hclwrite.Tokens, error)

func (RuleFilterTagAttributes) InternalWithRef

func (RuleFilterTagAttributes) Key

func (RuleFilterTagAttributes) Value

type RuleFilterTagState

type RuleFilterTagState struct {
	Key   string `json:"key"`
	Value string `json:"value"`
}

type RuleNoncurrentVersionExpiration

type RuleNoncurrentVersionExpiration struct {
	// NewerNoncurrentVersions: string, optional
	NewerNoncurrentVersions terra.StringValue `hcl:"newer_noncurrent_versions,attr"`
	// NoncurrentDays: number, optional
	NoncurrentDays terra.NumberValue `hcl:"noncurrent_days,attr"`
}

type RuleNoncurrentVersionExpirationAttributes

type RuleNoncurrentVersionExpirationAttributes struct {
	// contains filtered or unexported fields
}

func (RuleNoncurrentVersionExpirationAttributes) InternalRef

func (RuleNoncurrentVersionExpirationAttributes) InternalTokens

func (RuleNoncurrentVersionExpirationAttributes) InternalWithRef

func (RuleNoncurrentVersionExpirationAttributes) NewerNoncurrentVersions

func (nve RuleNoncurrentVersionExpirationAttributes) NewerNoncurrentVersions() terra.StringValue

func (RuleNoncurrentVersionExpirationAttributes) NoncurrentDays

type RuleNoncurrentVersionExpirationState

type RuleNoncurrentVersionExpirationState struct {
	NewerNoncurrentVersions string  `json:"newer_noncurrent_versions"`
	NoncurrentDays          float64 `json:"noncurrent_days"`
}

type RuleNoncurrentVersionTransition

type RuleNoncurrentVersionTransition struct {
	// NewerNoncurrentVersions: string, optional
	NewerNoncurrentVersions terra.StringValue `hcl:"newer_noncurrent_versions,attr"`
	// NoncurrentDays: number, optional
	NoncurrentDays terra.NumberValue `hcl:"noncurrent_days,attr"`
	// StorageClass: string, required
	StorageClass terra.StringValue `hcl:"storage_class,attr" validate:"required"`
}

type RuleNoncurrentVersionTransitionAttributes

type RuleNoncurrentVersionTransitionAttributes struct {
	// contains filtered or unexported fields
}

func (RuleNoncurrentVersionTransitionAttributes) InternalRef

func (RuleNoncurrentVersionTransitionAttributes) InternalTokens

func (RuleNoncurrentVersionTransitionAttributes) InternalWithRef

func (RuleNoncurrentVersionTransitionAttributes) NewerNoncurrentVersions

func (nvt RuleNoncurrentVersionTransitionAttributes) NewerNoncurrentVersions() terra.StringValue

func (RuleNoncurrentVersionTransitionAttributes) NoncurrentDays

func (RuleNoncurrentVersionTransitionAttributes) StorageClass

type RuleNoncurrentVersionTransitionState

type RuleNoncurrentVersionTransitionState struct {
	NewerNoncurrentVersions string  `json:"newer_noncurrent_versions"`
	NoncurrentDays          float64 `json:"noncurrent_days"`
	StorageClass            string  `json:"storage_class"`
}

type RuleState

type RuleState struct {
	Id                             string                                    `json:"id"`
	Prefix                         string                                    `json:"prefix"`
	Status                         string                                    `json:"status"`
	AbortIncompleteMultipartUpload []RuleAbortIncompleteMultipartUploadState `json:"abort_incomplete_multipart_upload"`
	Expiration                     []RuleExpirationState                     `json:"expiration"`
	Filter                         []RuleFilterState                         `json:"filter"`
	NoncurrentVersionExpiration    []RuleNoncurrentVersionExpirationState    `json:"noncurrent_version_expiration"`
	NoncurrentVersionTransition    []RuleNoncurrentVersionTransitionState    `json:"noncurrent_version_transition"`
	Transition                     []RuleTransitionState                     `json:"transition"`
}

type RuleTransition

type RuleTransition struct {
	// Date: string, optional
	Date terra.StringValue `hcl:"date,attr"`
	// Days: number, optional
	Days terra.NumberValue `hcl:"days,attr"`
	// StorageClass: string, required
	StorageClass terra.StringValue `hcl:"storage_class,attr" validate:"required"`
}

type RuleTransitionAttributes

type RuleTransitionAttributes struct {
	// contains filtered or unexported fields
}

func (RuleTransitionAttributes) Date

func (RuleTransitionAttributes) Days

func (RuleTransitionAttributes) InternalRef

func (t RuleTransitionAttributes) InternalRef() (terra.Reference, error)

func (RuleTransitionAttributes) InternalTokens

func (t RuleTransitionAttributes) InternalTokens() (hclwrite.Tokens, error)

func (RuleTransitionAttributes) InternalWithRef

func (RuleTransitionAttributes) StorageClass

func (t RuleTransitionAttributes) StorageClass() terra.StringValue

type RuleTransitionState

type RuleTransitionState struct {
	Date         string  `json:"date"`
	Days         float64 `json:"days"`
	StorageClass string  `json:"storage_class"`
}

type Timeouts

type Timeouts struct {
	// Create: string, optional
	Create terra.StringValue `hcl:"create,attr"`
	// Update: string, optional
	Update terra.StringValue `hcl:"update,attr"`
}

type TimeoutsAttributes

type TimeoutsAttributes struct {
	// contains filtered or unexported fields
}

func (TimeoutsAttributes) Create

func (TimeoutsAttributes) InternalRef

func (t TimeoutsAttributes) InternalRef() (terra.Reference, error)

func (TimeoutsAttributes) InternalTokens

func (t TimeoutsAttributes) InternalTokens() (hclwrite.Tokens, error)

func (TimeoutsAttributes) InternalWithRef

func (t TimeoutsAttributes) InternalWithRef(ref terra.Reference) TimeoutsAttributes

func (TimeoutsAttributes) Update

type TimeoutsState

type TimeoutsState struct {
	Create string `json:"create"`
	Update string `json:"update"`
}

Jump to

Keyboard shortcuts

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