objectstorage

package
v6.6.5 Latest Latest
Warning

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

Go to latest
Published: Nov 29, 2024 License: MPL-2.0 Imports: 34 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrBucketPolicyNotFound = errors.New("bucket policy not found")

ErrBucketPolicyNotFound returned for 404

Functions

func DeleteAllObjectVersions

func DeleteAllObjectVersions(ctx context.Context, client *objstorage.APIClient, req *DeleteRequest) (int, error)

DeleteAllObjectVersions deletes all versions of a specified key from a general purpose bucket. If key is empty then all versions of all objects are deleted. Set `force` to `true` to override any object lock protections on object lock enabled buckets. Returns the number of objects deleted. Use `emptyBucket` to delete all versions of all objects in a bucket.

Types

type BucketCorsConfigurationModel

type BucketCorsConfigurationModel struct {
	Bucket types.String `tfsdk:"bucket"`
	Cors   []corsRule   `tfsdk:"cors_rule"`
}

BucketCorsConfigurationModel is used to create, update and delete a bucket cors configuration.

type BucketDataSourceModel

type BucketDataSourceModel struct {
	Name   types.String `tfsdk:"name"`
	Region types.String `tfsdk:"region"`
}

BucketDataSourceModel is used to represent a bucket for a data source.

type BucketLifecycleConfigurationModel

type BucketLifecycleConfigurationModel struct {
	Bucket types.String    `tfsdk:"bucket"`
	Rule   []lifecycleRule `tfsdk:"rule"`
}

BucketLifecycleConfigurationModel is used to create, update and delete a bucket lifecycle configuration.

type BucketModel

type BucketModel struct {
	Name              types.String   `tfsdk:"name"`
	Region            types.String   `tfsdk:"region"`
	ObjectLockEnabled types.Bool     `tfsdk:"object_lock_enabled"`
	ForceDestroy      types.Bool     `tfsdk:"force_destroy"`
	Timeouts          timeouts.Value `tfsdk:"timeouts"`
	Tags              types.Map      `tfsdk:"tags"`
	ID                types.String   `tfsdk:"id"`
}

BucketModel is used to represent a bucket.

type BucketPolicyModel

type BucketPolicyModel struct {
	Bucket types.String         `tfsdk:"bucket"`
	Policy jsontypes.Normalized `tfsdk:"policy"`
}

BucketPolicyModel is used to create, update and delete a bucket policy.

type BucketPublicAccessBlockResourceModel

type BucketPublicAccessBlockResourceModel struct {
	Bucket                types.String `tfsdk:"bucket"`
	BlockPublicACLS       types.Bool   `tfsdk:"block_public_acls"`
	BlockPublicPolicy     types.Bool   `tfsdk:"block_public_policy"`
	IgnorePublicACLS      types.Bool   `tfsdk:"ignore_public_acls"`
	RestrictPublicBuckets types.Bool   `tfsdk:"restrict_public_buckets"`
}

BucketPublicAccessBlockResourceModel defines the expected inputs for creating a new BucketPublicAccessBlock.

type BucketVersioningResourceModel

type BucketVersioningResourceModel struct {
	Bucket                  types.String             `tfsdk:"bucket"`
	VersioningConfiguration *versioningConfiguration `tfsdk:"versioning_configuration"`
}

BucketVersioningResourceModel defines the expected inputs for creating a new BucketVersioning.

type BucketWebsiteConfigurationModel

type BucketWebsiteConfigurationModel struct {
	Bucket                types.String           `tfsdk:"bucket"`
	IndexDocument         *indexDocument         `tfsdk:"index_document"`
	ErrorDocument         *errorDocument         `tfsdk:"error_document"`
	RedirectAllRequestsTo *redirectAllRequestsTo `tfsdk:"redirect_all_requests_to"`
	RoutingRule           []routingRule          `tfsdk:"routing_rule"`
}

BucketWebsiteConfigurationModel defines the expected inputs for creating a new BucketWebsiteConfiguration.

type Client

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

Client is a wrapper around the Object Storage client.

func NewClient

func NewClient(id, secret, region, endpoint string, insecure bool) *Client

NewClient creates a new Object Storage client with the given credentials and region.

func (*Client) CopyObject

func (c *Client) CopyObject(ctx context.Context, data *ObjectCopyResourceModel) error

CopyObject copies an object.

func (*Client) CreateBucket

func (c *Client) CreateBucket(ctx context.Context, name, location types.String, objectLock types.Bool, tags types.Map, timeout time.Duration) error

