s3object

package
v11.3.2 Latest Latest
Warning

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

Go to latest
Published: Feb 13, 2025 License: MPL-2.0 Imports: 7 Imported by: 0

README

ionoscloud_s3_object

Refer to the Terraform Registry for docs: ionoscloud_s3_object.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewS3Object_Override

func NewS3Object_Override(s S3Object, scope constructs.Construct, id *string, config *S3ObjectConfig)

Create a new {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object ionoscloud_s3_object} Resource.

func S3Object_GenerateConfigForImport

func S3Object_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, provider cdktf.TerraformProvider) cdktf.ImportableResource

Generates CDKTF code for importing a S3Object resource upon running "cdktf plan <stack-name>".

func S3Object_IsConstruct

func S3Object_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.

Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.

Returns: true if `x` is an object created from a class which extends `Construct`.

func S3Object_IsTerraformElement

func S3Object_IsTerraformElement(x interface{}) *bool

Experimental.

func S3Object_IsTerraformResource

func S3Object_IsTerraformResource(x interface{}) *bool

Experimental.

func S3Object_TfResourceType

func S3Object_TfResourceType() *string

Types

type S3Object

type S3Object interface {
	cdktf.TerraformResource
	Bucket() *string
	SetBucket(val *string)
	BucketInput() *string
	CacheControl() *string
	SetCacheControl(val *string)
	CacheControlInput() *string
	// Experimental.
	CdktfStack() cdktf.TerraformStack
	// Experimental.
	Connection() interface{}
	// Experimental.
	SetConnection(val interface{})
	// Experimental.
	ConstructNodeMetadata() *map[string]interface{}
	Content() *string
	SetContent(val *string)
	ContentDisposition() *string
	SetContentDisposition(val *string)
	ContentDispositionInput() *string
	ContentEncoding() *string
	SetContentEncoding(val *string)
	ContentEncodingInput() *string
	ContentInput() *string
	ContentLanguage() *string
	SetContentLanguage(val *string)
	ContentLanguageInput() *string
	ContentType() *string
	SetContentType(val *string)
	ContentTypeInput() *string
	// Experimental.
	Count() interface{}
	// Experimental.
	SetCount(val interface{})
	// Experimental.
	DependsOn() *[]*string
	// Experimental.
	SetDependsOn(val *[]*string)
	Etag() *string
	Expires() *string
	SetExpires(val *string)
	ExpiresInput() *string
	ForceDestroy() interface{}
	SetForceDestroy(val interface{})
	ForceDestroyInput() interface{}
	// Experimental.
	ForEach() cdktf.ITerraformIterator
	// Experimental.
	SetForEach(val cdktf.ITerraformIterator)
	// Experimental.
	Fqn() *string
	// Experimental.
	FriendlyUniqueId() *string
	Key() *string
	SetKey(val *string)
	KeyInput() *string
	// Experimental.
	Lifecycle() *cdktf.TerraformResourceLifecycle
	// Experimental.
	SetLifecycle(val *cdktf.TerraformResourceLifecycle)
	Metadata() *map[string]*string
	SetMetadata(val *map[string]*string)
	MetadataInput() *map[string]*string
	Mfa() *string
	SetMfa(val *string)
	MfaInput() *string
	// The tree node.
	Node() constructs.Node
	ObjectLockLegalHold() *string
	SetObjectLockLegalHold(val *string)
	ObjectLockLegalHoldInput() *string
	ObjectLockMode() *string
	SetObjectLockMode(val *string)
	ObjectLockModeInput() *string
	ObjectLockRetainUntilDate() *string
	SetObjectLockRetainUntilDate(val *string)
	ObjectLockRetainUntilDateInput() *string
	// Experimental.
	Provider() cdktf.TerraformProvider
	// Experimental.
	SetProvider(val cdktf.TerraformProvider)
	// Experimental.
	Provisioners() *[]interface{}
	// Experimental.
	SetProvisioners(val *[]interface{})
	// Experimental.
	RawOverrides() interface{}
	RequestPayer() *string
	SetRequestPayer(val *string)
	RequestPayerInput() *string
	ServerSideEncryption() *string
	SetServerSideEncryption(val *string)
	ServerSideEncryptionContext() *string
	SetServerSideEncryptionContext(val *string)
	ServerSideEncryptionContextInput() *string
	ServerSideEncryptionCustomerAlgorithm() *string
	SetServerSideEncryptionCustomerAlgorithm(val *string)
	ServerSideEncryptionCustomerAlgorithmInput() *string
	ServerSideEncryptionCustomerKey() *string
	SetServerSideEncryptionCustomerKey(val *string)
	ServerSideEncryptionCustomerKeyInput() *string
	ServerSideEncryptionCustomerKeyMd5() *string
	SetServerSideEncryptionCustomerKeyMd5(val *string)
	ServerSideEncryptionCustomerKeyMd5Input() *string
	ServerSideEncryptionInput() *string
	Source() *string
	SetSource(val *string)
	SourceInput() *string
	StorageClass() *string
	SetStorageClass(val *string)
	StorageClassInput() *string
	Tags() *map[string]*string
	SetTags(val *map[string]*string)
	TagsInput() *map[string]*string
	// Experimental.
	TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata
	// Experimental.
	TerraformMetaArguments() *map[string]interface{}
	// Experimental.
	TerraformResourceType() *string
	VersionId() *string
	WebsiteRedirect() *string
	SetWebsiteRedirect(val *string)
	WebsiteRedirectInput() *string
	// Adds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move.
	// Experimental.
	AddMoveTarget(moveTarget *string)
	// Experimental.
	AddOverride(path *string, value interface{})
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	HasResourceMove() interface{}
	// Experimental.
	ImportFrom(id *string, provider cdktf.TerraformProvider)
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	// Move the resource corresponding to "id" to this resource.
	//
	// Note that the resource being moved from must be marked as moved using it's instance function.
	// Experimental.
	MoveFromId(id *string)
	// Moves this resource to the target resource given by moveTarget.
	// Experimental.
	MoveTo(moveTarget *string, index interface{})
	// Moves this resource to the resource corresponding to "id".
	// Experimental.
	MoveToId(id *string)
	// Overrides the auto-generated logical ID with a specific ID.
	// Experimental.
	OverrideLogicalId(newLogicalId *string)
	ResetCacheControl()
	ResetContent()
	ResetContentDisposition()
	ResetContentEncoding()
	ResetContentLanguage()
	ResetContentType()
	ResetExpires()
	ResetForceDestroy()
	ResetMetadata()
	ResetMfa()
	ResetObjectLockLegalHold()
	ResetObjectLockMode()
	ResetObjectLockRetainUntilDate()
	// Resets a previously passed logical Id to use the auto-generated logical id again.
	// Experimental.
	ResetOverrideLogicalId()
	ResetRequestPayer()
	ResetServerSideEncryption()
	ResetServerSideEncryptionContext()
	ResetServerSideEncryptionCustomerAlgorithm()
	ResetServerSideEncryptionCustomerKey()
	ResetServerSideEncryptionCustomerKeyMd5()
	ResetSource()
	ResetStorageClass()
	ResetTags()
	ResetWebsiteRedirect()
	SynthesizeAttributes() *map[string]interface{}
	SynthesizeHclAttributes() *map[string]interface{}
	// Experimental.
	ToHclTerraform() interface{}
	// Experimental.
	ToMetadata() interface{}
	// Returns a string representation of this construct.
	ToString() *string
	// Adds this resource to the terraform JSON output.
	// Experimental.
	ToTerraform() interface{}
}

