aws_s3_bucket

package
v5.45.0 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 {
	// AccelerationStatus: string, optional
	AccelerationStatus terra.StringValue `hcl:"acceleration_status,attr"`
	// Acl: string, optional
	Acl terra.StringValue `hcl:"acl,attr"`
	// Bucket: string, optional
	Bucket terra.StringValue `hcl:"bucket,attr"`
	// BucketPrefix: string, optional
	BucketPrefix terra.StringValue `hcl:"bucket_prefix,attr"`
	// ForceDestroy: bool, optional
	ForceDestroy terra.BoolValue `hcl:"force_destroy,attr"`
	// Id: string, optional
	Id terra.StringValue `hcl:"id,attr"`
	// ObjectLockEnabled: bool, optional
	ObjectLockEnabled terra.BoolValue `hcl:"object_lock_enabled,attr"`
	// Policy: string, optional
	Policy terra.StringValue `hcl:"policy,attr"`
	// RequestPayer: string, optional
	RequestPayer terra.StringValue `hcl:"request_payer,attr"`
	// Tags: map of string, optional
	Tags terra.MapValue[terra.StringValue] `hcl:"tags,attr"`
	// TagsAll: map of string, optional
	TagsAll terra.MapValue[terra.StringValue] `hcl:"tags_all,attr"`
	// CorsRule: min=0
	CorsRule []CorsRule `hcl:"cors_rule,block" validate:"min=0"`
	// Grant: min=0
	Grant []Grant `hcl:"grant,block" validate:"min=0"`
	// LifecycleRule: min=0
	LifecycleRule []LifecycleRule `hcl:"lifecycle_rule,block" validate:"min=0"`
	// Logging: optional
	Logging *Logging `hcl:"logging,block"`
	// ObjectLockConfiguration: optional
	ObjectLockConfiguration *ObjectLockConfiguration `hcl:"object_lock_configuration,block"`
	// ReplicationConfiguration: optional
	ReplicationConfiguration *ReplicationConfiguration `hcl:"replication_configuration,block"`
	// ServerSideEncryptionConfiguration: optional
	ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `hcl:"server_side_encryption_configuration,block"`
	// Timeouts: optional
	Timeouts *Timeouts `hcl:"timeouts,block"`
	// Versioning: optional
	Versioning *Versioning `hcl:"versioning,block"`
	// Website: optional
	Website *Website `hcl:"website,block"`
}

Args contains the configurations for aws_s3_bucket.

type CorsRule

type CorsRule struct {
	// AllowedHeaders: list of string, optional
	AllowedHeaders terra.ListValue[terra.StringValue] `hcl:"allowed_headers,attr"`
	// AllowedMethods: list of string, required
	AllowedMethods terra.ListValue[terra.StringValue] `hcl:"allowed_methods,attr" validate:"required"`
	// AllowedOrigins: list of string, required
	AllowedOrigins terra.ListValue[terra.StringValue] `hcl:"allowed_origins,attr" validate:"required"`
	// ExposeHeaders: list of string, optional
	ExposeHeaders terra.ListValue[terra.StringValue] `hcl:"expose_headers,attr"`
	// MaxAgeSeconds: number, optional
	MaxAgeSeconds terra.NumberValue `hcl:"max_age_seconds,attr"`
}

type CorsRuleAttributes

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

func (CorsRuleAttributes) AllowedHeaders

func (cr CorsRuleAttributes) AllowedHeaders() terra.ListValue[terra.StringValue]

func (CorsRuleAttributes) AllowedMethods

func (cr CorsRuleAttributes) AllowedMethods() terra.ListValue[terra.StringValue]

func (CorsRuleAttributes) AllowedOrigins

func (cr CorsRuleAttributes) AllowedOrigins() terra.ListValue[terra.StringValue]

func (CorsRuleAttributes) ExposeHeaders

func (cr CorsRuleAttributes) ExposeHeaders() terra.ListValue[terra.StringValue]

func (CorsRuleAttributes) InternalRef

func (cr CorsRuleAttributes) InternalRef() (terra.Reference, error)

func (CorsRuleAttributes) InternalTokens

func (cr CorsRuleAttributes) InternalTokens() (hclwrite.Tokens, error)

func (CorsRuleAttributes) InternalWithRef

func (cr CorsRuleAttributes) InternalWithRef(ref terra.Reference) CorsRuleAttributes

func (CorsRuleAttributes) MaxAgeSeconds

func (cr CorsRuleAttributes) MaxAgeSeconds() terra.NumberValue

type CorsRuleState

