From 8888b67e799bb48d96be98c242f20a6181196908 Mon Sep 17 00:00:00 2001 From: Bhanu Reddy Date: Fri, 24 Jul 2026 09:29:48 +0530 Subject: [PATCH 1/2] RTECO-1574 - RTECO-1574 - Implementation of Nuget Support for client - MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit **Source:** https://jfrog-int.atlassian.net/browse/RTECO-1574 - Start working on Nuget V2, V3 support for Nuget package manager in jfrog cli. - Make sure PRs are manageable and code is written in a way it can be reused across the clients - Add support for nugetV3 and nugetV2 - refer to [unsupported block: inlineCard] ## Things to consider while implementing - Use JFROG_CLI_NATIVE_IMPLEMENTATION support since nuget is already supported when this is set it routes via native package manager(flexpack). - BuildInfo collection in build-info-go - check sum calculation - Original Deployment Repository calculation - Requested By calculation for dependencies - Easy authentication using nuget’s credentials like mentioned in above Atlassian wiki. - Build Info collection for both dependencies and artifacts for all the commands eligible listed in above wiki. - Set properties clearly on artifacts published. - Make sure the buildinfo is figuring out and showing show in tree in build info section when published to artifactory. ## Not to implement - nuget-config support is not required since this is flexpack implementation. **Parent:** RTECO-395 **Components:** jfrog-cli-nuget Task: RTECO-1574 --- buildtools/cli.go | 74 ++ go.mod | 4 +- go.sum | 8 +- .../reports/problems/problems-report.html | 659 ++++++++++++++++++ utils/cliutils/commandsflags.go | 4 +- 5 files changed, 740 insertions(+), 9 deletions(-) create mode 100644 testdata/gradle/projectwithplugin/build/reports/problems/problems-report.html diff --git a/buildtools/cli.go b/buildtools/cli.go index 4daff389c..8eef29767 100644 --- a/buildtools/cli.go +++ b/buildtools/cli.go @@ -5,6 +5,8 @@ import ( "fmt" conancommand "github.com/jfrog/jfrog-cli-artifactory/artifactory/commands/conan" nixcommand "github.com/jfrog/jfrog-cli-artifactory/artifactory/commands/nix" + nugetcommand "github.com/jfrog/jfrog-cli-artifactory/artifactory/commands/nuget" + dotnetutils "github.com/jfrog/build-info-go/build/utils/dotnet" "io/fs" "os" "os/exec" @@ -945,6 +947,11 @@ func NugetCmd(c *cli.Context) error { return cliutils.WrongNumberOfArgumentsHandler(c) } + // FlexPack native mode: bypass config file requirement + if artutils.ShouldRunNative("") { + return runNugetFlexPackCmd(c, dotnetutils.Nuget) + } + configFilePath, err := getProjectConfigPathOrThrow(project.Nuget, "nuget", "nuget-config") if err != nil { return err @@ -989,6 +996,11 @@ func DotnetCmd(c *cli.Context) error { return cliutils.WrongNumberOfArgumentsHandler(c) } + // FlexPack native mode: bypass config file requirement + if artutils.ShouldRunNative("") { + return runNugetFlexPackCmd(c, dotnetutils.DotnetCore) + } + // Get configuration file path. configFilePath, err := getProjectConfigPathOrThrow(project.Dotnet, "dotnet", "dotnet-config") if err != nil { @@ -2071,6 +2083,68 @@ func ConanCmd(c *cli.Context) error { return commands.ExecWithPackageManager(conanCommand, project.Conan.String()) } +// runNugetFlexPackCmd handles NuGet/dotnet commands in FlexPack native mode. +// No project config file is required; server details come from --server-id or the default profile. +func runNugetFlexPackCmd(c *cli.Context, toolchainType dotnetutils.ToolchainType) error { + args := cliutils.ExtractCommand(c) + + var serverID string + var err error + args, serverID, err = coreutils.ExtractServerIdFromCommand(args) + if err != nil { + return fmt.Errorf("extract server ID: %w", err) + } + serverDetails, err := coreConfig.GetSpecificConfig(serverID, true, false) + if err != nil { + return err + } + + filteredArgs, buildConfiguration, err := build.ExtractBuildDetailsFromArgs(args) + if err != nil { + return err + } + + // Extract --repo-resolve and --repo-deploy flags + var repoResolve, repoDeploy string + filteredArgs, repoResolve, err = coreutils.ExtractStringOptionFromArgs(filteredArgs, "repo-resolve") + if err != nil { + return fmt.Errorf("extract --repo-resolve: %w", err) + } + filteredArgs, repoDeploy, err = coreutils.ExtractStringOptionFromArgs(filteredArgs, "repo-deploy") + if err != nil { + return fmt.Errorf("extract --repo-deploy: %w", err) + } + + useNugetV2, err := cliutils.ExtractBoolFlagFromArgs(&filteredArgs, "nuget-v2") + if err != nil { + return err + } + allowInsecure, err := cliutils.ExtractBoolFlagFromArgs(&filteredArgs, "allow-insecure-connections") + if err != nil { + return err + } + + cmdName, nugetArgs := getCommandName(filteredArgs) + workingDir, err := filepath.Abs(".") + if err != nil { + return err + } + + nugetCmd := nugetcommand.NewNuGetFlexPackCommand(). + SetToolchainType(toolchainType). + SetSubCommand(cmdName). + SetArgs(nugetArgs). + SetServerDetails(serverDetails). + SetRepoResolve(repoResolve). + SetRepoDeploy(repoDeploy). + SetUseNugetV2(useNugetV2). + SetAllowInsecureConnections(allowInsecure). + SetBuildConfiguration(buildConfiguration). + SetWorkingDir(workingDir) + + return commands.ExecWithPackageManager(nugetCmd, project.Nuget.String()) +} + func NixCmd(c *cli.Context) error { if show, err := cliutils.ShowCmdHelpIfNeeded(c, c.Args()); show || err != nil { return err diff --git a/go.mod b/go.mod index 1847d35d5..d70890756 100644 --- a/go.mod +++ b/go.mod @@ -8,6 +8,8 @@ replace ( github.com/CycloneDX/cyclonedx-go => github.com/CycloneDX/cyclonedx-go v0.10.0 // Should not be updated to 0.2.6 due to a bug (https://github.com/jfrog/jfrog-cli-core/pull/372) github.com/c-bata/go-prompt => github.com/c-bata/go-prompt v0.2.5 + github.com/jfrog/build-info-go => /Users/bhanur/go/src/jfws/build-info-go/.worktrees/task-RTECO-1574/task/RTECO-1574/rteco-1574-implementation-of-nuget-support-for-client // task/RTECO-1574 - remove before merge + github.com/jfrog/jfrog-cli-artifactory => /Users/bhanur/go/src/jfws/jfrog-cli-artifactory/.worktrees/task-RTECO-1574/task/RTECO-1574/rteco-1574-implementation-of-nuget-support-for-client // task/RTECO-1574 - remove before merge // Should not be updated to 0.2.0-beta.2 due to a bug (https://github.com/jfrog/jfrog-cli-core/pull/372) github.com/pkg/term => github.com/pkg/term v1.1.0 ) @@ -238,7 +240,7 @@ require ( helm.sh/helm/v3 v3.21.0 // indirect k8s.io/client-go v0.36.1 // indirect k8s.io/klog/v2 v2.140.0 // indirect - oras.land/oras-go/v2 v2.6.0 // indirect + oras.land/oras-go/v2 v2.6.1 // indirect sigs.k8s.io/yaml v1.6.0 // indirect ) diff --git a/go.sum b/go.sum index 7cc72b13c..9c0c3f3d1 100644 --- a/go.sum +++ b/go.sum @@ -394,8 +394,6 @@ github.com/jellydator/ttlcache/v3 v3.4.0 h1:YS4P125qQS0tNhtL6aeYkheEaB/m8HCqdMMP github.com/jellydator/ttlcache/v3 v3.4.0/go.mod h1:Hw9EgjymziQD3yGsQdf1FqFdpp7YjFMd4Srg5EJlgD4= github.com/jfrog/archiver/v3 v3.6.3 h1:hkAmPjBw393tPmQ07JknLNWFNZjXdy2xFEnOW9wwOxI= github.com/jfrog/archiver/v3 v3.6.3/go.mod h1:5V9l+Fte30Y4qe9dUOAd3yNTf8lmtVNuhKNrvI8PMhg= -github.com/jfrog/build-info-go v1.13.1-0.20260615080618-42488b58c305 h1:q7/hTPm6ibQf45CztScTgPb8cAmKIeQ9im0ClISsq7Y= -github.com/jfrog/build-info-go v1.13.1-0.20260615080618-42488b58c305/go.mod h1:CYRUCvLKfyARjoJXLWAxce1qNUxTEtbRKAARkV42vpE= github.com/jfrog/froggit-go v1.22.0 h1:eeN5F8sOUo+h2cXkzArAu4nvSdjkDTAZtgqwrct70qg= github.com/jfrog/froggit-go v1.22.0/go.mod h1:wRDryqyp3oe+eHgME2mpnEQmO8XBECIPagFwj0nHmdI= github.com/jfrog/go-mockhttp v0.3.1 h1:/wac8v4GMZx62viZmv4wazB5GNKs+GxawuS1u3maJH8= @@ -406,8 +404,6 @@ github.com/jfrog/jfrog-apps-config v1.0.1 h1:mtv6k7g8A8BVhlHGlSveapqf4mJfonwvXYL github.com/jfrog/jfrog-apps-config v1.0.1/go.mod h1:8AIIr1oY9JuH5dylz2S6f8Ym2MaadPLR6noCBO4C22w= github.com/jfrog/jfrog-cli-application v1.0.2-0.20260621072921-cadb78770a3e h1:jUfQzLCVbUazw7FEXf3+57vQheDSHa/Px/Gp4pf/sNI= github.com/jfrog/jfrog-cli-application v1.0.2-0.20260621072921-cadb78770a3e/go.mod h1:p8yLtbmCxxQucIbLZKnWu0F+EDtj6NLXbRQCEK/nb6o= -github.com/jfrog/jfrog-cli-artifactory v0.8.1-0.20260623062654-89dd771ef4de h1:q2w1NMXsFQpcTCC++f0aLbzIvGovHXBpRpeBQWRpGLE= -github.com/jfrog/jfrog-cli-artifactory v0.8.1-0.20260623062654-89dd771ef4de/go.mod h1:VqV0Bed11HoBlugAEGa3RumbwnDVslEf0gKocTzLs9s= github.com/jfrog/jfrog-cli-core/v2 v2.60.1-0.20260624085155-5ba797de2616 h1:bioFXGzf3pF2qnC3LZD1S1saWiHSekL4vdsDSWksj/4= github.com/jfrog/jfrog-cli-core/v2 v2.60.1-0.20260624085155-5ba797de2616/go.mod h1:9R90mhbczGXwW5EGlDs7F08ejQU/xdoDhYHMvzBiqgE= github.com/jfrog/jfrog-cli-evidence v0.9.5-0.20260618135203-4d2bdd4ee35f h1:MV4BATdkEoUYJmdPDvaB9EBb8JQZg28n/K4X7dcmyAY= @@ -885,8 +881,8 @@ k8s.io/client-go v0.36.1 h1:FN/K8QIT2CEDt+2WB2HnWrUANZ50AP5GII43/SP2JR0= k8s.io/client-go v0.36.1/go.mod h1:s6rAnCtTGYDQnpNjEhSaISV+2O8jwruZ6m3QOYBFbtU= k8s.io/klog/v2 v2.140.0 h1:Tf+J3AH7xnUzZyVVXhTgGhEKnFqye14aadWv7bzXdzc= k8s.io/klog/v2 v2.140.0/go.mod h1:o+/RWfJ6PwpnFn7OyAG3QnO47BFsymfEfrz6XyYSSp0= -oras.land/oras-go/v2 v2.6.0 h1:X4ELRsiGkrbeox69+9tzTu492FMUu7zJQW6eJU+I2oc= -oras.land/oras-go/v2 v2.6.0/go.mod h1:magiQDfG6H1O9APp+rOsvCPcW1GD2MM7vgnKY0Y+u1o= +oras.land/oras-go/v2 v2.6.1 h1:bonOEkjLfp8tt6qXWRRWP6p1F+9octchOf2EqnWB4Zs= +oras.land/oras-go/v2 v2.6.1/go.mod h1:dhtFrFOuZuDtAVeZ9FUnaa5zfzplG3ZnFX9/uH1J/Yk= pgregory.net/rapid v1.2.0 h1:keKAYRcjm+e1F0oAuU5F5+YPAWcyxNNRK2wud503Gnk= pgregory.net/rapid v1.2.0/go.mod h1:PY5XlDGj0+V1FCq0o192FdRhpKHGTRIWBgqjDBTrq04= sigs.k8s.io/yaml v1.6.0 h1:G8fkbMSAFqgEFgh4b1wmtzDnioxFCUgTZhlbj5P9QYs= diff --git a/testdata/gradle/projectwithplugin/build/reports/problems/problems-report.html b/testdata/gradle/projectwithplugin/build/reports/problems/problems-report.html new file mode 100644 index 000000000..732833d47 --- /dev/null +++ b/testdata/gradle/projectwithplugin/build/reports/problems/problems-report.html @@ -0,0 +1,659 @@ + + + + + + + + + + + + + Gradle Configuration Cache + + + +
+ +
+ Loading... +
+ + + + + + diff --git a/utils/cliutils/commandsflags.go b/utils/cliutils/commandsflags.go index 4cf45994e..7447aaf07 100644 --- a/utils/cliutils/commandsflags.go +++ b/utils/cliutils/commandsflags.go @@ -2158,13 +2158,13 @@ var commandFlags = map[string][]string{ global, serverIdResolve, repoResolve, nugetV2, }, Nuget: { - BuildName, BuildNumber, module, Project, allowInsecureConnections, + BuildName, BuildNumber, module, Project, allowInsecureConnections, serverId, repoResolve, repoDeploy, nugetV2, }, DotnetConfig: { global, serverIdResolve, repoResolve, nugetV2, }, Dotnet: { - BuildName, BuildNumber, module, Project, + BuildName, BuildNumber, module, Project, allowInsecureConnections, serverId, repoResolve, repoDeploy, nugetV2, }, GoConfig: { global, serverIdResolve, serverIdDeploy, repoResolve, repoDeploy, From 1330b5ab0fc72f0a6fe57b62bd387397b9207952 Mon Sep 17 00:00:00 2001 From: Bhanu Reddy Date: Wed, 29 Jul 2026 23:28:02 +0530 Subject: [PATCH 2/2] Fix NuGet FlexPack CLI wiring and pin dependencies to pushed commits - Only resolve/require server details for FlexPack NuGet commands that actually need them (push with a deploy repo, or restore with a resolve repo), instead of unconditionally requiring a --server-id for every subcommand. - Renamed --repo-deploy to --repo and --allow-insecure-connections to --insecure-tls to match the flags actually documented/used elsewhere. - Added getNugetCommandName to correctly treat dotnet's two-token "nuget push" as a single push subcommand, instead of misclassifying it. - Replaced the temporary local-filesystem-path go.mod replaces for build-info-go and jfrog-cli-artifactory (committed by mistake in the previous commit on this branch) with proper pseudo-version pins against their latest pushed RTECO-1574 commits, which fix: packages.config checksum/scope/cache-miss gaps, the flat NuGet push storage path assumption that broke property stamping, a restore-vs-push module identity mismatch that split one project into two disconnected build-info modules, missing .slnx solution support, and a missing --source flag that made every native push fail outright. Verified live against a real Artifactory server, building purely from the pinned remote commits (no local path replaces). --- buildtools/cli.go | 39 +++++++++++++++++---------- buildtools/cli_test.go | 48 +++++++++++++++++++++++++++++++++ go.mod | 6 +++-- go.sum | 6 +++++ nuget_test.go | 4 +-- utils/cliutils/commandsflags.go | 4 +-- 6 files changed, 87 insertions(+), 20 deletions(-) diff --git a/buildtools/cli.go b/buildtools/cli.go index 8eef29767..90c497cc7 100644 --- a/buildtools/cli.go +++ b/buildtools/cli.go @@ -3,10 +3,10 @@ package buildtools import ( "errors" "fmt" + dotnetutils "github.com/jfrog/build-info-go/build/utils/dotnet" conancommand "github.com/jfrog/jfrog-cli-artifactory/artifactory/commands/conan" nixcommand "github.com/jfrog/jfrog-cli-artifactory/artifactory/commands/nix" nugetcommand "github.com/jfrog/jfrog-cli-artifactory/artifactory/commands/nuget" - dotnetutils "github.com/jfrog/build-info-go/build/utils/dotnet" "io/fs" "os" "os/exec" @@ -2088,43 +2088,37 @@ func ConanCmd(c *cli.Context) error { func runNugetFlexPackCmd(c *cli.Context, toolchainType dotnetutils.ToolchainType) error { args := cliutils.ExtractCommand(c) - var serverID string - var err error - args, serverID, err = coreutils.ExtractServerIdFromCommand(args) + args, serverID, err := coreutils.ExtractServerIdFromCommand(args) if err != nil { return fmt.Errorf("extract server ID: %w", err) } - serverDetails, err := coreConfig.GetSpecificConfig(serverID, true, false) - if err != nil { - return err - } filteredArgs, buildConfiguration, err := build.ExtractBuildDetailsFromArgs(args) if err != nil { return err } - // Extract --repo-resolve and --repo-deploy flags + // Extract --repo-resolve and --repo flags. var repoResolve, repoDeploy string filteredArgs, repoResolve, err = coreutils.ExtractStringOptionFromArgs(filteredArgs, "repo-resolve") if err != nil { return fmt.Errorf("extract --repo-resolve: %w", err) } - filteredArgs, repoDeploy, err = coreutils.ExtractStringOptionFromArgs(filteredArgs, "repo-deploy") + filteredArgs, repoDeploy, err = coreutils.ExtractStringOptionFromArgs(filteredArgs, "repo") if err != nil { - return fmt.Errorf("extract --repo-deploy: %w", err) + return fmt.Errorf("extract --repo: %w", err) } useNugetV2, err := cliutils.ExtractBoolFlagFromArgs(&filteredArgs, "nuget-v2") if err != nil { return err } - allowInsecure, err := cliutils.ExtractBoolFlagFromArgs(&filteredArgs, "allow-insecure-connections") + allowInsecure, err := cliutils.ExtractBoolFlagFromArgs(&filteredArgs, "insecure-tls") if err != nil { return err } - cmdName, nugetArgs := getCommandName(filteredArgs) + cmdName, nugetArgs := getNugetCommandName(filteredArgs, toolchainType) workingDir, err := filepath.Abs(".") if err != nil { return err @@ -2134,7 +2128,6 @@ func runNugetFlexPackCmd(c *cli.Context, toolchainType dotnetutils.ToolchainType SetToolchainType(toolchainType). SetSubCommand(cmdName). SetArgs(nugetArgs). - SetServerDetails(serverDetails). SetRepoResolve(repoResolve). SetRepoDeploy(repoDeploy). SetUseNugetV2(useNugetV2). @@ -2142,9 +2135,27 @@ func runNugetFlexPackCmd(c *cli.Context, toolchainType dotnetutils.ToolchainType SetBuildConfiguration(buildConfiguration). SetWorkingDir(workingDir) + if nugetCmd.RequiresServerDetails() { + serverDetails, err := coreConfig.GetSpecificConfig(serverID, true, false) + if err != nil { + return err + } + nugetCmd.SetServerDetails(serverDetails) + } + return commands.ExecWithPackageManager(nugetCmd, project.Nuget.String()) } +// getNugetCommandName parses the native NuGet command and handles dotnet's two-token +// "nuget push" subcommand without changing the argument list for any other command. +func getNugetCommandName(args []string, toolchainType dotnetutils.ToolchainType) (string, []string) { + commandName, commandArgs := getCommandName(args) + if toolchainType == dotnetutils.DotnetCore && commandName == "nuget" && len(commandArgs) > 0 && commandArgs[0] == "push" { + return "nuget push", commandArgs[1:] + } + return commandName, commandArgs +} + func NixCmd(c *cli.Context) error { if show, err := cliutils.ShowCmdHelpIfNeeded(c, c.Args()); show || err != nil { return err diff --git a/buildtools/cli_test.go b/buildtools/cli_test.go index c03c912b4..89e2b2753 100644 --- a/buildtools/cli_test.go +++ b/buildtools/cli_test.go @@ -5,6 +5,7 @@ import ( "os" "testing" + dotnetutils "github.com/jfrog/build-info-go/build/utils/dotnet" containerutils "github.com/jfrog/jfrog-cli-artifactory/artifactory/commands/ocicontainer" "github.com/jfrog/jfrog-cli-core/v2/plugins/components" securityDocs "github.com/jfrog/jfrog-cli-security/cli/docs" @@ -13,6 +14,53 @@ import ( "github.com/urfave/cli" ) +func TestGetNugetCommandName(t *testing.T) { + tests := []struct { + name string + toolchainType dotnetutils.ToolchainType + args []string + expectedCommand string + expectedArgs []string + }{ + { + name: "dotnet nuget push", + toolchainType: dotnetutils.DotnetCore, + args: []string{"nuget", "push", "Package.1.0.0.nupkg", "--skip-duplicate"}, + expectedCommand: "nuget push", + expectedArgs: []string{"Package.1.0.0.nupkg", "--skip-duplicate"}, + }, + { + name: "dotnet restore", + toolchainType: dotnetutils.DotnetCore, + args: []string{"restore", "Project.csproj"}, + expectedCommand: "restore", + expectedArgs: []string{"Project.csproj"}, + }, + { + name: "nuget push remains one token", + toolchainType: dotnetutils.Nuget, + args: []string{"push", "Package.1.0.0.nupkg"}, + expectedCommand: "push", + expectedArgs: []string{"Package.1.0.0.nupkg"}, + }, + { + name: "dotnet nuget non-push passthrough", + toolchainType: dotnetutils.DotnetCore, + args: []string{"nuget", "locals", "all", "--clear"}, + expectedCommand: "nuget", + expectedArgs: []string{"locals", "all", "--clear"}, + }, + } + + for _, test := range tests { + t.Run(test.name, func(t *testing.T) { + actualCommand, actualArgs := getNugetCommandName(test.args, test.toolchainType) + assert.Equal(t, test.expectedCommand, actualCommand) + assert.Equal(t, test.expectedArgs, actualArgs) + }) + } +} + func TestExtractDockerBuildOptionsFromArgs(t *testing.T) { tests := []struct { name string diff --git a/go.mod b/go.mod index d70890756..e2019675c 100644 --- a/go.mod +++ b/go.mod @@ -8,8 +8,6 @@ replace ( github.com/CycloneDX/cyclonedx-go => github.com/CycloneDX/cyclonedx-go v0.10.0 // Should not be updated to 0.2.6 due to a bug (https://github.com/jfrog/jfrog-cli-core/pull/372) github.com/c-bata/go-prompt => github.com/c-bata/go-prompt v0.2.5 - github.com/jfrog/build-info-go => /Users/bhanur/go/src/jfws/build-info-go/.worktrees/task-RTECO-1574/task/RTECO-1574/rteco-1574-implementation-of-nuget-support-for-client // task/RTECO-1574 - remove before merge - github.com/jfrog/jfrog-cli-artifactory => /Users/bhanur/go/src/jfws/jfrog-cli-artifactory/.worktrees/task-RTECO-1574/task/RTECO-1574/rteco-1574-implementation-of-nuget-support-for-client // task/RTECO-1574 - remove before merge // Should not be updated to 0.2.0-beta.2 due to a bug (https://github.com/jfrog/jfrog-cli-core/pull/372) github.com/pkg/term => github.com/pkg/term v1.1.0 ) @@ -251,3 +249,7 @@ require ( // replace github.com/jfrog/jfrog-cli-core/v2 => github.com/jfrog/jfrog-cli-core/v2 v2.60.1-0.20260604085947-7c110b77b4b4 //replace github.com/jfrog/jfrog-client-go => github.com/jfrog/jfrog-client-go v1.54.2-0.20251007084958-5eeaa42c31a6 + +replace github.com/jfrog/build-info-go => github.com/bhanurp/build-info-go v1.10.10-0.20260729175019-12ca2bdfff04 + +replace github.com/jfrog/jfrog-cli-artifactory => github.com/bhanurp/jfrog-cli-artifactory v0.1.12-0.20260729175419-4c07eea6deff diff --git a/go.sum b/go.sum index 9c0c3f3d1..6a72a226e 100644 --- a/go.sum +++ b/go.sum @@ -101,6 +101,10 @@ github.com/beevik/etree v1.6.0 h1:u8Kwy8pp9D9XeITj2Z0XtA5qqZEmtJtuXZRQi+j03eE= github.com/beevik/etree v1.6.0/go.mod h1:bh4zJxiIr62SOf9pRzN7UUYaEDa9HEKafK25+sLc0Gc= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= +github.com/bhanurp/build-info-go v1.10.10-0.20260729175019-12ca2bdfff04 h1:oNa4yw9haWLPPTFvxl0TYpJqeVS6qyBtUTkHwZ4GYnc= +github.com/bhanurp/build-info-go v1.10.10-0.20260729175019-12ca2bdfff04/go.mod h1:CYRUCvLKfyARjoJXLWAxce1qNUxTEtbRKAARkV42vpE= +github.com/bhanurp/jfrog-cli-artifactory v0.1.12-0.20260729175419-4c07eea6deff h1:+sfdVuMXxx9ADLtBWI/H7ArKE/h0Nld34YIR0mLnVKk= +github.com/bhanurp/jfrog-cli-artifactory v0.1.12-0.20260729175419-4c07eea6deff/go.mod h1:VtYzAnn0XUczOcTCyE+fWVgu3mEZoKvwPREEa7PKEM0= github.com/blang/semver v3.5.1+incompatible h1:cQNTCjp13qL8KC3Nbxr/y2Bqb63oX6wdnnjpJbkM4JQ= github.com/blang/semver v3.5.1+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= github.com/bradleyjkemp/cupaloy/v2 v2.8.0 h1:any4BmKE+jGIaMpnU8YgH/I2LPiLBufr6oMMlVBbn9M= @@ -404,6 +408,8 @@ github.com/jfrog/jfrog-apps-config v1.0.1 h1:mtv6k7g8A8BVhlHGlSveapqf4mJfonwvXYL github.com/jfrog/jfrog-apps-config v1.0.1/go.mod h1:8AIIr1oY9JuH5dylz2S6f8Ym2MaadPLR6noCBO4C22w= github.com/jfrog/jfrog-cli-application v1.0.2-0.20260621072921-cadb78770a3e h1:jUfQzLCVbUazw7FEXf3+57vQheDSHa/Px/Gp4pf/sNI= github.com/jfrog/jfrog-cli-application v1.0.2-0.20260621072921-cadb78770a3e/go.mod h1:p8yLtbmCxxQucIbLZKnWu0F+EDtj6NLXbRQCEK/nb6o= +github.com/jfrog/jfrog-cli-artifactory v0.8.1-0.20260623062654-89dd771ef4de h1:q2w1NMXsFQpcTCC++f0aLbzIvGovHXBpRpeBQWRpGLE= +github.com/jfrog/jfrog-cli-artifactory v0.8.1-0.20260623062654-89dd771ef4de/go.mod h1:VqV0Bed11HoBlugAEGa3RumbwnDVslEf0gKocTzLs9s= github.com/jfrog/jfrog-cli-core/v2 v2.60.1-0.20260624085155-5ba797de2616 h1:bioFXGzf3pF2qnC3LZD1S1saWiHSekL4vdsDSWksj/4= github.com/jfrog/jfrog-cli-core/v2 v2.60.1-0.20260624085155-5ba797de2616/go.mod h1:9R90mhbczGXwW5EGlDs7F08ejQU/xdoDhYHMvzBiqgE= github.com/jfrog/jfrog-cli-evidence v0.9.5-0.20260618135203-4d2bdd4ee35f h1:MV4BATdkEoUYJmdPDvaB9EBb8JQZg28n/K4X7dcmyAY= diff --git a/nuget_test.go b/nuget_test.go index 796e0992d..d8929d07c 100644 --- a/nuget_test.go +++ b/nuget_test.go @@ -184,9 +184,9 @@ func testNugetCmd(t *testing.T, projectPath, buildName, buildNumber string, expe inttestutils.DeleteBuild(serverDetails.ArtifactoryUrl, buildName, artHttpDetails) } -// Add allow insecure connection for testings to work with localhost server +// Add --insecure-tls for tests that use a localhost server. func allowInsecureConnectionForTests(args *[]string) { - *args = append(*args, "--allow-insecure-connections") + *args = append(*args, "--insecure-tls") } func assertNugetDependencies(t *testing.T, module buildInfo.Module, moduleName string) { diff --git a/utils/cliutils/commandsflags.go b/utils/cliutils/commandsflags.go index 7447aaf07..ca00ac694 100644 --- a/utils/cliutils/commandsflags.go +++ b/utils/cliutils/commandsflags.go @@ -2158,13 +2158,13 @@ var commandFlags = map[string][]string{ global, serverIdResolve, repoResolve, nugetV2, }, Nuget: { - BuildName, BuildNumber, module, Project, allowInsecureConnections, serverId, repoResolve, repoDeploy, nugetV2, + BuildName, BuildNumber, module, Project, InsecureTls, serverId, repoResolve, repo, nugetV2, }, DotnetConfig: { global, serverIdResolve, repoResolve, nugetV2, }, Dotnet: { - BuildName, BuildNumber, module, Project, allowInsecureConnections, serverId, repoResolve, repoDeploy, nugetV2, + BuildName, BuildNumber, module, Project, InsecureTls, serverId, repoResolve, repo, nugetV2, }, GoConfig: { global, serverIdResolve, serverIdDeploy, repoResolve, repoDeploy,