NuKeeperDotNet/NuKeeper

Nukeeper update giving error: Unrecognized command or argument

chandra306 opened this issue ยท 8 comments

๐Ÿ› Bug Report

Reproduction steps

I tried specifying source :

  1. Running command nukeeper update -m 10 -a 0 is giving below error.
  2. nukeeper update -m 10 -a 0 -s "https://awstfs.XXX.com/tfs/Software%20Development/_packaging/XXXPackageFeed/nuget/v3/index.json" and still getting same error

Updating XXX.xx to 1.0.xx2 from 1.0.xx1 in 1 place since 2 days ago.
NuKeeper.Abstractions.NuKeeperException: Command dotnet failed with exit code: 1

	   Writing C:\Users\XXX\AppData\Local\Temp\tmp44F4.tmp

Specify --help for a list of available options and commands.
error: Unrecognized command or argument 'Development/_packaging/XXXPackageFeed/nuget/v3/index.json'
at NuKeeper.Update.ProcessRunner.ExternalProcess.Run(String workingDirectory, String command, String arguments, Boolean ensureSuccess) in d:\a\r1\a_NuKeeper PR Build\drop\NuKeeper.Update\ProcessRunner\ExternalProcess.cs:line 63
at NuKeeper.Update.Process.DotNetUpdatePackageCommand.Invoke(PackageInProject currentPackage, NuGetVersion newVersion, PackageSource packageSource, NuGetSources allSources) in d:\a\r1\a_NuKeeper PR Build\drop\NuKeeper.Update\Process\DotNetUpdatePackageCommand.cs:line 54
at NuKeeper.Update.UpdateRunner.Update(PackageUpdateSet updateSet, NuGetSources sources) in d:\a\r1\a_NuKeeper PR Build\drop\NuKeeper.Update\UpdateRunner.cs:line 57
at NuKeeper.Local.LocalUpdater.ApplyUpdates(IReadOnlyCollection1 updates, IFolder workingFolder, NuGetSources sources) in d:\a\r1\a\_NuKeeper PR Build\drop\NuKeeper\Local\LocalUpdater.cs:line 72 at NuKeeper.Local.LocalUpdater.ApplyUpdates(IReadOnlyCollection1 updates, IFolder workingFolder, NuGetSources sources, SettingsContainer settings) in d:\a\r1\a_NuKeeper PR Build\drop\NuKeeper\Local\LocalUpdater.cs:line 61
at NuKeeper.Local.LocalEngine.Run(SettingsContainer settings, Boolean write) in d:\a\r1\a_NuKeeper PR Build\drop\NuKeeper\Local\LocalEngine.cs:line 75
at NuKeeper.Commands.UpdateCommand.Run(SettingsContainer settings) in d:\a\r1\a_NuKeeper PR Build\drop\NuKeeper\Commands\UpdateCommand.cs:line 52
at NuKeeper.Commands.CommandBase.OnExecute() in d:\a\r1\a_NuKeeper PR Build\drop\NuKeeper\Commands\CommandBase.cs:line 108
at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.InvokeAsync(MethodInfo method, Object instance, Object[] arguments)
at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.OnExecute(ConventionContext context, CancellationToken cancellationToken)
at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.<>c__DisplayClass0_0.<b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at McMaster.Extensions.CommandLineUtils.CommandLineApplication.ExecuteAsync(String[] args, CancellationToken cancellationToken)
at NuKeeper.Program.Main(String[] args) in d:\a\r1\a_NuKeeper PR Build\drop\NuKeeper\Program.cs:line 35
PM> nukeeper update -m 10 -a 0

Expected behavior:

Should update packages in my AWS nuget source .

Configuration

Version: 0.32.0 - Latest Version

Platform if applicable: AWS\

  • ๐Ÿ› ๏ธ NuKeeper CLI
  • โœจ GitHub
  • ๐Ÿค– AzureDevops
  • ๐Ÿ Bitbucket
  • ๐ŸŒŽ Gitlab
  • ๐Ÿ“บ Gitea
  • ๐Ÿณ Docker

Can some one please help

Unrecognized command or argument 'Development/_packaging/XXXPackageFeed/nuget/v3/index.json'

Hmm, that's odd, the escaping with ArgumentEscaper should have prevented that from being seperated. What happens without the " quotes around that url?

Hi Anthony,
Thank you for the response. I tried with\without double quotes, single quotes and see same error:
nukeeper update -m 10 -a 0 -s https://awstfs.XXX.com/tfs/Software%20Development/_packaging/PackageFeed/nuget/v3/index.json
nukeeper update -m 10 -a 0 -s "https://awstfs.XXX.com/tfs/Software%20Development/_packaging/PackageFeed/nuget/v3/index.json"
nukeeper update -m 10 -a 0 -s 'https://awstfs.XXX.com/tfs/Software%20Development/_packaging/PackageFeed/nuget/v3/index.json'
nukeeper update -m 10 -a 0 -s 'https://awstfs.XXX.com/tfs/Software Development/_packaging/PackageFeed/nuget/v3/index.json'

I also tried with escape sequence and see below error: nukeeper update -m 10 -a 0 -s "https://awstfs.XXX.com/tfs/Software\ Development/_packaging/PackageFeed/nuget/v3/index.json"

Getting XXX.XXX.POL from https://awstfs.XXX.com/tfs/Software\ Development/_packaging/PackageFeed/nuget/v3/index.json [https://awstfs.XXX.com/tfs/Software\ Development/_packaging/PackageFeed/nuget/v3/index.json] returned exception: Unable to load the service index for source https://awstfs.XXX.com/tfs/Software\ Development/_packaging/PackageFeed/nuget/v3/index.json.

On Wed, Jun 10, 2020 at 3:25 PM Anthony Steele notifications@github.com wrote:
Unrecognized command or argument 'Development/_packaging/XXXPackageFeed/nuget/v3/index.json'Hmm, that's odd, the escaping with ArgumentEscaper should have prevented that from being seperated. What happens without the " quotes around that url?โ€”
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

I don't think you should be encoding the url, try replacing the %20 with a regular space?

stale commented

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

What terminal are you using to invoke nukeeper? It might be a quoting issue there.

I can run the command in the original post in git bash:

dotnet run --project Nukeeper/NuKeeper.csproj --framework netcoreapp3.1 -- update -m 10 -a 0 -s "https://awstfs.XXX.com/tfs/Software%20Development/_packaging/XXXPackageFeed/nuget/v3/index.json"

It correctly takes the full url as a source.

Hi Crispy, Thanks for the reply.
I am using tfs build pipelines for running this.I ran the command you gave and see this error:
##[error]Error parsing organisation from organisation url: 'https://awstfs.XXX.com/tfs/Software%20Development/'.

I am checking source doe and found this:

image

We are trying to split based on '/' and expecting array to be of length 4 or 5. Is it the reason for this error and not spaces in url?
Can you please check

stale commented

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.