type CorsRuleState struct {
	AllowedHeaders []string `json:"allowed_headers"`
	AllowedMethods []string `json:"allowed_methods"`
	AllowedOrigins []string `json:"allowed_origins"`
	ExposeHeaders  []string `json:"expose_headers"`
	MaxAgeSeconds  float64  `json:"max_age_seconds"`
}

type DataArgs

type DataArgs struct {
	// Bucket: string, required
	Bucket terra.StringValue `hcl:"bucket,attr" validate:"required"`
	// Id: string, optional
	Id terra.StringValue `hcl:"id,attr"`
}

DataArgs contains the configurations for aws_s3_bucket.

type DataSource

type DataSource struct {
	Name string
	Args DataArgs
}

DataSource represents the Terraform data resource aws_s3_bucket.

func Data

func Data(name string, args DataArgs) *DataSource

Data creates a new instance of DataSource.

func (*DataSource) Attributes

func (asb *DataSource) Attributes() dataAwsS3BucketAttributes

Attributes returns the attributes for DataSource.

func (*DataSource) Configuration

func (asb *DataSource) Configuration() interface{}

Configuration returns the configuration (args) for DataSource.

func (*DataSource) DataSource

func (asb *DataSource) DataSource() string

DataSource returns the Terraform object type for DataSource.

func (*DataSource) LocalName

func (asb *DataSource) LocalName() string

LocalName returns the local name for DataSource.

type Grant

type Grant struct {
	// Id: string, optional
	Id terra.StringValue `hcl:"id,attr"`
	// Permissions: set of string, required
	Permissions terra.SetValue[terra.StringValue] `hcl:"permissions,attr" validate:"required"`
	// Type: string, required
	Type terra.StringValue `hcl:"type,attr" validate:"required"`
	// Uri: string, optional
	Uri terra.StringValue `hcl:"uri,attr"`
}

type GrantAttributes

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

func (GrantAttributes) Id

func (GrantAttributes) InternalRef

func (g GrantAttributes) InternalRef() (terra.Reference, error)

func (GrantAttributes) InternalTokens

func (g GrantAttributes) InternalTokens() (hclwrite.Tokens, error)

func (GrantAttributes) InternalWithRef

func (g GrantAttributes) InternalWithRef(ref terra.Reference) GrantAttributes

func (GrantAttributes) Permissions

func (g GrantAttributes) Permissions() terra.SetValue[terra.StringValue]

func (GrantAttributes) Type

func (GrantAttributes) Uri

type GrantState

type GrantState struct {
	Id          string   `json:"id"`
	Permissions []string `json:"permissions"`
	Type        string   `json:"type"`
	Uri         string   `json:"uri"`
}

type LifecycleRule

type LifecycleRule struct {
	// AbortIncompleteMultipartUploadDays: number, optional
	AbortIncompleteMultipartUploadDays terra.NumberValue `hcl:"abort_incomplete_multipart_upload_days,attr"`
	// Enabled: bool, required
	Enabled terra.BoolValue `hcl:"enabled,attr" validate:"required"`
	// Id: string, optional
	Id terra.StringValue `hcl:"id,attr"`
	// Prefix: string, optional
	Prefix terra.StringValue `hcl:"prefix,attr"`
	// Tags: map of string, optional
	Tags terra.MapValue[terra.StringValue] `hcl:"tags,attr"`
	// LifecycleRuleExpiration: optional
	Expiration *LifecycleRuleExpiration `hcl:"expiration,block"`
	// LifecycleRuleNoncurrentVersionExpiration: optional
	NoncurrentVersionExpiration *LifecycleRuleNoncurrentVersionExpiration `hcl:"noncurrent_version_expiration,block"`
	// LifecycleRuleNoncurrentVersionTransition: min=0
	NoncurrentVersionTransition []LifecycleRuleNoncurrentVersionTransition `hcl:"noncurrent_version_transition,block" validate:"min=0"`
	// LifecycleRuleTransition: min=0
	Transition []LifecycleRuleTransition `hcl:"transition,block" validate:"min=0"`
}

type LifecycleRuleAttributes

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

func (LifecycleRuleAttributes) AbortIncompleteMultipartUploadDays

func (lr LifecycleRuleAttributes) AbortIncompleteMultipartUploadDays() terra.NumberValue

func (LifecycleRuleAttributes) Enabled

func (LifecycleRuleAttributes) Expiration

func (LifecycleRuleAttributes) Id

func (LifecycleRuleAttributes) InternalRef

func (lr LifecycleRuleAttributes) InternalRef() (terra.Reference, error)

func (LifecycleRuleAttributes) InternalTokens

func (lr LifecycleRuleAttributes) InternalTokens() (hclwrite.Tokens, error)

func (LifecycleRuleAttributes) InternalWithRef

func (LifecycleRuleAttributes) NoncurrentVersionExpiration

func (LifecycleRuleAttributes) NoncurrentVersionTransition

func (LifecycleRuleAttributes) Prefix

func (LifecycleRuleAttributes) Tags

func (LifecycleRuleAttributes) Transition

type LifecycleRuleExpiration

type LifecycleRuleExpiration 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 LifecycleRuleExpirationAttributes

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

func (LifecycleRuleExpirationAttributes) Date

func (LifecycleRuleExpirationAttributes) Days

func (LifecycleRuleExpirationAttributes) ExpiredObjectDeleteMarker

func (e LifecycleRuleExpirationAttributes) ExpiredObjectDeleteMarker() terra.BoolValue

func (LifecycleRuleExpirationAttributes) InternalRef

func (LifecycleRuleExpirationAttributes) InternalTokens

func (LifecycleRuleExpirationAttributes) InternalWithRef

type LifecycleRuleExpirationState

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

type LifecycleRuleNoncurrentVersionExpiration

type LifecycleRuleNoncurrentVersionExpiration struct {
	// Days: number, optional
	Days terra.NumberValue `hcl:"days,attr"`
}

type LifecycleRuleNoncurrentVersionExpirationAttributes

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

func (LifecycleRuleNoncurrentVersionExpirationAttributes) Days

func (LifecycleRuleNoncurrentVersionExpirationAttributes) InternalRef

func (LifecycleRuleNoncurrentVersionExpirationAttributes) InternalTokens

func (LifecycleRuleNoncurrentVersionExpirationAttributes) InternalWithRef

type LifecycleRuleNoncurrentVersionExpirationState

type LifecycleRuleNoncurrentVersionExpirationState struct {
	Days float64 `json:"days"`
}

type LifecycleRuleNoncurrentVersionTransition

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

type LifecycleRuleNoncurrentVersionTransitionAttributes

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

func (LifecycleRuleNoncurrentVersionTransitionAttributes) Days

func (LifecycleRuleNoncurrentVersionTransitionAttributes) InternalRef

func (LifecycleRuleNoncurrentVersionTransitionAttributes) InternalTokens

func (LifecycleRuleNoncurrentVersionTransitionAttributes) InternalWithRef

func (LifecycleRuleNoncurrentVersionTransitionAttributes) StorageClass

type LifecycleRuleNoncurrentVersionTransitionState

type LifecycleRuleNoncurrentVersionTransitionState struct {
	Days         float64 `json:"days"`
	StorageClass string  `json:"storage_class"`
}

type LifecycleRuleState

type LifecycleRuleState struct {
	AbortIncompleteMultipartUploadDays float64                                         `json:"abort_incomplete_multipart_upload_days"`
	Enabled                            bool                                            `json:"enabled"`
	Id                                 string                                          `json:"id"`
	Prefix                             string                                          `json:"prefix"`
	Tags                               map[string]string                               `json:"tags"`
	Expiration                         []LifecycleRuleExpirationState                  `json:"expiration"`
	NoncurrentVersionExpiration        []LifecycleRuleNoncurrentVersionExpirationState `json:"noncurrent_version_expiration"`
	NoncurrentVersionTransition        []LifecycleRuleNoncurrentVersionTransitionState `json:"noncurrent_version_transition"`
	Transition                         []LifecycleRuleTransitionState                  `json:"transition"`
}

type LifecycleRuleTransition

type LifecycleRuleTransition 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 LifecycleRuleTransitionAttributes

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

func (LifecycleRuleTransitionAttributes) Date

func (LifecycleRuleTransitionAttributes) Days

func (LifecycleRuleTransitionAttributes) InternalRef

func (LifecycleRuleTransitionAttributes) InternalTokens

func (LifecycleRuleTransitionAttributes) InternalWithRef

func (LifecycleRuleTransitionAttributes) StorageClass

type LifecycleRuleTransitionState

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

type Logging

type Logging struct {
	// TargetBucket: string, required
	TargetBucket terra.StringValue `hcl:"target_bucket,attr" validate:"required"`
	// TargetPrefix: string, optional
	TargetPrefix terra.StringValue `hcl:"target_prefix,attr"`
}

type LoggingAttributes

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

func (LoggingAttributes) InternalRef

func (l LoggingAttributes) InternalRef() (terra.Reference, error)

func (LoggingAttributes) InternalTokens

func (l LoggingAttributes) InternalTokens() (hclwrite.Tokens, error)