CreateBucket creates a new bucket.

func (*Client) CreateBucketCors

func (c *Client) CreateBucketCors(ctx context.Context, data *BucketCorsConfigurationModel) error

CreateBucketCors creates a new bucket cors configuration.

func (*Client) CreateBucketLifecycle

func (c *Client) CreateBucketLifecycle(ctx context.Context, data *BucketLifecycleConfigurationModel) error

CreateBucketLifecycle creates a new bucket lifecycle configuration.

func (*Client) CreateBucketPolicy

func (c *Client) CreateBucketPolicy(ctx context.Context, data *BucketPolicyModel) error

CreateBucketPolicy creates a new bucket policy.

func (*Client) CreateBucketPublicAccessBlock

func (c *Client) CreateBucketPublicAccessBlock(ctx context.Context, data *BucketPublicAccessBlockResourceModel) error

CreateBucketPublicAccessBlock creates a new BucketPublicAccessBlock.

func (*Client) CreateBucketSSE

func (c *Client) CreateBucketSSE(ctx context.Context, data *ServerSideEncryptionConfigurationModel) error

CreateBucketSSE creates a new ServerSideEncryptionConfiguration.

func (*Client) CreateBucketTags

func (c *Client) CreateBucketTags(ctx context.Context, bucketName string, tags tags.KeyValueTags) error

CreateBucketTags creates tags for a bucket.

func (*Client) CreateBucketVersioning

func (c *Client) CreateBucketVersioning(ctx context.Context, data *BucketVersioningResourceModel) error

CreateBucketVersioning creates a new BucketVersioning.

func (*Client) CreateBucketWebsite

func (c *Client) CreateBucketWebsite(ctx context.Context, data *BucketWebsiteConfigurationModel) error

CreateBucketWebsite creates a new BucketWebsiteConfiguration.

func (*Client) CreateObjectLock

func (c *Client) CreateObjectLock(ctx context.Context, data *ObjectLockConfigurationModel) error

CreateObjectLock creates a new bucket object lock configuration.

func (*Client) DeleteBucket

func (c *Client) DeleteBucket(ctx context.Context, name types.String, objectLockEnabled, forceDestroy types.Bool, timeout time.Duration) error

DeleteBucket deletes a bucket.

func (*Client) DeleteBucketCors

func (c *Client) DeleteBucketCors(ctx context.Context, bucketName types.String) error

DeleteBucketCors deletes a bucket cors configuration.

func (*Client) DeleteBucketLifecycle

func (c *Client) DeleteBucketLifecycle(ctx context.Context, bucketName types.String) error

DeleteBucketLifecycle deletes a bucket lifecycle configuration.

func (*Client) DeleteBucketPolicy

func (c *Client) DeleteBucketPolicy(ctx context.Context, bucketName types.String) error

DeleteBucketPolicy deletes a bucket policy.

func (*Client) DeleteBucketPublicAccessBlock

func (c *Client) DeleteBucketPublicAccessBlock(ctx context.Context, bucketName types.String) error

DeleteBucketPublicAccessBlock deletes a BucketPublicAccessBlock.

func (*Client) DeleteBucketSSE

func (c *Client) DeleteBucketSSE(ctx context.Context, bucketName types.String) error

DeleteBucketSSE deletes a ServerSideEncryptionConfiguration.

func (*Client) DeleteBucketVersioning

func (c *Client) DeleteBucketVersioning(ctx context.Context, data *BucketVersioningResourceModel) error

DeleteBucketVersioning deletes a BucketVersioning.

func (*Client) DeleteBucketWebsite

func (c *Client) DeleteBucketWebsite(ctx context.Context, bucketName types.String) error

DeleteBucketWebsite deletes a BucketWebsiteConfiguration.

func (*Client) DeleteObject

func (c *Client) DeleteObject(ctx context.Context, data *ObjectResourceModel) error

DeleteObject deletes an object.

func (*Client) DeleteObjectCopy

func (c *Client) DeleteObjectCopy(ctx context.Context, data *ObjectCopyResourceModel) error

DeleteObjectCopy deletes an object copy.

func (*Client) EmptyBucket

func (c *Client) EmptyBucket(ctx context.Context, bucket string, forceDestroy bool) (int64, error)

EmptyBucket deletes all objects and delete markers in the bucket. If `force` is `true` then Object Lock governance mode restrictions are bypassed and an attempt is made to remove any Object Lock legal holds. Returns the number of object versions and delete markers deleted.

