package asset

import (
	"context"

	"github.com/tidbcloud/devops/pkg/infra/clients/awscli"
	"github.com/tidbcloud/devops/pkg/infra/config"
	"gocloud.dev/blob"
	"gocloud.dev/blob/s3blob"
)

type s3Core struct {
	conf config.AssetConfig
	aws  awscli.AWSClient
}

func (c *s3Core) OpenBucket(ctx context.Context) (*blob.Bucket, error) {
	return s3blob.OpenBucketV2(ctx, c.aws.S3(), c.conf.BucketName, nil)
}
