Udostępnij za pośrednictwem


Korzystanie z pakietów z indeksu pakietów języka Python (PyPI)

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

Korzystając z usługi Azure Artifacts, deweloperzy mogą publikować i wykorzystywać pakiety z źródeł danych usługi Azure Artifacts i rejestrów zewnętrznych, takich jak pypi.org. Ten artykuł przeprowadzi Cię przez proces konfigurowania projektu i korzystania z wiersza polecenia w celu wydajnego korzystania z pakietów języka Python z interfejsu PyPI.

Ten artykuł obejmuje następujące zagadnienia:

  • Włączanie źródeł nadrzędnych dla kanału informacyjnego
  • Dodawanie interfejsu PyPI jako nadrzędnego źródła
  • Konfigurowanie projektu
  • Instalowanie pakietów z indeksu pakietów języka Python

Wymagania wstępne

  • Organizacja i projekt usługi Azure DevOps. Utwórz organizację lub projekt, jeśli jeszcze tego nie zrobiono.

  • Źródło danych usługi Azure Artifacts.

  • Pobierz język Python.

Włączanie źródeł nadrzędnych

Jeśli jeszcze nie utworzono kanału informacyjnego, wykonaj poniższe kroki, aby utworzyć nowe. Pamiętaj, aby zaznaczyć pole wyboru dla nadrzędnych źródeł w celu włączenia nadrzędnych źródeł. Jeśli masz już źródło danych, przejdź do następnego kroku , aby dodać PyPI jako źródło nadrzędne.

  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 następnie zaznacz pole wyboru Nadrzędne źródła, aby uwzględnić pakiety z publicznych rejestrów.

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

    A screenshot showing how to create a need feed.

Dodawanie nadrzędnego interfejsu PyPI

Jeśli podczas tworzenia kanału informacyjnego wybrano pole wyboru nadrzędne źródła, punkt PyPI powinien zostać automatycznie uwzględniony jako nadrzędne źródło. Jeśli nie, możesz dodać ją ręcznie, wykonując następujące kroki:

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

  2. Wybierz pozycję Artefakty, a następnie wybierz ikonę gear icon koła zębatego, aby przejść do pozycji Kanał informacyjny Ustawienia.

  3. Wybierz pozycję Nadrzędne źródła, a następnie wybierz pozycję Dodaj nadrzędne źródło, aby dodać nowe nadrzędne źródło.

  4. Wybierz pozycję Źródło publiczne, a następnie z menu rozwijanego wybierz pozycję PyPI (https://pypi.org/).

  5. Wybierz pozycję Zapisz po zakończeniu, a następnie wybierz pozycję Zapisz jeszcze raz w prawym górnym rogu, aby zapisać zmiany.

Uwierzytelnianie za pomocą kanału informacyjnego

  1. Upewnij się, że pobrano język Python, a następnie uruchom następujące polecenie, aby uaktualnić menedżera pakietów języka Python:

    python -m pip install --upgrade pip
    
  2. Uruchom następujące polecenie, aby zainstalować klucz usługi Azure Artifacts:

    pip install keyring artifacts-keyring
    
  3. Utwórz osobisty token dostępu z zakresem odczytu pakietu>w celu uwierzytelniania za pomocą usługi Azure DevOps. Przy pierwszym nawiązaniu połączenia z usługą Azure DevOps po wyświetleniu monitu należy wprowadzić poświadczenia. Podaj nazwę użytkownika (dowolny ciąg) i osobisty token dostępu w wyznaczonych polach. Te poświadczenia będą buforowane lokalnie i automatycznie używane do logowania się przy następnym użyciu usługi.

  4. Przejdź do folderu projektu, a następnie uruchom następujące polecenie, aby utworzyć nowe środowisko wirtualne:

    python -m venv <VIRTUAL_ENVIRONMENT_NAME>
    
  5. Utwórz nowy plik pip.ini (Windows) lub plik pip.conf (Mac/Linux) w środowisku wirtualnym, a następnie wklej następujący fragment kodu do pliku. Pamiętaj, aby zastąpić symbole zastępcze odpowiednimi informacjami i zachować ostrożność, aby nie zatwierdzać tego pliku w repozytorium publicznym, ponieważ zawiera osobisty token dostępu.

    • Źródło danych o zakresie projektu:

      [global]
      extra-index-url=https://<FEED_NAME>:<YOUR_PERSONAL_ACCESS_TOKEN>@pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/pypi/simple/
      
    • Kanał informacyjny o zakresie organizacji:

      [global]
      extra-index-url=https://<FEED_NAME>:<YOUR_PERSONAL_ACCESS_TOKEN>@pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/pypi/simple/
      

Instalowanie pakietów z interfejsu PyPI

Po skonfigurowaniu projektu do uwierzytelniania za pomocą naszego kanału informacyjnego możemy rozpocząć instalowanie pakietów z nadrzędnego interfejsu PyPI. W tym przykładzie zainstalujemy polecenie Flask:

  1. W oknie wiersza polecenia przejdź do folderu projektu i uruchom następujące polecenie, aby aktywować środowisko wirtualne. Zastąp symbol zastępczy nazwą utworzonego wcześniej środowiska wirtualnego:

    <YOUR_VIRTUAL_ENVIRONMENT_NAME>/Scripts/Activate.ps1
    
  2. Uruchom następujące polecenie, aby sprawdzić pakiety zainstalowane w środowisku wirtualnym:

    pip list
    
  3. Uruchom następujące polecenie, aby zainstalować platformę Flask.

    pip install -U Flask
    
  4. Po zainstalowaniu pakietu usługa Azure Artifacts zapisze kopię tego pakietu w kanale informacyjnym. Pakiet powinien być dostępny w kanale informacyjnym, jak pokazano na poniższym zrzucie ekranu.

    A screenshot showing packages installed from PyPI upstream.