func (*Client) GetBaseClient

func (c *Client) GetBaseClient() *objstorage.APIClient

GetBaseClient returns the base client.

func (*Client) GetBucket

func (c *Client) GetBucket(ctx context.Context, name types.String) (*BucketModel, bool, error)

GetBucket retrieves a bucket.

func (*Client) GetBucketCors

func (c *Client) GetBucketCors(ctx context.Context, bucketName types.String) (*BucketCorsConfigurationModel, bool, error)

GetBucketCors gets a bucket cors configuration.

func (*Client) GetBucketForDataSource

func (c *Client) GetBucketForDataSource(ctx context.Context, name types.String) (*BucketDataSourceModel, bool, error)

GetBucketForDataSource retrieves a bucket for a data source.

func (*Client) GetBucketLifecycle

func (c *Client) GetBucketLifecycle(ctx context.Context, bucketName types.String) (*BucketLifecycleConfigurationModel, bool, error)

GetBucketLifecycle gets a bucket lifecycle configuration.

func (*Client) GetBucketLocation

func (c *Client) GetBucketLocation(ctx context.Context, name types.String) (types.String, error)

GetBucketLocation retrieves the location of a bucket.

func (*Client) GetBucketPolicy

func (c *Client) GetBucketPolicy(ctx context.Context, bucketName types.String) (*BucketPolicyModel, bool, error)

GetBucketPolicy gets a bucket policy.

func (*Client) GetBucketPolicyCheck

func (c *Client) GetBucketPolicyCheck(ctx context.Context, bucketName string) (*objstorage.BucketPolicy, error)

GetBucketPolicyCheck gets a bucket policy.

func (*Client) GetBucketPublicAccessBlock

func (c *Client) GetBucketPublicAccessBlock(ctx context.Context, bucketName types.String) (*BucketPublicAccessBlockResourceModel, bool, error)

GetBucketPublicAccessBlock gets a BucketPublicAccessBlock.

func (*Client) GetBucketSSE

func (c *Client) GetBucketSSE(ctx context.Context, bucketName types.String) (*ServerSideEncryptionConfigurationModel, bool, error)

GetBucketSSE gets a ServerSideEncryptionConfiguration.

func (*Client) GetBucketVersioning

func (c *Client) GetBucketVersioning(ctx context.Context, bucketName types.String) (*BucketVersioningResourceModel, bool, error)

GetBucketVersioning gets a BucketVersioning.

func (*Client) GetBucketWebsite

func (c *Client) GetBucketWebsite(ctx context.Context, bucketName types.String) (*BucketWebsiteConfigurationModel, bool, error)

GetBucketWebsite gets a BucketWebsiteConfiguration.

func (*Client) GetObject

func (c *Client) GetObject(ctx context.Context, data *ObjectResourceModel) (*ObjectResourceModel, bool, error)

GetObject retrieves an object.

func (*Client) GetObjectCopy

GetObjectCopy gets an object copy.

func (*Client) GetObjectForDataSource

func (c *Client) GetObjectForDataSource(ctx context.Context, data *ObjectDataSourceModel) (*ObjectDataSourceModel, bool, error)

GetObjectForDataSource retrieves an object for a data source.

func (*Client) GetObjectLock

func (c *Client) GetObjectLock(ctx context.Context, name types.String) (*ObjectLockConfigurationModel, bool, error)

GetObjectLock gets a bucket object lock configuration.

func (*Client) GetObjectLockEnabled

func (c *Client) GetObjectLockEnabled(ctx context.Context, name types.String) (types.Bool, error)

GetObjectLockEnabled gets a bucket object lock configuration.

func (*Client) ListBucketTags

func (c *Client) ListBucketTags(ctx context.Context, bucketName string) (tags.KeyValueTags, error)

ListBucketTags lists tags for a bucket.

func (*Client) ListObjectTags

func (c *Client) ListObjectTags(ctx context.Context, bucketName, objectName string) (tags.KeyValueTags, error)

ListObjectTags lists tags for an object.

func (*Client) ListObjects

func (c *Client) ListObjects(ctx context.Context, data *ObjectsDataSourceModel) error

ListObjects fetches objects from a bucket.

func (*Client) SetObjectComputedAttributes

func (c *Client) SetObjectComputedAttributes(ctx context.Context, data *ObjectResourceModel, apiResponse *objstorage.APIResponse) error

SetObjectComputedAttributes sets computed attributes for an object.

func (*Client) UpdateBucketCors

