Wprowadzenie do pakietów npm w usłudze Azure Artifacts

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

Za pomocą usługi Azure Artifacts można publikować i pobierać pakiety npm z kanałów informacyjnych i publicznych rejestrów, takich jak npmjs.com. Ten przewodnik Szybki start przeprowadzi Cię przez proces tworzenia kanału informacyjnego, konfigurowania projektu oraz publikowania i pobierania pakietów npm do i z kanału informacyjnego usługi Azure Artifacts.

Tworzenie kanału informacyjnego

Kanał informacyjny to konstrukcja organizacyjna, która umożliwia użytkownikom przechowywanie pakietów i kontrolowanie, kto może uzyskać do nich dostęp. Usługa Azure Artifacts obsługuje przechowywanie kilku typów pakietów w jednym kanale informacyjnym, takim jak NuGet, npm, Maven, Python, Cargo i Universal.

  1. Zaloguj się do organizacji usługi Azure DevOps, a następnie przejdź do projektu.

  2. Wybierz pozycję Artefakty, a następnie wybierz pozycję Utwórz źródło danych , aby utworzyć nowe źródło danych.

  3. Wprowadź opisową nazwę źródła danych i zdefiniuj jego widoczność (wskazującą, kto może wyświetlać pakiety w kanale informacyjnym). Określ zakres źródła danych, a jeśli chcesz uwzględnić pakiety ze źródeł publicznych, zaznacz pole wyboru Upstream sources (Źródła nadrzędne).

  4. Po zakończeniu wybierz pozycję Utwórz .

    Zrzut ekranu przedstawiający sposób tworzenia kanału informacyjnego potrzeb.

Uwaga

Domyślnie nowo utworzone kanały informacyjne mają ustawioną usługę kompilacji projektu na Źródło danych i Czytelnik nadrzędny (współpracownicy).

Konfigurowanie plików npmrc

Uwaga

vsts-npm-auth nie jest obsługiwany w usłudze Azure DevOps Server.

Zalecamy używanie dwóch plików npmrc. Pierwszy powinien znajdować się w tym samym katalogu co plik package.json. Drugi należy umieścić w katalogu $home (Linux/macOS) lub $env. STRONA GŁÓWNA (Windows) do bezpiecznego przechowywania poświadczeń. Następnie klient npm będzie mógł wyszukać ten plik i pobrać poświadczenia na potrzeby uwierzytelniania. Dzięki temu można udostępnić plik konfiguracji przy zachowaniu bezpieczeństwa poświadczeń.

  1. Zaloguj się do organizacji usługi Azure DevOps, a następnie przejdź do projektu.

  2. Wybierz pozycję Artefakty, a następnie wybierz pozycję Połączenie do kanału informacyjnego.

  3. Wybierz pozycję npm w okienku nawigacji po lewej stronie. Jeśli po raz pierwszy używasz usługi Azure Artifacts z narzędziem npm, wybierz pozycję Pobierz narzędzia i wykonaj kroki pobierania Node.js i konfigurowania maszyny.

  4. Wstaw następujący fragment kodu do pliku npmrc, który znajduje się w tym samym katalogu co plik package.json. Zastąp symbole zastępcze odpowiednimi wartościami.

    • Kanał informacyjny o zakresie organizacji:
    registry=https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/npm/registry/ 
    
    always-auth=true
    
    • Źródło danych o zakresie projektu:
    registry=https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/registry/ 
    
    always-auth=true
    

Konfigurowanie poświadczeń

Ważne

Narzędzie npm obsługuje pojedynczy element registry w pliku npmrc. Istnieje wiele rejestrów z zakresami i źródłami nadrzędnymi.

Jeśli tworzysz oprogramowanie w systemie Windows, zalecamy użycie uwierzytelniania vsts-npm-auth w usłudze Azure Artifacts. Upewnij się, że masz zainstalowane uwierzytelnianie vsts-npm-auth z sekcji Pobierz narzędzia , a następnie uruchom polecenie vsts-npm-auth, aby uzyskać token usługi Azure Artifacts dodany do pliku npmrc na poziomie użytkownika:

vsts-npm-auth -config .npmrc

Publikowanie pakietów

Aby opublikować pakiet npm, uruchom następujące polecenie w katalogu projektu:

npm publish

Ważne

publishConfig Użycie właściwości w celu zastąpienia parametru konfiguracji rejestru w czasie publikowania nie jest obsługiwane.

Przywracanie pakietów

Aby przywrócić pakiet npm, uruchom następujące polecenie w katalogu projektu:

npm install --save <package>

Aby przywrócić wszystkie pakiety npm, uruchom następujące polecenie z katalogu projektu:

npm install