github.com/osievert/jfrog-cli-core@v1.2.7/artifactory/commands/dotnet/nuget.go (about) 1 package dotnet 2 3 import ( 4 "github.com/jfrog/jfrog-cli-core/artifactory/utils/dotnet" 5 "github.com/jfrog/jfrog-cli-core/artifactory/utils/dotnet/solution" 6 clientutils "github.com/jfrog/jfrog-client-go/utils" 7 "github.com/jfrog/jfrog-client-go/utils/errorutils" 8 "github.com/jfrog/jfrog-client-go/utils/log" 9 "os" 10 ) 11 12 type NugetCommand struct { 13 *DotnetCommand 14 } 15 16 func NewNugetCommand() *NugetCommand { 17 nugetCmd := NugetCommand{&DotnetCommand{}} 18 nugetCmd.SetToolchainType(dotnet.Nuget) 19 return &nugetCmd 20 } 21 22 func (nc *NugetCommand) Run() error { 23 nc.useNugetAddSource = true 24 return nc.Exec() 25 } 26 27 func DependencyTreeCmd() error { 28 workspace, err := os.Getwd() 29 if err != nil { 30 return errorutils.CheckError(err) 31 } 32 33 sol, err := solution.Load(workspace, "") 34 if err != nil { 35 return err 36 } 37 38 // Create the tree for each project 39 for _, project := range sol.GetProjects() { 40 err = project.CreateDependencyTree() 41 if err != nil { 42 return err 43 } 44 } 45 // Build the tree. 46 content, err := sol.Marshal() 47 if err != nil { 48 return errorutils.CheckError(err) 49 } 50 log.Output(clientutils.IndentJson(content)) 51 return nil 52 }