Something went wrong. Try again.
Monorepo for Tangled tangled.org
Something went wrong. Try again.
12345678910111213141516171819202122232425262728293031package storage
import ( "context" "fmt"
awsconfig "github.com/aws/aws-sdk-go-v2/config" "github.com/aws/aws-sdk-go-v2/service/s3")
func NewUnversionedS3(ctx context.Context, bucket, prefix string) (*S3, error) { if bucket == "" { return nil, fmt.Errorf("storage: s3 backend requires a bucket") } sdkConfig, err := awsconfig.LoadDefaultConfig(ctx) if err != nil { return nil, fmt.Errorf("storage: load s3 config: %w", err) } client := s3.NewFromConfig(sdkConfig) versioning, err := client.GetBucketVersioning(ctx, &s3.GetBucketVersioningInput{ Bucket: &bucket, }) if err != nil { return nil, fmt.Errorf("storage: check s3 bucket versioning: %w", err) } if versioning.Status != "" { return nil, fmt.Errorf("storage: s3 cache bucket must not use versioning") } return NewS3(client, bucket, prefix)}