Files
kopia/cli/command_content_rm.go
Jarek Kowalski 6cb9b8fa4f repo: refactored public API (#318)
* This is 99% mechanical:

Extracted repo.Repository interface that only exposes high-level object and manifest management methods, but not blob nor content management.

Renamed old *repo.Repository to *repo.DirectRepository

Reviewed codebase to only depend on repo.Repository as much as possible, but added way for low-level CLI commands to use DirectRepository.

* PR fixes
2020-03-26 08:04:01 -07:00

29 lines
652 B
Go

package cli
import (
"context"
"github.com/kopia/kopia/repo"
)
var (
contentRemoveCommand = contentCommands.Command("remove", "Remove content").Alias("rm")
contentRemoveIDs = contentRemoveCommand.Arg("id", "IDs of content to remove").Required().Strings()
)
func runContentRemoveCommand(ctx context.Context, rep *repo.DirectRepository) error {
for _, contentID := range toContentIDs(*contentRemoveIDs) {
if err := rep.Content.DeleteContent(ctx, contentID); err != nil {
return err
}
}
return nil
}
func init() {
setupShowCommand(contentRemoveCommand)
contentRemoveCommand.Action(directRepositoryAction(runContentRemoveCommand))
}