github.com/jfrog/jfrog-cli-core/v2@v2.52.0/artifactory/commands/buildinfo/builddiscard.go (about)

     1  package buildinfo
     2  
     3  import (
     4  	"github.com/jfrog/jfrog-cli-core/v2/artifactory/utils"
     5  	"github.com/jfrog/jfrog-cli-core/v2/utils/config"
     6  	"github.com/jfrog/jfrog-client-go/artifactory/services"
     7  )
     8  
     9  type BuildDiscardCommand struct {
    10  	serverDetails *config.ServerDetails
    11  	services.DiscardBuildsParams
    12  }
    13  
    14  func NewBuildDiscardCommand() *BuildDiscardCommand {
    15  	return &BuildDiscardCommand{}
    16  }
    17  
    18  func (buildDiscard *BuildDiscardCommand) SetServerDetails(serverDetails *config.ServerDetails) *BuildDiscardCommand {
    19  	buildDiscard.serverDetails = serverDetails
    20  	return buildDiscard
    21  }
    22  
    23  func (buildDiscard *BuildDiscardCommand) SetDiscardBuildsParams(params services.DiscardBuildsParams) *BuildDiscardCommand {
    24  	buildDiscard.DiscardBuildsParams = params
    25  	return buildDiscard
    26  }
    27  
    28  func (buildDiscard *BuildDiscardCommand) Run() error {
    29  	servicesManager, err := utils.CreateServiceManager(buildDiscard.serverDetails, -1, 0, false)
    30  	if err != nil {
    31  		return err
    32  	}
    33  	return servicesManager.DiscardBuilds(buildDiscard.DiscardBuildsParams)
    34  }
    35  
    36  func (buildDiscard *BuildDiscardCommand) ServerDetails() (*config.ServerDetails, error) {
    37  	return buildDiscard.serverDetails, nil
    38  }
    39  
    40  func (buildDiscard *BuildDiscardCommand) CommandName() string {
    41  	return "rt_build_discard"
    42  }