@atripp
Hi,
Thanks for the verification, this was actually one of my assumed cases covered under the results EMAIL-*, it returns a 400 error, full error message is above.
I have implemented a manual work around that unfortunately adds to the cognitive load on our development teams. While a resolution is not urgent, it would be appreciated.
greig.maybery_5810
@greig.maybery_5810
Best posts made by greig.maybery_5810
Latest posts made by greig.maybery_5810
-
RE: NPM Connector to Azure DevOps
-
RE: NPM Connector to Azure DevOps
Hi,
Could you point me to your documentation detailing exactly how to connect to an Azure DevOps NPM feed using a connector and personal access tokens. This will save me from testing all of the permutations. -
NPM Connector to Azure DevOps
Re: ProGet Connector to VSTS / Azure DevOps
Hi,
According to the case (PG-1409) this was fixed in 5.1.16
I am using a server on 5.2.24, and am having issues connecting to an Azure Devops npm feed with a connector.
I can successfully make a nuget connector from the same Proget server to the same ADO organisation, and can make an NPM connection to registry.npmjs.org.I tried 3 username variants:
- my email which is used to login to Microsoft, like in the Nuget connector (EMAIL)
- Random name, like in the npmrc (RNAME)
- Empty name as described in the referenced case (ENAME)
I have tried 2 password variants:
- Personal Access Token generated in ADO, as used in the nuget connector (PAT)
- Encrypted PAT, as used in the npmrc (EPAT)
Both email based runs (EMAIL-*) returned a 400 error:
Error processing JSON: System.Net.WebException: The remote server returned an error: (400) Bad Request. at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) at System.Threading.Tasks.TaskFactory`1.FromAsyncCoreLogic(IAsyncResult iar, Func`2 endFunction, Action`1 endAction, Task`1 promise, Boolean requiresSynchronization) --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Inedo.ProGet.Feeds.Npm.NpmConnector.<RequestBearerAuthTokenAsync>d__16.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Inedo.LazyAsync`1.<GetValueAsync>d__12.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Inedo.ProGet.Feeds.Npm.NpmConnector.<CreateWebRequestAsync>d__13.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Inedo.ProGet.Feeds.Npm.NpmConnector.<DownloadStreamAsync>d__3.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Inedo.ProGet.ScheduledTasks.Npm.FullNpmConnectorIndexScheduledTask.<IndexConnectorAsync>d__1.MoveNext()
Both empty username (ENAME-*), and the one with a random name and PAT (RNAME-PAT) returned a 404 error:
Error processing JSON: System.Net.WebException: The remote server returned an error: (404) Not Found. at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) at System.Threading.Tasks.TaskFactory`1.FromAsyncCoreLogic(IAsyncResult iar, Func`2 endFunction, Action`1 endAction, Task`1 promise, Boolean requiresSynchronization) --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Inedo.ProGet.Feeds.Npm.NpmConnector.<DownloadStreamAsync>d__3.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Inedo.ProGet.ScheduledTasks.Npm.FullNpmConnectorIndexScheduledTask.<IndexConnectorAsync>d__1.MoveNext()
The random name with encrypted PAT (RNAME-EPAT) returned a 401:
Error processing JSON: System.Net.WebException: The remote server returned an error: (401) Unauthorized. at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) at System.Threading.Tasks.TaskFactory`1.FromAsyncCoreLogic(IAsyncResult iar, Func`2 endFunction, Action`1 endAction, Task`1 promise, Boolean requiresSynchronization) --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Inedo.ProGet.Feeds.Npm.NpmConnector.<DownloadStreamAsync>d__3.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Inedo.ProGet.ScheduledTasks.Npm.FullNpmConnectorIndexScheduledTask.<IndexConnectorAsync>d__1.MoveNext()
This looked like it was working, but there was an issue with the PAT. I issued another PAT with full API access from and Organisation Admin and tried again, with the same results.
I have run out of ideas, any assistance would be appreciated.