func (LoggingAttributes) InternalWithRef

func (l LoggingAttributes) InternalWithRef(ref terra.Reference) LoggingAttributes

func (LoggingAttributes) TargetBucket

func (l LoggingAttributes) TargetBucket() terra.StringValue

func (LoggingAttributes) TargetPrefix

func (l LoggingAttributes) TargetPrefix() terra.StringValue

type LoggingState

type LoggingState struct {
	TargetBucket string `json:"target_bucket"`
	TargetPrefix string `json:"target_prefix"`
}

type ObjectLockConfiguration

type ObjectLockConfiguration struct {
	// ObjectLockEnabled: string, optional
	ObjectLockEnabled terra.StringValue `hcl:"object_lock_enabled,attr"`
	// ObjectLockConfigurationRule: optional
	Rule *ObjectLockConfigurationRule `hcl:"rule,block"`
}

type ObjectLockConfigurationAttributes

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

func (ObjectLockConfigurationAttributes) InternalRef

func (ObjectLockConfigurationAttributes) InternalTokens

func (olc ObjectLockConfigurationAttributes) InternalTokens() (hclwrite.Tokens, error)

func (ObjectLockConfigurationAttributes) InternalWithRef

func (ObjectLockConfigurationAttributes) ObjectLockEnabled

func (olc ObjectLockConfigurationAttributes) ObjectLockEnabled() terra.StringValue

func (ObjectLockConfigurationAttributes) Rule

type ObjectLockConfigurationRule

type ObjectLockConfigurationRule struct {
	// ObjectLockConfigurationRuleDefaultRetention: required
	DefaultRetention *ObjectLockConfigurationRuleDefaultRetention `hcl:"default_retention,block" validate:"required"`
}

type ObjectLockConfigurationRuleAttributes

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

func (ObjectLockConfigurationRuleAttributes) InternalRef

func (ObjectLockConfigurationRuleAttributes) InternalTokens

func (ObjectLockConfigurationRuleAttributes) InternalWithRef

type ObjectLockConfigurationRuleDefaultRetention

type ObjectLockConfigurationRuleDefaultRetention struct {
	// Days: number, optional
	Days terra.NumberValue `hcl:"days,attr"`
	// Mode: string, required
	Mode terra.StringValue `hcl:"mode,attr" validate:"required"`
	// Years: number, optional
	Years terra.NumberValue `hcl:"years,attr"`
}

type ObjectLockConfigurationRuleDefaultRetentionAttributes

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

func (ObjectLockConfigurationRuleDefaultRetentionAttributes) Days

func (ObjectLockConfigurationRuleDefaultRetentionAttributes) InternalRef

func (ObjectLockConfigurationRuleDefaultRetentionAttributes) InternalTokens

func (ObjectLockConfigurationRuleDefaultRetentionAttributes) InternalWithRef

func (ObjectLockConfigurationRuleDefaultRetentionAttributes) Mode

func (ObjectLockConfigurationRuleDefaultRetentionAttributes) Years

type ObjectLockConfigurationRuleDefaultRetentionState

type ObjectLockConfigurationRuleDefaultRetentionState struct {
	Days  float64 `json:"days"`
	Mode  string  `json:"mode"`
	Years float64 `json:"years"`
}

type ObjectLockConfigurationRuleState

type ObjectLockConfigurationRuleState struct {
	DefaultRetention []ObjectLockConfigurationRuleDefaultRetentionState `json:"default_retention"`
}

type ObjectLockConfigurationState

type ObjectLockConfigurationState struct {
	ObjectLockEnabled string                             `json:"object_lock_enabled"`
	Rule              []ObjectLockConfigurationRuleState `json:"rule"`
}

type ReplicationConfiguration

type ReplicationConfiguration struct {
	// Role: string, required
	Role terra.StringValue `hcl:"role,attr" validate:"required"`
	// ReplicationConfigurationRules: min=1
	Rules []ReplicationConfigurationRules `hcl:"rules,block" validate:"min=1"`
}

type ReplicationConfigurationAttributes

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

func (ReplicationConfigurationAttributes) InternalRef

func (ReplicationConfigurationAttributes) InternalTokens

func (ReplicationConfigurationAttributes) InternalWithRef

func (ReplicationConfigurationAttributes) Role

func (ReplicationConfigurationAttributes) Rules

type ReplicationConfigurationRules

