github.com/jfrog/jfrog-cli-core/v2@v2.51.0/artifactory/utils/delete.go (about) 1 package utils 2 3 import ( 4 "github.com/jfrog/jfrog-cli-core/v2/utils/config" 5 "github.com/jfrog/jfrog-cli-core/v2/utils/coreutils" 6 "github.com/jfrog/jfrog-client-go/artifactory" 7 rtclientutils "github.com/jfrog/jfrog-client-go/artifactory/services/utils" 8 "github.com/jfrog/jfrog-client-go/utils/io/content" 9 "github.com/jfrog/jfrog-client-go/utils/log" 10 ) 11 12 func ConfirmDelete(pathsToDeleteReader *content.ContentReader) (bool, error) { 13 length, err := pathsToDeleteReader.Length() 14 if err != nil || length < 1 { 15 return false, err 16 } 17 for resultItem := new(rtclientutils.ResultItem); pathsToDeleteReader.NextRecord(resultItem) == nil; resultItem = new(rtclientutils.ResultItem) { 18 log.Output(" " + resultItem.GetItemRelativePath()) 19 } 20 if err := pathsToDeleteReader.GetError(); err != nil { 21 return false, err 22 } 23 pathsToDeleteReader.Reset() 24 return coreutils.AskYesNo("Are you sure you want to delete the above paths?", false), nil 25 } 26 27 func CreateDeleteServiceManager(artDetails *config.ServerDetails, threads, httpRetries, httpRetryWaitMilliSecs int, dryRun bool) (artifactory.ArtifactoryServicesManager, error) { 28 return CreateServiceManagerWithThreads(artDetails, dryRun, threads, httpRetries, httpRetryWaitMilliSecs) 29 }