func (c *Client) UpdateBucketCors(ctx context.Context, data *BucketCorsConfigurationModel) error

UpdateBucketCors updates a bucket cors configuration.

func (*Client) UpdateBucketLifecycle

func (c *Client) UpdateBucketLifecycle(ctx context.Context, data *BucketLifecycleConfigurationModel) error

UpdateBucketLifecycle updates a bucket lifecycle configuration.

func (*Client) UpdateBucketPolicy

func (c *Client) UpdateBucketPolicy(ctx context.Context, data *BucketPolicyModel) error

UpdateBucketPolicy updates a bucket policy.

func (*Client) UpdateBucketPublicAccessBlock

func (c *Client) UpdateBucketPublicAccessBlock(ctx context.Context, data *BucketPublicAccessBlockResourceModel) error

UpdateBucketPublicAccessBlock updates a BucketPublicAccessBlock.

func (*Client) UpdateBucketSSE

func (c *Client) UpdateBucketSSE(ctx context.Context, data *ServerSideEncryptionConfigurationModel) error

UpdateBucketSSE updates a ServerSideEncryptionConfiguration.

func (*Client) UpdateBucketTags

func (c *Client) UpdateBucketTags(ctx context.Context, bucketName string, new, old tags.KeyValueTags) error

UpdateBucketTags updates tags for a bucket.

func (*Client) UpdateBucketVersioning

func (c *Client) UpdateBucketVersioning(ctx context.Context, data *BucketVersioningResourceModel) error

UpdateBucketVersioning updates a BucketVersioning.

func (*Client) UpdateBucketWebsite

func (c *Client) UpdateBucketWebsite(ctx context.Context, data *BucketWebsiteConfigurationModel) error

UpdateBucketWebsite updates a BucketWebsiteConfiguration.

func (*Client) UpdateObject

func (c *Client) UpdateObject(ctx context.Context, plan, state *ObjectResourceModel) error

UpdateObject updates an object.

func (*Client) UpdateObjectCopy

func (c *Client) UpdateObjectCopy(ctx context.Context, plan, state *ObjectCopyResourceModel) error

UpdateObjectCopy updates an object copy.

func (*Client) UpdateObjectLock

func (c *Client) UpdateObjectLock(ctx context.Context, data *ObjectLockConfigurationModel) error

UpdateObjectLock updates a bucket object lock configuration.

func (*Client) UpdateObjectTags

func (c *Client) UpdateObjectTags(ctx context.Context, bucketName, objectName string, new, old tags.KeyValueTags) error

UpdateObjectTags updates tags for an object.

func (*Client) UploadObject

func (c *Client) UploadObject(ctx context.Context, data *ObjectResourceModel) (*objstorage.APIResponse, error)

UploadObject uploads an object to a bucket.

type DeleteRequest

type DeleteRequest struct {
	Bucket       string
	Key          string
	VersionID    string
	ForceDestroy bool
}

DeleteRequest represents a request to delete an object from a general purpose bucket.

type ListObjectVersionsInput

type ListObjectVersionsInput struct {
	Bucket  string
	Prefix  string
	MaxKeys int
}

ListObjectVersionsInput represents the input for the ListObjectVersionsPaginator.

type ListObjectVersionsPaginator

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

ListObjectVersionsPaginator is a paginator for listing object versions in a bucket.

func NewListObjectVersionsPaginator

func NewListObjectVersionsPaginator(client *objstorage.APIClient, input *ListObjectVersionsInput) *ListObjectVersionsPaginator

NewListObjectVersionsPaginator creates a new ListObjectVersionsPaginator.

func (*ListObjectVersionsPaginator) HasMorePages

func (p *ListObjectVersionsPaginator) HasMorePages() bool

HasMorePages returns true if there are more pages to retrieve.

func (*ListObjectVersionsPaginator) NextPage

NextPage retrieves the next page of object versions.

type ListObjectsV2Input

type ListObjectsV2Input struct {
	Bucket            string
	Prefix            *string
	Delimiter         *string
	EncodingType      *string
	ContinuationToken *string
	FetchOwner        bool
	StartAfter        *string
	MaxKeys           *int32
}

ListObjectsV2Input represents the input for the ListObjectsV2Paginator.

type ListObjectsV2Paginator

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

ListObjectsV2Paginator is a paginator for listing objects from bucket

func NewListObjectsV2Paginator

func NewListObjectsV2Paginator(client *objstorage.APIClient, input *ListObjectsV2Input) *ListObjectsV2Paginator

