func DeleteDirectory()

in s3plugin/s3plugin.go [419:434]


func DeleteDirectory(c *cli.Context) error {
	config, sess, err := readConfigAndStartSession(c)
	if err != nil {
		return err
	}
	deletePath := c.Args().Get(1)
	bucket := config.Options.Bucket
	gplog.Verbose("Deleting directory s3://%s/%s", bucket, deletePath)
	service := s3.New(sess)
	iter := s3manager.NewDeleteListIterator(service, &s3.ListObjectsInput{
		Bucket: aws.String(bucket),
		Prefix: aws.String(deletePath),
	})
	batchClient := s3manager.NewBatchDeleteWithClient(service)
	return batchClient.Delete(aws.BackgroundContext(), iter)
}