type ReplicationConfigurationRules struct {
	// DeleteMarkerReplicationStatus: string, optional
	DeleteMarkerReplicationStatus terra.StringValue `hcl:"delete_marker_replication_status,attr"`
	// Id: string, optional
	Id terra.StringValue `hcl:"id,attr"`
	// Prefix: string, optional
	Prefix terra.StringValue `hcl:"prefix,attr"`
	// Priority: number, optional
	Priority terra.NumberValue `hcl:"priority,attr"`
	// Status: string, required
	Status terra.StringValue `hcl:"status,attr" validate:"required"`
	// ReplicationConfigurationRulesDestination: required
	Destination *ReplicationConfigurationRulesDestination `hcl:"destination,block" validate:"required"`
	// ReplicationConfigurationRulesFilter: optional
	Filter *ReplicationConfigurationRulesFilter `hcl:"filter,block"`
	// ReplicationConfigurationRulesSourceSelectionCriteria: optional
	SourceSelectionCriteria *ReplicationConfigurationRulesSourceSelectionCriteria `hcl:"source_selection_criteria,block"`
}

type ReplicationConfigurationRulesAttributes

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

func (ReplicationConfigurationRulesAttributes) DeleteMarkerReplicationStatus

func (r ReplicationConfigurationRulesAttributes) DeleteMarkerReplicationStatus() terra.StringValue

func (ReplicationConfigurationRulesAttributes) Destination

func (ReplicationConfigurationRulesAttributes) Filter

func (ReplicationConfigurationRulesAttributes) Id

func (ReplicationConfigurationRulesAttributes) InternalRef

func (ReplicationConfigurationRulesAttributes) InternalTokens

func (ReplicationConfigurationRulesAttributes) InternalWithRef

func (ReplicationConfigurationRulesAttributes) Prefix

func (ReplicationConfigurationRulesAttributes) Priority

func (ReplicationConfigurationRulesAttributes) Status

type ReplicationConfigurationRulesDestination

type ReplicationConfigurationRulesDestination struct {
	// AccountId: string, optional
	AccountId terra.StringValue `hcl:"account_id,attr"`
	// Bucket: string, required
	Bucket terra.StringValue `hcl:"bucket,attr" validate:"required"`
	// ReplicaKmsKeyId: string, optional
	ReplicaKmsKeyId terra.StringValue `hcl:"replica_kms_key_id,attr"`
	// StorageClass: string, optional
	StorageClass terra.StringValue `hcl:"storage_class,attr"`
	// ReplicationConfigurationRulesDestinationAccessControlTranslation: optional
	AccessControlTranslation *ReplicationConfigurationRulesDestinationAccessControlTranslation `hcl:"access_control_translation,block"`
	// ReplicationConfigurationRulesDestinationMetrics: optional
	Metrics *ReplicationConfigurationRulesDestinationMetrics `hcl:"metrics,block"`
	// ReplicationConfigurationRulesDestinationReplicationTime: optional
	ReplicationTime *ReplicationConfigurationRulesDestinationReplicationTime `hcl:"replication_time,block"`
}

type ReplicationConfigurationRulesDestinationAccessControlTranslation

type ReplicationConfigurationRulesDestinationAccessControlTranslation struct {
	// Owner: string, required
	Owner terra.StringValue `hcl:"owner,attr" validate:"required"`
}

type ReplicationConfigurationRulesDestinationAccessControlTranslationAttributes

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

func (ReplicationConfigurationRulesDestinationAccessControlTranslationAttributes) InternalRef

func (ReplicationConfigurationRulesDestinationAccessControlTranslationAttributes) InternalTokens

func (ReplicationConfigurationRulesDestinationAccessControlTranslationAttributes) InternalWithRef

func (ReplicationConfigurationRulesDestinationAccessControlTranslationAttributes) Owner

type ReplicationConfigurationRulesDestinationAccessControlTranslationState

type ReplicationConfigurationRulesDestinationAccessControlTranslationState struct {
	Owner string `json:"owner"`
}

type ReplicationConfigurationRulesDestinationAttributes

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

func (ReplicationConfigurationRulesDestinationAttributes) AccountId

func (ReplicationConfigurationRulesDestinationAttributes) Bucket

func (ReplicationConfigurationRulesDestinationAttributes) InternalRef

func (ReplicationConfigurationRulesDestinationAttributes) InternalTokens

func (ReplicationConfigurationRulesDestinationAttributes) InternalWithRef

func (ReplicationConfigurationRulesDestinationAttributes) ReplicaKmsKeyId

func (ReplicationConfigurationRulesDestinationAttributes) StorageClass

type ReplicationConfigurationRulesDestinationMetrics

type ReplicationConfigurationRulesDestinationMetrics struct {
	// Minutes: number, optional
	Minutes terra.NumberValue `hcl:"minutes,attr"`
	// Status: string, optional
	Status terra.StringValue `hcl:"status,attr"`
}

