just overwrite bundles, don't delete then re-add
This commit is contained in:
parent
d6ef34a1dc
commit
eb40995c60
3 changed files with 2 additions and 56 deletions
|
|
@ -3,14 +3,12 @@ package main
|
|||
import (
|
||||
"bytes"
|
||||
"context"
|
||||
"fmt"
|
||||
"os"
|
||||
"path/filepath"
|
||||
|
||||
"github.com/aws/aws-sdk-go-v2/aws"
|
||||
"github.com/aws/aws-sdk-go-v2/config"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3"
|
||||
"github.com/aws/aws-sdk-go-v2/service/s3/types"
|
||||
)
|
||||
|
||||
var s3Client *s3.Client
|
||||
|
|
@ -48,35 +46,3 @@ func s3UploadBundle(bucket, key string, data []byte) error {
|
|||
return err
|
||||
}
|
||||
|
||||
// s3DeletePrefix deletes all objects under a prefix in S3.
|
||||
func s3DeletePrefix(bucket, prefix string) error {
|
||||
ctx := context.Background()
|
||||
paginator := s3.NewListObjectsV2Paginator(s3Client, &s3.ListObjectsV2Input{
|
||||
Bucket: aws.String(bucket),
|
||||
Prefix: aws.String(prefix),
|
||||
})
|
||||
|
||||
for paginator.HasMorePages() {
|
||||
page, err := paginator.NextPage(ctx)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if len(page.Contents) == 0 {
|
||||
continue
|
||||
}
|
||||
|
||||
var objects []types.ObjectIdentifier
|
||||
for _, obj := range page.Contents {
|
||||
objects = append(objects, types.ObjectIdentifier{Key: obj.Key})
|
||||
}
|
||||
|
||||
_, err = s3Client.DeleteObjects(ctx, &s3.DeleteObjectsInput{
|
||||
Bucket: aws.String(bucket),
|
||||
Delete: &types.Delete{Objects: objects},
|
||||
})
|
||||
if err != nil {
|
||||
return fmt.Errorf("delete batch: %w", err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue