Strongbox: Test the NuGet support with Chocolatey

Created on 15 Mar 2019  路  6Comments  路  Source: strongbox/strongbox

Task Description

We need feedback on how well our NuGet layout provider works with Chocolatey.

You might find the strongbox-examples useful. Perhaps creating a similar example using Chocolatey would be helpful.

Help

  • Our chat
  • Points of contact:

    • @carlspring

    • @sbespalov

    • @fuss86

good first issue help wanted testing

All 6 comments

Chocolatey has issues installing, searching, and upgrading packages that have a hyphen/dash in their name from Strongbox. Many, quite possibly a majority of packages on Chocolatey.org have a hyphen in their name as it is the recommended way to deal with a space in the name of the software rather than say a dot.

Install requests from nuget.exe are similar to this, and work fine-
0.0.0.0:48080/storages/public/nuget-group/FindPackagesById()?id='testing-2'&semVerLevel=2.0.0
While install requests from chocolatey are formated like this-
0.0.0.0:48080/storages/public/nuget-group/Packages()?$filter=(tolower(Id)%20eq%20'testing-2')%20and%20IsLatestVersion
Both are trying to install a packaged named testing-2 which is on the server, nuget.exe seccessfully installs it, but chocolatey fails. Chocolatey works fine installing from strongbox with packages names that do not have a hyphen, such as testing.

I think the AQL included in Strongbox is not accepting the HTTP requests from Chocolatey as valid formating. If I try the chocolatey request in a web browser, it replies as such-
{"error":"AQL syntax error at [1:24], cause [token recognition error at: '-']\nAQL syntax error at [1:25], cause [extraneous input '2' expecting ''']"}

You might want to have a look at these classes:

It seems the grammar file needs some tweaking.

@sbespalov : Any suggestions?

@TheCakeIsNaOH : Thank you for your efforts in investigating this! Could you please provide a simple test case in Java, so that we could look into it?

Could you please provide a simple test case in Java, so that we could look into it?
Like as a separate application or as a code test in strongbox?

I would say more like a proper JUnit test case that tries the above. Have a look at the Nuget controller test, or the ones in the Nuget layout provider for more details.

@TheCakeIsNaOH , @anki2189 , @gretel, @steve-todorov ,

Are we okay to now close this?

Yes, we have tests for it now and it's included in the main pipeline.

Was this page helpful?
0 / 5 - 0 ratings