type ReplicationConfigurationRulesDestinationMetricsAttributes

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

func (ReplicationConfigurationRulesDestinationMetricsAttributes) InternalRef

func (ReplicationConfigurationRulesDestinationMetricsAttributes) InternalTokens

func (ReplicationConfigurationRulesDestinationMetricsAttributes) InternalWithRef

func (ReplicationConfigurationRulesDestinationMetricsAttributes) Minutes

func (ReplicationConfigurationRulesDestinationMetricsAttributes) Status

type ReplicationConfigurationRulesDestinationMetricsState

type ReplicationConfigurationRulesDestinationMetricsState struct {
	Minutes float64 `json:"minutes"`
	Status  string  `json:"status"`
}

type ReplicationConfigurationRulesDestinationReplicationTime

type ReplicationConfigurationRulesDestinationReplicationTime struct {
	// Minutes: number, optional
	Minutes terra.NumberValue `hcl:"minutes,attr"`
	// Status: string, optional
	Status terra.StringValue `hcl:"status,attr"`
}

type ReplicationConfigurationRulesDestinationReplicationTimeAttributes

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

func (ReplicationConfigurationRulesDestinationReplicationTimeAttributes) InternalRef

func (ReplicationConfigurationRulesDestinationReplicationTimeAttributes) InternalTokens

func (ReplicationConfigurationRulesDestinationReplicationTimeAttributes) InternalWithRef

func (ReplicationConfigurationRulesDestinationReplicationTimeAttributes) Minutes

func (ReplicationConfigurationRulesDestinationReplicationTimeAttributes) Status

type ReplicationConfigurationRulesDestinationReplicationTimeState

type ReplicationConfigurationRulesDestinationReplicationTimeState struct {
	Minutes float64 `json:"minutes"`
	Status  string  `json:"status"`
}

type ReplicationConfigurationRulesDestinationState

type ReplicationConfigurationRulesDestinationState struct {
	AccountId                string                                                                  `json:"account_id"`
	Bucket                   string                                                                  `json:"bucket"`
	ReplicaKmsKeyId          string                                                                  `json:"replica_kms_key_id"`
	StorageClass             string                                                                  `json:"storage_class"`
	AccessControlTranslation []ReplicationConfigurationRulesDestinationAccessControlTranslationState `json:"access_control_translation"`
	Metrics                  []ReplicationConfigurationRulesDestinationMetricsState                  `json:"metrics"`
	ReplicationTime          []ReplicationConfigurationRulesDestinationReplicationTimeState          `json:"replication_time"`
}

type ReplicationConfigurationRulesFilter

type ReplicationConfigurationRulesFilter struct {
	// Prefix: string, optional
	Prefix terra.StringValue `hcl:"prefix,attr"`
	// Tags: map of string, optional
	Tags terra.MapValue[terra.StringValue] `hcl:"tags,attr"`
}

type ReplicationConfigurationRulesFilterAttributes

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

func (ReplicationConfigurationRulesFilterAttributes) InternalRef

func (ReplicationConfigurationRulesFilterAttributes) InternalTokens

func (ReplicationConfigurationRulesFilterAttributes) InternalWithRef

func (ReplicationConfigurationRulesFilterAttributes) Prefix

func (ReplicationConfigurationRulesFilterAttributes) Tags

type ReplicationConfigurationRulesFilterState

type ReplicationConfigurationRulesFilterState struct {
	Prefix string            `json:"prefix"`
	Tags   map[string]string `json:"tags"`
}

type ReplicationConfigurationRulesSourceSelectionCriteria

type ReplicationConfigurationRulesSourceSelectionCriteria struct {
	// ReplicationConfigurationRulesSourceSelectionCriteriaSseKmsEncryptedObjects: optional
	SseKmsEncryptedObjects *ReplicationConfigurationRulesSourceSelectionCriteriaSseKmsEncryptedObjects `hcl:"sse_kms_encrypted_objects,block"`
}

type ReplicationConfigurationRulesSourceSelectionCriteriaAttributes

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

func (ReplicationConfigurationRulesSourceSelectionCriteriaAttributes) InternalRef

func (ReplicationConfigurationRulesSourceSelectionCriteriaAttributes) InternalTokens

func (ReplicationConfigurationRulesSourceSelectionCriteriaAttributes) InternalWithRef

type ReplicationConfigurationRulesSourceSelectionCriteriaSseKmsEncryptedObjects

type ReplicationConfigurationRulesSourceSelectionCriteriaSseKmsEncryptedObjects struct {
	// Enabled: bool, required
	Enabled terra.BoolValue `hcl:"enabled,attr" validate:"required"`
}

