Подключение проект npm в веб-каналы Артефактов Azure

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

Артефакты Azure позволяют разработчикам публиковать и устанавливать различные типы пакетов из веб-каналов и общедоступных реестров, таких как npmjs.com. Чтобы выполнить проверку подлинности с помощью артефактов Azure, необходимо настроить файл конфигурации npm. Этот файл содержит URL-адреса и учетные данные веб-канала, используемые npm, предлагая параметры настройки поведения клиента npm, такие как настройка прокси-серверов, определение расположений пакетов по умолчанию или настройка частных веб-каналов пакетов. NPMRC-файл обычно находится в домашнем каталоге пользователя, но также может быть создан на уровне проекта для переопределения параметров по умолчанию. Изменив NPMRC-файл, пользователи могут персонализировать свой интерфейс npm в соответствии с конкретными требованиями.

Необходимые компоненты

Настройка проекта

Для получения рекомендаций рекомендуется использовать два отдельных файла конфигурации. Первый используется для проверки подлинности с помощью артефактов Azure, а второй — локально и содержит учетные данные.

Чтобы настроить второй файл, просто поместите его в домашний каталог на компьютере разработки и включите все учетные данные реестра. Таким образом, клиент npm может легко получить доступ к учетным данным для проверки подлинности, что позволяет предоставить общий доступ к файлу конфигурации при сохранении безопасности учетных данных.

Ниже приведены инструкции по настройке первого файла конфигурации:

Примечание.

vsts-npm-auth не поддерживается в Azure DevOps Server.

  1. Войдите в организацию Azure DevOps и перейдите к проекту.

  2. Выберите артефакты и выберите Подключение для канала.

    Снимок экрана: подключение к веб-каналу.

  3. Выберите npm в области навигации слева.

  4. Если это первый раз с помощью Azure Artifacts с npm, выберите " Получить средства " и следуйте инструкциям по установке необходимых компонентов.

  5. Следуйте инструкциям в разделе "Настройка проекта", чтобы подключиться к веб-каналу.

    Снимок экрана: настройка проекта npm.

  1. Выберите коллекцию и перейдите к проекту.

  2. Выберите артефакты и выберите Подключение для канала.

    Снимок экрана: подключение к веб-каналу в Azure DevOps Server 2022.1.

  3. Выберите npm в области навигации слева.

  4. Если это первый раз с помощью Azure Artifacts с npm, выберите " Получить средства " и следуйте инструкциям по установке необходимых компонентов.

  5. Следуйте инструкциям в разделе "Настройка проекта", чтобы настроить файл конфигурации.

    Снимок экрана: настройка проекта npm в Azure DevOps Server 2022.1.

  1. Выберите коллекцию и перейдите к проекту.

  2. Выберите артефакты и выберите Подключение для канала.

    Снимок экрана: подключение к веб-каналу в Azure DevOps Server 2020.1.

  3. Выберите npm в области навигации слева.

  4. Если это первый раз с помощью Azure Artifacts с npm, выберите " Получить средства " и следуйте инструкциям по установке необходимых компонентов.

  5. Следуйте инструкциям в разделе "Настройка проекта", чтобы настроить файл конфигурации.

    Снимок экрана: настройка проекта npm в Azure DevOps Server 2020.1.

  1. Выберите коллекцию и перейдите к проекту.

  2. Выберите артефакты и выберите Подключение для канала.

    Снимок экрана: подключение к веб-каналу в Azure DevOps Server 2019.1.

  3. Откроется новое окно. В области навигации слева выберите npm.

  4. Следуйте инструкциям по настройке проекта и npmrc-файлов .

    Снимок экрана: настройка файлов npmrc уровня проекта и уровня пользователя в Azure DevOps Server 2019.1.

Совет

Использование нескольких реестров в NPMRC-файлах поддерживается с область и источниками вышестоящий.

Проверка подлинности конвейера

Для проверки подлинности с помощью конвейера Azure Artifacts рекомендуется использовать задачу проверки подлинности npm.

При использовании средств выполнения задач, таких как gulp или Grunt, важно включить задачу проверки подлинности npm в начале конвейера. Это действие гарантирует, что учетные данные вставляются в NPMRC-файл проекта и сохраняются во время выполнения конвейера, что позволяет последующим шагам получить доступ к учетным данным в файле конфигурации.

  1. Перейдите к проекту, выберите "Конвейеры" и выберите определение конвейера.

  2. Нажмите кнопку "Изменить", чтобы изменить конвейер.

  3. Выберите + , чтобы добавить новую задачу в конвейер.

    Снимок экрана: добавление задачи проверки подлинности npm в конвейер.

  1. Перейдите к проекту, выберите "Сборки конвейеров>" и выберите определение сборки.

  2. Выберите "Изменить", чтобы изменить конвейер сборки.

  3. Выберите + , чтобы добавить новую задачу в конвейер сборки.

    Снимок экрана: добавление задачи проверки подлинности npm в конвейер.

  1. Найдите задачу проверки подлинности npm и нажмите кнопку "Добавить".

    Снимок экрана: задача проверки подлинности npm, добавленная в конвейер.

  2. Выберите NPMRC-файл, а затем нажмите кнопку "Сохранить и очередь" после завершения.

    Снимок экрана: добавление файла *.npmrc*

Примечание.

Для доступа к веб-каналу убедитесь, что роль службы сборки имеет значение Feed And Upstream Reader (Участник) в параметрах веб-канала.

Снимок экрана: роли службы сборки в параметрах веб-канала.

Примечание.

Если ваша организация использует брандмауэр или прокси-сервер, убедитесь, что вы разрешаете соответствующие URL-адреса домена. Дополнительные сведения см. в разделе "Разрешенные IP-адреса" и URL-адреса домена.

Устранение неполадок

vsts-npm-auth не распознается

При возникновении следующей ошибки во время выполнения проекта:

  • Cmd: 'vsts-npm-auth' is not recognized as an internal or external command, operable program or batch file.

  • PowerShell: vsts-npm-auth : The term 'vsts-npm-auth' is not recognized as the name of a cmdlet, function, script file, or operable program.

Возможно, папка модулей npm не добавлена в путь. Чтобы устранить эту проблему, выполните повторную настройку Node.js и выберите Add to PATH этот параметр.

Снимок экрана: настройка node.js.

Кроме того, можно добавить папку модулей npm в путь, изменив переменную PATH в %APPDATA%\npm командной строке или $env:APPDATA\npm в PowerShell.

Не удается пройти проверку подлинности

Если вы работаете с ошибкой E401: code E401 npm ERR! Unable to authenticate Выполните команду с флагом vsts-npm-auth -F для повторной проверки подлинности.

vsts-npm-auth -config .npmrc -F

Сброс vsts-npm-auth

Выполните следующие действия, чтобы сбросить учетные данные vsts-npm-auth:

  1. Удалите vsts-npm-auth:

    npm uninstall -g vsts-npm-auth
    
  2. Снимите кэш npm:

    npm cache clean --force
    
  3. Удалите NPMRC-файл.

  4. Переустановите vsts-npm-auth:

    npm install -g vsts-npm-auth --registry https://registry.npmjs.com --always-auth false