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

     1  package buildinfo
     2  
     3  import (
     4  	"github.com/jfrog/jfrog-cli-core/v2/common/build"
     5  	"github.com/jfrog/jfrog-cli-core/v2/utils/config"
     6  	"github.com/jfrog/jfrog-client-go/utils/errorutils"
     7  	"github.com/jfrog/jfrog-client-go/utils/log"
     8  )
     9  
    10  type BuildCollectEnvCommand struct {
    11  	buildConfiguration *build.BuildConfiguration
    12  }
    13  
    14  func NewBuildCollectEnvCommand() *BuildCollectEnvCommand {
    15  	return &BuildCollectEnvCommand{}
    16  }
    17  
    18  func (bcec *BuildCollectEnvCommand) SetBuildConfiguration(buildConfiguration *build.BuildConfiguration) *BuildCollectEnvCommand {
    19  	bcec.buildConfiguration = buildConfiguration
    20  	return bcec
    21  }
    22  
    23  func (bcec *BuildCollectEnvCommand) Run() error {
    24  	log.Info("Collecting environment variables...")
    25  	buildInfoService := build.CreateBuildInfoService()
    26  	buildName, err := bcec.buildConfiguration.GetBuildName()
    27  	if err != nil {
    28  		return err
    29  	}
    30  	buildNumber, err := bcec.buildConfiguration.GetBuildNumber()
    31  	if err != nil {
    32  		return err
    33  	}
    34  	build, err := buildInfoService.GetOrCreateBuildWithProject(buildName, buildNumber, bcec.buildConfiguration.GetProject())
    35  	if err != nil {
    36  		return errorutils.CheckError(err)
    37  	}
    38  	err = build.CollectEnv()
    39  	if err != nil {
    40  		return errorutils.CheckError(err)
    41  	}
    42  	log.Info("Collected environment variables for", buildName+"/"+buildNumber+".")
    43  	return nil
    44  }
    45  
    46  // Returns the default configured Artifactory server
    47  func (bcec *BuildCollectEnvCommand) ServerDetails() (*config.ServerDetails, error) {
    48  	return config.GetDefaultServerConf()
    49  }
    50  
    51  func (bcec *BuildCollectEnvCommand) CommandName() string {
    52  	return "rt_build_collect_env"
    53  }