npm публикует лазурные артефакты - PullRequest
0 голосов
/ 27 февраля 2019

Я пытаюсь опубликовать пакет с областью действия в частном фиде артефактов devure.Я следовал инструкциям здесь .У меня есть проект .npmrc со следующими записями:

@my-scope:registry=https://pkgs.dev.azure.com/my-org/_packaging/my-feed/npm/registry/
@my-scope:always-auth=true

В моем глобальном пользователе .npmrc у меня есть следующие записи:

prefix=/usr/local
strict-ssl=false
unsafe-perm=true
//registry.npmjs.org/:_authToken="my-real-token"
//pkgs.dev.azure.com/my-org/_packaging/my-feed/npm/registry/:username=${NPM_USERNAME}
//pkgs.dev.azure.com/my-org/_packaging/my-feed/npm registry/:_password="my-real-base64-token"
//pkgs.dev.azure.com/my-org/_packaging/my-feed/npm/registry/:email=${NPM_EMAIL}
//pkgs.dev.azure.com/my-org/_packaging/my-feed/npm/registry/:always-auth=true
@my-scope:registry=https://pkgs.dev.azure.com/my-org/_packaging/my-feed/npm/registry/
//pkgs.dev.azure.com/my-org/_packaging/my-feed/npm registry/:_authToken="my-real-base64-token"
cafile=${NPM_CERT_LOCATION}

Когда я пытаюсь: npm publish, я получаюследующая ошибка:

Unable to authenticate, need: Bearer authorization_uri=https://login.windows.net/some-guid, Basic realm="https://pkgsprodcus1.pkgs.visualstudio.com/", TFS-Federated

Исходя из предыдущих сообщений, я вижу, что мне может потребоваться выполнить вход в систему npm.Выполнение логина npm дает мне эту ошибку:

npm verb node v6.9.2
npm verb npm  v6.8.0
npm ERR! code E400
npm ERR! 400 Bad Request - PUT https://pkgs.dev.azure.com/my-org/_packaging/my-feed/npm/registry/-/user/org.couchdb.user:my-username

Я смотрел на это и на , которые, казалось, были связаны.Однако ни один из них не работал.Я попытался: curl и curl -u, который дал мне следующую ошибку:

{"$id":"1","innerException":null,"message":"TF400813: Resource not available for anonymous access. Client authentication required.","typeName":"Microsoft.TeamFoundation.Framework.Server.UnauthorizedRequestException, Microsoft.TeamFoundation.Framework.Server","typeKey":"UnauthorizedRequestException","errorCode":0,"eventId":3000}%

Я также пробовал с прокси и сертификатом.Однако с такими же результатами.

1 Ответ

0 голосов
/ 24 мая 2019

Это немного старый, не уверен, что вы все еще застряли, но для Windows вы можете использовать этот пакет npm: https://www.npmjs.com/package/vsts-npm-auth:

npm install -g vsts-npm-auth
vsts-npm-auth -config path-to-your\.npmrc

Вот более полная статья из DevOps Azure, котораяпроведет вас через настройки, .npmrc и auth и публикации: https://docs.microsoft.com/en-us/azure/devops/artifacts/npm/npmrc?view=azure-devops&tabs=windows:

Если вы разрабатываете на Linux или Mac, vsts-npm-auth не поддерживается, и мы рекомендуем генерировать токен следующим образом для вашего$ HOME / .npmrc Диалоговое окно «Подключиться к каналу» генерирует токен соответствующего формата, который можно поместить в файл .npmrc со сроком службы 90 дней.

  1. В артефактах Azure выберите Подключиться к каналу.
  2. Выберите npm.
  3. Выберите Создать учетные данные npm.Скопируйте учетные данные, чтобы добавить их в свой пользовательский файл .npmrc вручную.Для Windows это в% USERPROFILE% .npmrc и может быть полезно, если вышеуказанный метод не работает.Для Linux он находится в $ HOME / .npmrc.
...