type ReplicationConfigurationRulesSourceSelectionCriteriaSseKmsEncryptedObjectsAttributes

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

func (ReplicationConfigurationRulesSourceSelectionCriteriaSseKmsEncryptedObjectsAttributes) Enabled

func (ReplicationConfigurationRulesSourceSelectionCriteriaSseKmsEncryptedObjectsAttributes) InternalRef

func (ReplicationConfigurationRulesSourceSelectionCriteriaSseKmsEncryptedObjectsAttributes) InternalTokens

type ReplicationConfigurationRulesSourceSelectionCriteriaSseKmsEncryptedObjectsState

type ReplicationConfigurationRulesSourceSelectionCriteriaSseKmsEncryptedObjectsState struct {
	Enabled bool `json:"enabled"`
}

type ReplicationConfigurationRulesSourceSelectionCriteriaState

type ReplicationConfigurationRulesSourceSelectionCriteriaState struct {
	SseKmsEncryptedObjects []ReplicationConfigurationRulesSourceSelectionCriteriaSseKmsEncryptedObjectsState `json:"sse_kms_encrypted_objects"`
}

type ReplicationConfigurationRulesState

type ReplicationConfigurationRulesState struct {
	DeleteMarkerReplicationStatus string                                                      `json:"delete_marker_replication_status"`
	Id                            string                                                      `json:"id"`
	Prefix                        string                                                      `json:"prefix"`
	Priority                      float64                                                     `json:"priority"`
	Status                        string                                                      `json:"status"`
	Destination                   []ReplicationConfigurationRulesDestinationState             `json:"destination"`
	Filter                        []ReplicationConfigurationRulesFilterState                  `json:"filter"`
	SourceSelectionCriteria       []ReplicationConfigurationRulesSourceSelectionCriteriaState `json:"source_selection_criteria"`
}

type ReplicationConfigurationState

type ReplicationConfigurationState struct {
	Role  string                               `json:"role"`
	Rules []ReplicationConfigurationRulesState `json:"rules"`
}

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.

func New

func New(name string, args Args) *Resource

New creates a new instance of Resource.

func (*Resource) Attributes

func (asb *Resource) Attributes() awsS3BucketAttributes

Attributes returns the attributes for Resource.

func (*Resource) Configuration

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

Configuration returns the configuration (args) for Resource.

func (*Resource) DependOn

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

DependOn is used for other resources to depend on Resource.

func (*Resource) Dependencies

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

Dependencies returns the list of resources Resource depends_on.

func (*Resource) ImportState

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

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

func (*Resource) LifecycleManagement

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

LifecycleManagement returns the lifecycle block for Resource.

func (*Resource) LocalName

func (asb *Resource) LocalName() string

LocalName returns the local name for Resource.

func (*Resource) State

func (asb *Resource) State() (*awsS3BucketState, bool)

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

func (*Resource) StateMust

func (asb *Resource) StateMust() *awsS3BucketState

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

func (*Resource) Type

func (asb *Resource) Type() string

Type returns the Terraform object type for Resource.

type ServerSideEncryptionConfiguration

type ServerSideEncryptionConfiguration struct {
	// ServerSideEncryptionConfigurationRule: required
	Rule *ServerSideEncryptionConfigurationRule `hcl:"rule,block" validate:"required"`
}

type ServerSideEncryptionConfigurationAttributes

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

func (ServerSideEncryptionConfigurationAttributes) InternalRef

func (ServerSideEncryptionConfigurationAttributes) InternalTokens

func (ServerSideEncryptionConfigurationAttributes) InternalWithRef

func (ServerSideEncryptionConfigurationAttributes) Rule

type ServerSideEncryptionConfigurationRule

type ServerSideEncryptionConfigurationRule struct {
	// BucketKeyEnabled: bool, optional
	BucketKeyEnabled terra.BoolValue `hcl:"bucket_key_enabled,attr"`
	// ServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefault: required
	ApplyServerSideEncryptionByDefault *ServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefault `hcl:"apply_server_side_encryption_by_default,block" validate:"required"`
}

type ServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefault

type ServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefault struct {
	// KmsMasterKeyId: string, optional
	KmsMasterKeyId terra.StringValue `hcl:"kms_master_key_id,attr"`
	// SseAlgorithm: string, required
	SseAlgorithm terra.StringValue `hcl:"sse_algorithm,attr" validate:"required"`
}

type ServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefaultAttributes

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

func (ServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefaultAttributes) InternalRef

func (ServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefaultAttributes) InternalTokens