Represents a {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object ionoscloud_s3_object}.

func NewS3Object

func NewS3Object(scope constructs.Construct, id *string, config *S3ObjectConfig) S3Object

Create a new {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object ionoscloud_s3_object} Resource.

type S3ObjectConfig

type S3ObjectConfig struct {
	// Experimental.
	Connection interface{} `field:"optional" json:"connection" yaml:"connection"`
	// Experimental.
	Count interface{} `field:"optional" json:"count" yaml:"count"`
	// Experimental.
	DependsOn *[]cdktf.ITerraformDependable `field:"optional" json:"dependsOn" yaml:"dependsOn"`
	// Experimental.
	ForEach cdktf.ITerraformIterator `field:"optional" json:"forEach" yaml:"forEach"`
	// Experimental.
	Lifecycle *cdktf.TerraformResourceLifecycle `field:"optional" json:"lifecycle" yaml:"lifecycle"`
	// Experimental.
	Provider cdktf.TerraformProvider `field:"optional" json:"provider" yaml:"provider"`
	// Experimental.
	Provisioners *[]interface{} `field:"optional" json:"provisioners" yaml:"provisioners"`
	// The name of the bucket.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#bucket S3Object#bucket}
	Bucket *string `field:"required" json:"bucket" yaml:"bucket"`
	// The key of the object.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#key S3Object#key}
	Key *string `field:"required" json:"key" yaml:"key"`
	// Can be used to specify caching behavior along the request/reply chain.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#cache_control S3Object#cache_control}
	CacheControl *string `field:"optional" json:"cacheControl" yaml:"cacheControl"`
	// The utf-8 content of the object.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#content S3Object#content}
	Content *string `field:"optional" json:"content" yaml:"content"`
	// Specifies presentational information for the object.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#content_disposition S3Object#content_disposition}
	ContentDisposition *string `field:"optional" json:"contentDisposition" yaml:"contentDisposition"`
	// Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#content_encoding S3Object#content_encoding}
	ContentEncoding *string `field:"optional" json:"contentEncoding" yaml:"contentEncoding"`
	// The natural language or languages of the intended audience for the object.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#content_language S3Object#content_language}
	ContentLanguage *string `field:"optional" json:"contentLanguage" yaml:"contentLanguage"`
	// A standard MIME type describing the format of the contents.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#content_type S3Object#content_type}
	ContentType *string `field:"optional" json:"contentType" yaml:"contentType"`
	// The date and time at which the object is no longer cacheable.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#expires S3Object#expires}
	Expires *string `field:"optional" json:"expires" yaml:"expires"`
	// Specifies whether to delete the object even if it has a governance-type Object Lock in place.
	//
	// You must explicitly pass a value of true for this parameter to delete the object.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#force_destroy S3Object#force_destroy}
	ForceDestroy interface{} `field:"optional" json:"forceDestroy" yaml:"forceDestroy"`
	// A map of metadata to store with the object in IONOS Object Storage Object Storage.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#metadata S3Object#metadata}
	Metadata *map[string]*string `field:"optional" json:"metadata" yaml:"metadata"`
	// The concatenation of the authentication device's serial number, a space, and the value that is displayed on your authentication device.
	//
	// Required to permanently delete a versioned object if versioning is configured with MFA Delete enabled.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#mfa S3Object#mfa}
	Mfa *string `field:"optional" json:"mfa" yaml:"mfa"`
	// Specifies whether a legal hold will be applied to this object.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#object_lock_legal_hold S3Object#object_lock_legal_hold}
	ObjectLockLegalHold *string `field:"optional" json:"objectLockLegalHold" yaml:"objectLockLegalHold"`
	// Confirms that the requester knows that they will be charged for the request.
	//
	// Bucket owners need not specify this parameter in their requests.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#object_lock_mode S3Object#object_lock_mode}
	ObjectLockMode *string `field:"optional" json:"objectLockMode" yaml:"objectLockMode"`
	// The date and time when you want this object's Object Lock to expire.
	//
	// Must be formatted as a timestamp parameter.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#object_lock_retain_until_date S3Object#object_lock_retain_until_date}
	ObjectLockRetainUntilDate *string `field:"optional" json:"objectLockRetainUntilDate" yaml:"objectLockRetainUntilDate"`
	// Confirms that the requester knows that they will be charged for the request.
	//
	// Bucket owners need not specify this parameter in their requests.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#request_payer S3Object#request_payer}
	RequestPayer *string `field:"optional" json:"requestPayer" yaml:"requestPayer"`
	// The server-side encryption algorithm used when storing this object in IONOS Object Storage Object Storage (AES256).
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#server_side_encryption S3Object#server_side_encryption}
	ServerSideEncryption *string `field:"optional" json:"serverSideEncryption" yaml:"serverSideEncryption"`
	// Specifies the IONOS Object Storage Object Storage Encryption Context to use for object encryption.
	//
	// The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#server_side_encryption_context S3Object#server_side_encryption_context}
	ServerSideEncryptionContext *string `field:"optional" json:"serverSideEncryptionContext" yaml:"serverSideEncryptionContext"`
	// Specifies the algorithm to use to when encrypting the object (e.g., AES256).
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#server_side_encryption_customer_algorithm S3Object#server_side_encryption_customer_algorithm}
	ServerSideEncryptionCustomerAlgorithm *string `field:"optional" json:"serverSideEncryptionCustomerAlgorithm" yaml:"serverSideEncryptionCustomerAlgorithm"`
	// Specifies the 256-bit, base64-encoded encryption key to use to encrypt and decrypt your data.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#server_side_encryption_customer_key S3Object#server_side_encryption_customer_key}
	ServerSideEncryptionCustomerKey *string `field:"optional" json:"serverSideEncryptionCustomerKey" yaml:"serverSideEncryptionCustomerKey"`
	// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
	//
	// IONOS Object Storage Object Storage uses this header for a message integrity check  to ensure that the encryption key was transmitted without error
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#server_side_encryption_customer_key_md5 S3Object#server_side_encryption_customer_key_md5}
	ServerSideEncryptionCustomerKeyMd5 *string `field:"optional" json:"serverSideEncryptionCustomerKeyMd5" yaml:"serverSideEncryptionCustomerKeyMd5"`
	// The path to the file to upload.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#source S3Object#source}
	Source *string `field:"optional" json:"source" yaml:"source"`
	// The storage class of the object. Valid value is 'STANDARD'.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#storage_class S3Object#storage_class}
	StorageClass *string `field:"optional" json:"storageClass" yaml:"storageClass"`
	// The tag-set for the object.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#tags S3Object#tags}
	Tags *map[string]*string `field:"optional" json:"tags" yaml:"tags"`
	// If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL.
	//
	// IONOS Object Storage Object Storage stores the value of this header in the object metadata
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ionos-cloud/ionoscloud/6.7.2/docs/resources/s3_object#website_redirect S3Object#website_redirect}
	WebsiteRedirect *string `field:"optional" json:"websiteRedirect" yaml:"websiteRedirect"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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