diff --git a/internal/client/aws.go b/internal/client/aws.go index ec6317e..f15d7a8 100644 --- a/internal/client/aws.go +++ b/internal/client/aws.go @@ -142,14 +142,12 @@ func (a *AwsS3Client) DeleteObjects(ctx context.Context, objectKeys []string) er for _, key := range objectKeys { objectIds = append(objectIds, types.ObjectIdentifier{Key: aws.String(key)}) } - output, err := a.Client.DeleteObjects(ctx, &s3.DeleteObjectsInput{ + _, err := a.Client.DeleteObjects(ctx, &s3.DeleteObjectsInput{ Bucket: aws.String(a.bucketName), Delete: &types.Delete{Objects: objectIds}, }) if err != nil { return err - } else { - log.Printf("Deleted %v objects.\n", len(output.Deleted)) } return err } diff --git a/internal/selfhosted/oidc.go b/internal/selfhosted/oidc.go index ab84cae..7bf47e1 100644 --- a/internal/selfhosted/oidc.go +++ b/internal/selfhosted/oidc.go @@ -23,7 +23,7 @@ type OIDCIdPDiscoveryContents interface { type OIDCIdPDiscovery interface { CreateStorage(ctx context.Context) error Upload(ctx context.Context, o OIDCIdPDiscoveryContents) error - DeleteStorage(ctx context.Context) error + Delete(ctx context.Context, o OIDCIdPDiscoveryContents) error } type OIDCIdPFactory interface { diff --git a/internal/selfhosted/oidc/id_provider_discovery.go b/internal/selfhosted/oidc/id_provider_discovery.go index bcc8b7d..bb7449f 100644 --- a/internal/selfhosted/oidc/id_provider_discovery.go +++ b/internal/selfhosted/oidc/id_provider_discovery.go @@ -60,8 +60,18 @@ func (s *S3IdPDiscovery) Upload(ctx context.Context, o selfhosted.OIDCIdPDiscove return nil } -// DeleteStorage delete an S3 bucket -func (s *S3IdPDiscovery) DeleteStorage(ctx context.Context) error { - // TODO: +// Delete delete an S3 bucket and objects +func (s *S3IdPDiscovery) Delete(ctx context.Context, o selfhosted.OIDCIdPDiscoveryContents) error { + err := s.s3Client.DeleteObjects(ctx, []string{ + CONFIGURATION_PATH, + o.JWKsFileName(), + }) + if err != nil { + return err + } + err = s.s3Client.DeleteBucket(ctx) + if err != nil { + return err + } return nil } diff --git a/internal/selfhosted/selfhosted.go b/internal/selfhosted/selfhosted.go index af639ea..a90eb77 100644 --- a/internal/selfhosted/selfhosted.go +++ b/internal/selfhosted/selfhosted.go @@ -28,11 +28,12 @@ func Execute(ctx context.Context, factory OIDCIdPFactory) error { func Delete(ctx context.Context, factory OIDCIdPFactory) error { issuerMeta := factory.IssuerMeta() discovery := factory.IdPDiscovery() + discoveryContents := factory.IdPDiscoveryContents(issuerMeta) idp, err := factory.IdP(issuerMeta) if err != nil { return err } - err = discovery.DeleteStorage(ctx) + err = discovery.Delete(ctx, discoveryContents) if err != nil { return err }