github.com/jfrog/jfrog-cli-core/v2@v2.51.0/artifactory/commands/buildinfo/distribute.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 BuildDistributeCommnad struct { 10 serverDetails *config.ServerDetails 11 services.BuildDistributionParams 12 dryRun bool 13 } 14 15 func NewBuildDistributeCommnad() *BuildDistributeCommnad { 16 return &BuildDistributeCommnad{} 17 } 18 19 func (bdc *BuildDistributeCommnad) SetServerDetails(serverDetails *config.ServerDetails) *BuildDistributeCommnad { 20 bdc.serverDetails = serverDetails 21 return bdc 22 } 23 24 func (bdc *BuildDistributeCommnad) SetDryRun(dryRun bool) *BuildDistributeCommnad { 25 bdc.dryRun = dryRun 26 return bdc 27 } 28 29 func (bdc *BuildDistributeCommnad) SetBuildDistributionParams(buildDistributeParams services.BuildDistributionParams) *BuildDistributeCommnad { 30 bdc.BuildDistributionParams = buildDistributeParams 31 return bdc 32 } 33 34 func (bdc *BuildDistributeCommnad) Run() error { 35 servicesManager, err := utils.CreateServiceManager(bdc.serverDetails, -1, 0, bdc.dryRun) 36 if err != nil { 37 return err 38 } 39 return servicesManager.DistributeBuild(bdc.BuildDistributionParams) 40 } 41 42 func (bdc *BuildDistributeCommnad) ServerDetails() (*config.ServerDetails, error) { 43 return bdc.serverDetails, nil 44 } 45 46 func (bdc *BuildDistributeCommnad) CommandName() string { 47 return "rt_build_distribute" 48 }