NewListObjectsV2Paginator creates a new ListObjectsV2Paginator.

func (*ListObjectsV2Paginator) HasMorePages

func (p *ListObjectsV2Paginator) HasMorePages() bool

HasMorePages returns true if there are more pages to retrieve.

func (*ListObjectsV2Paginator) NextPage

NextPage retrieves the next page of objects.

type ObjectCopyResourceModel

type ObjectCopyResourceModel struct {
	Bucket                                types.String `tfsdk:"bucket"`
	Key                                   types.String `tfsdk:"key"`
	CacheControl                          types.String `tfsdk:"cache_control"`
	ContentDisposition                    types.String `tfsdk:"content_disposition"`
	ContentEncoding                       types.String `tfsdk:"content_encoding"`
	ContentLanguage                       types.String `tfsdk:"content_language"`
	ContentType                           types.String `tfsdk:"content_type"`
	Expires                               types.String `tfsdk:"expires"`
	ServerSideEncryption                  types.String `tfsdk:"server_side_encryption"`
	StorageClass                          types.String `tfsdk:"storage_class"`
	WebsiteRedirect                       types.String `tfsdk:"website_redirect"`
	ServerSideEncryptionCustomerAlgorithm types.String `tfsdk:"server_side_encryption_customer_algorithm"`
	ServerSideEncryptionCustomerKey       types.String `tfsdk:"server_side_encryption_customer_key"`
	ServerSideEncryptionCustomerKeyMD5    types.String `tfsdk:"server_side_encryption_customer_key_md5"`
	ObjectLockMode                        types.String `tfsdk:"object_lock_mode"`
	ObjectLockRetainUntilDate             types.String `tfsdk:"object_lock_retain_until_date"`
	ObjectLockLegalHold                   types.String `tfsdk:"object_lock_legal_hold"`
	Etag                                  types.String `tfsdk:"etag"`
	Metadata                              types.Map    `tfsdk:"metadata"`
	Tags                                  types.Map    `tfsdk:"tags"`
	VersionID                             types.String `tfsdk:"version_id"`
	Source                                types.String `tfsdk:"source"`
	CopyIfMatch                           types.String `tfsdk:"copy_if_match"`
	CopyIfModifiedSince                   types.String `tfsdk:"copy_if_modified_since"`
	CopyIfNoneMatch                       types.String `tfsdk:"copy_if_none_match"`
	CopyIfUnmodifiedSince                 types.String `tfsdk:"copy_if_unmodified_since"`
	SourceCustomerAlgorithm               types.String `tfsdk:"source_customer_algorithm"`
	SourceCustomerKey                     types.String `tfsdk:"source_customer_key"`
	SourceCustomerKeyMD5                  types.String `tfsdk:"source_customer_key_md5"`
	MetadataDirective                     types.String `tfsdk:"metadata_directive"`
	TaggingDirective                      types.String `tfsdk:"tagging_directive"`
	LastModified                          types.String `tfsdk:"last_modified"`
	ForceDestroy                          types.Bool   `tfsdk:"force_destroy"`
}

ObjectCopyResourceModel defines the fields for the Terraform resource model.

type ObjectDataSourceModel

type ObjectDataSourceModel struct {
	Bucket                                types.String `tfsdk:"bucket"`
	Key                                   types.String `tfsdk:"key"`
	CacheControl                          types.String `tfsdk:"cache_control"`
	ContentDisposition                    types.String `tfsdk:"content_disposition"`
	ContentEncoding                       types.String `tfsdk:"content_encoding"`
	ContentLanguage                       types.String `tfsdk:"content_language"`
	ContentType                           types.String `tfsdk:"content_type"`
	Expires                               types.String `tfsdk:"expires"`
	ServerSideEncryption                  types.String `tfsdk:"server_side_encryption"`
	StorageClass                          types.String `tfsdk:"storage_class"`
	WebsiteRedirect                       types.String `tfsdk:"website_redirect"`
	ServerSideEncryptionCustomerAlgorithm types.String `tfsdk:"server_side_encryption_customer_algorithm"`
	ServerSideEncryptionCustomerKey       types.String `tfsdk:"server_side_encryption_customer_key"`
	ServerSideEncryptionCustomerKeyMD5    types.String `tfsdk:"server_side_encryption_customer_key_md5"`
	ServerSideEncryptionContext           types.String `tfsdk:"server_side_encryption_context"`
	ObjectLockMode                        types.String `tfsdk:"object_lock_mode"`
	ObjectLockRetainUntilDate             types.String `tfsdk:"object_lock_retain_until_date"`
	ObjectLockLegalHold                   types.String `tfsdk:"object_lock_legal_hold"`
	RequestPayer                          types.String `tfsdk:"request_payer"`
	Etag                                  types.String `tfsdk:"etag"`
	Metadata                              types.Map    `tfsdk:"metadata"`
	Tags                                  types.Map    `tfsdk:"tags"`
	VersionID                             types.String `tfsdk:"version_id"`
	ContentLength                         types.Int64  `tfsdk:"content_length"`
	Range                                 types.String `tfsdk:"range"`
	Body                                  types.String `tfsdk:"body"`
}