func (ServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefaultAttributes) InternalWithRef

func (ServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefaultAttributes) KmsMasterKeyId

func (ServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefaultAttributes) SseAlgorithm

type ServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefaultState

type ServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefaultState struct {
	KmsMasterKeyId string `json:"kms_master_key_id"`
	SseAlgorithm   string `json:"sse_algorithm"`
}

type ServerSideEncryptionConfigurationRuleAttributes

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

func (ServerSideEncryptionConfigurationRuleAttributes) BucketKeyEnabled

func (ServerSideEncryptionConfigurationRuleAttributes) InternalRef

func (ServerSideEncryptionConfigurationRuleAttributes) InternalTokens

func (ServerSideEncryptionConfigurationRuleAttributes) InternalWithRef

type ServerSideEncryptionConfigurationRuleState

type ServerSideEncryptionConfigurationRuleState struct {
	BucketKeyEnabled                   bool                                                                           `json:"bucket_key_enabled"`
	ApplyServerSideEncryptionByDefault []ServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefaultState `json:"apply_server_side_encryption_by_default"`
}

type ServerSideEncryptionConfigurationState

type ServerSideEncryptionConfigurationState struct {
	Rule []ServerSideEncryptionConfigurationRuleState `json:"rule"`
}

type Timeouts

type Timeouts struct {
	// Create: string, optional
	Create terra.StringValue `hcl:"create,attr"`
	// Delete: string, optional
	Delete terra.StringValue `hcl:"delete,attr"`
	// Read: string, optional
	Read terra.StringValue `hcl:"read,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) Delete

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) Read

func (TimeoutsAttributes) Update

type TimeoutsState

type TimeoutsState struct {
	Create string `json:"create"`
	Delete string `json:"delete"`
	Read   string `json:"read"`
	Update string `json:"update"`
}

type Versioning

type Versioning struct {
	// Enabled: bool, optional
	Enabled terra.BoolValue `hcl:"enabled,attr"`
	// MfaDelete: bool, optional
	MfaDelete terra.BoolValue `hcl:"mfa_delete,attr"`
}

type VersioningAttributes

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

func (VersioningAttributes) Enabled

func (v VersioningAttributes) Enabled() terra.BoolValue

func (VersioningAttributes) InternalRef

func (v VersioningAttributes) InternalRef() (terra.Reference, error)

func (VersioningAttributes) InternalTokens

func (v VersioningAttributes) InternalTokens() (hclwrite.Tokens, error)

func (VersioningAttributes) InternalWithRef

func (VersioningAttributes) MfaDelete

func (v VersioningAttributes) MfaDelete() terra.BoolValue

type VersioningState

type VersioningState struct {
	Enabled   bool `json:"enabled"`
	MfaDelete bool `json:"mfa_delete"`
}

type Website

type Website struct {
	// ErrorDocument: string, optional
	ErrorDocument terra.StringValue `hcl:"error_document,attr"`
	// IndexDocument: string, optional
	IndexDocument terra.StringValue `hcl:"index_document,attr"`
	// RedirectAllRequestsTo: string, optional
	RedirectAllRequestsTo terra.StringValue `hcl:"redirect_all_requests_to,attr"`
	// RoutingRules: string, optional
	RoutingRules terra.StringValue `hcl:"routing_rules,attr"`
}

type WebsiteAttributes

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

func (WebsiteAttributes) ErrorDocument

func (w WebsiteAttributes) ErrorDocument() terra.StringValue

func (WebsiteAttributes) IndexDocument

func (w WebsiteAttributes) IndexDocument() terra.StringValue

func (WebsiteAttributes) InternalRef

func (w WebsiteAttributes) InternalRef() (terra.Reference, error)

func (WebsiteAttributes) InternalTokens

func (w WebsiteAttributes) InternalTokens() (hclwrite.Tokens, error)

func (WebsiteAttributes) InternalWithRef

func (w WebsiteAttributes) InternalWithRef(ref terra.Reference) WebsiteAttributes

func (WebsiteAttributes) RedirectAllRequestsTo

func (w WebsiteAttributes) RedirectAllRequestsTo() terra.StringValue

func (WebsiteAttributes) RoutingRules

func (w WebsiteAttributes) RoutingRules() terra.StringValue

type WebsiteState

type WebsiteState struct {
	ErrorDocument         string `json:"error_document"`
	IndexDocument         string `json:"index_document"`
	RedirectAllRequestsTo string `json:"redirect_all_requests_to"`
	RoutingRules          string `json:"routing_rules"`
}

Jump to

Keyboard shortcuts

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