ObjectDataSourceModel is the schema for the ionoscloud_s3_object data source.

type ObjectLockConfigurationModel

type ObjectLockConfigurationModel struct {
	Bucket            types.String `tfsdk:"bucket"`
	ObjectLockEnabled types.String `tfsdk:"object_lock_enabled"`
	Rule              *rule        `tfsdk:"rule"`
}

ObjectLockConfigurationModel is used to create, update and delete a bucket object lock configuration.

type ObjectResourceModel

type ObjectResourceModel struct {
	Bucket                                types.String `tfsdk:"bucket"`
	Key                                   types.String `tfsdk:"key"`
	CacheControl                          types.String `tfsdk:"cache_control"`
	ContentDisposition                    types.String `tfsdk:"content_disposition"`
	ContentEncoding                       types.String `tfsdk:"content_encoding"`
	ContentLanguage                       types.String `tfsdk:"content_language"`
	ContentType                           types.String `tfsdk:"content_type"`
	Expires                               types.String `tfsdk:"expires"`
	ServerSideEncryption                  types.String `tfsdk:"server_side_encryption"`
	StorageClass                          types.String `tfsdk:"storage_class"`
	WebsiteRedirect                       types.String `tfsdk:"website_redirect"`
	ServerSideEncryptionCustomerAlgorithm types.String `tfsdk:"server_side_encryption_customer_algorithm"`
	ServerSideEncryptionCustomerKey       types.String `tfsdk:"server_side_encryption_customer_key"`
	ServerSideEncryptionCustomerKeyMD5    types.String `tfsdk:"server_side_encryption_customer_key_md5"`
	ServerSideEncryptionContext           types.String `tfsdk:"server_side_encryption_context"`
	ObjectLockMode                        types.String `tfsdk:"object_lock_mode"`
	ObjectLockRetainUntilDate             types.String `tfsdk:"object_lock_retain_until_date"`
	ObjectLockLegalHold                   types.String `tfsdk:"object_lock_legal_hold"`
	RequestPayer                          types.String `tfsdk:"request_payer"`
	Etag                                  types.String `tfsdk:"etag"`
	Metadata                              types.Map    `tfsdk:"metadata"`
	Tags                                  types.Map    `tfsdk:"tags"`
	VersionID                             types.String `tfsdk:"version_id"`
	Source                                types.String `tfsdk:"source"`
	Content                               types.String `tfsdk:"content"`
	MFA                                   types.String `tfsdk:"mfa"`
	ForceDestroy                          types.Bool   `tfsdk:"force_destroy"`
}

ObjectResourceModel is the schema for the ionoscloud_s3_object resource.

type ObjectsDataSourceModel

type ObjectsDataSourceModel struct {
	Bucket         types.String   `tfsdk:"bucket"`
	Delimiter      types.String   `tfsdk:"delimiter"`
	EncodingType   types.String   `tfsdk:"encoding_type"`
	MaxKeys        types.Int64    `tfsdk:"max_keys"`
	Prefix         types.String   `tfsdk:"prefix"`
	FetchOwner     types.Bool     `tfsdk:"fetch_owner"`
	StartAfter     types.String   `tfsdk:"start_after"`
	CommonPrefixes []types.String `tfsdk:"common_prefixes"`
	Keys           []types.String `tfsdk:"keys"`
	Owners         []types.String `tfsdk:"owners"`
}

ObjectsDataSourceModel is used to fetch objects from a bucket.

type ServerSideEncryptionConfigurationModel

type ServerSideEncryptionConfigurationModel struct {
	Bucket types.String `tfsdk:"bucket"`
	Rules  []sseRule    `tfsdk:"rule"`
}

ServerSideEncryptionConfigurationModel defines the expected inputs for creating a new ServerSideEncryptionConfiguration.

Jump to

Keyboard shortcuts

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