Udostępnij za pośrednictwem


Wprowadzenie do pakietów języka Python 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 z kanałów informacyjnych i publicznych rejestrów, takich jak PyPi. Ten przewodnik szybkiego startu przeprowadzi Cię przez proces tworzenia kanału informacyjnego, konfigurowania projektu i zarządzania pakietami języka Python w kanale informacyjnym usługi Azure Artifacts. Z tego artykułu dowiesz się, jak wykonywać następujące działania:

  • Utwórz nowy kanał informacyjny.
  • Uwierzytelnij się za pomocą swojego kanału.
  • Publikowanie pakietów języka Python.
  • Zainstaluj pakiety z repozytorium.

Warunki wstępne

  • Utwórz organizacji usługi Azure Dev Ops i projektu , jeśli jeszcze tego nie zrobiono.

  • Pobierz i zainstaluj python.

Pobieranie kodu

  1. Jeśli nie masz własnego projektu języka Python, możesz użyć następującego przykładowego projektu języka Python:

    https://github.com/microsoft/python-package-template
    
  2. Aby skompilować koło i dystrybucję źródłową, uruchom następujące polecenia w katalogu projektu:

    pip install --upgrade build
    python -m build
    
  3. Jeśli projekt w języku Python ma plik setup.py, możesz również użyć tego polecenia do skompilowania pakietu:

    python setup.py sdist bdist_wheel
    

Tworzenie kanału informacyjnego

  1. Zaloguj się do organizacji usługi Azure DevOps i przejdź do projektu.

  2. Wybierz pozycję Artifacts, a następnie wybierz pozycję Create Feed.

  3. Podaj Nazwę dla kanału informacyjnego, wybierz opcję Widoczność, która definiuje, kto może wyświetlać pakiety, zaznacz Uwzględnij pakiety z typowych źródeł publicznych, jeśli chcesz uwzględnić pakiety ze źródeł, takich jak nuget.org lub npmjs.com, a dla Zakres, zdecyduj, czy kanał informacyjny powinien być określony w zakresie projektu, czy całej organizacji.

  4. Po zakończeniu wybierz Utwórz.

    Zrzut ekranu przedstawiający opcje tworzenia nowego kanału informacyjnego w usługach Azure DevOps Services.

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

  2. Wybierz Artifacts, następnie wybierz Create Feed.

  3. Podaj nazwę dla kanału informacyjnego, wybierz opcję widoczności, która definiuje, kto może wyświetlać pakiety, zaznacz Uwzględnij pakiety z typowych źródeł publicznych, jeśli chcesz uwzględnić pakiety ze źródeł takich jak nuget.org lub npmjs.com, a dla zakresuzdecyduj, czy kanał powinien dotyczyć twojego projektu lub całej organizacji.

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

    Zrzut ekranu przedstawiający opcje tworzenia nowego źródła danych w usłudze Azure DevOps 2022.

  1. Wybierz pozycję Utwórz po zakończeniu.

    Zrzut ekranu przedstawiający opcje tworzenia nowego źródła danych w usłudze Azure DevOps 2020.

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

  2. Wybierz Artifacts, a następnie wybierz Nowy kanał.

  3. W polu nazwa wprowadź opisową nazwę kanału informacyjnego.

    Dla opcji widocznośćwybierz opcję, aby określić, kto może wyświetlać pakiety w feedzie.

    Jeśli chcesz uwzględnić pakiety ze źródeł publicznych, wybierz Użyj pakietów ze źródeł publicznych poprzez tę opcję kanału.

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

    Zrzut ekranu przedstawiający opcje tworzenia nowego źródła danych w usłudze Azure DevOps 2019.

Notatka

Domyślnie, nowo utworzone kanały mają wartość projektu Build Service ustawioną na kanał i nadrzędny czytelnik (współpracownik).

Połącz się z kanałem

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

  2. Wybierz pozycję Artifacts, wybierz źródło danych z menu rozwijanego, a następnie wybierz pozycję Connect to feed.

  3. Wybierz pozycję twine w sekcji Python.

  4. Jeśli po raz pierwszy używasz usługi Azure Artifacts z twine, wybierz pozycję Pobierz narzędzia i wykonaj kroki, aby zainstalować wymagane oprogramowanie.

  5. Dodaj plik pypirc do katalogu domowego i wklej podany fragment. Plik powinien wyglądać następująco:

    [distutils]
    Index-servers =
        FEED_NAME
    
    [FEED_NAME]
    Repository = https://pkgs.dev.azure.com/ORGANIZATION_NAME/PROJECT_NAME/_packaging/FEED_NAME/pypi/upload/
    

Notatka

Jeśli plik .pypirc zawiera już poświadczenia dla publicznego indeksu PyPI, zalecamy usunięcie sekcji [pypi], by uniknąć przypadkowej publikacji pakietów prywatnych do indeksu PyPI.

Publikowanie pakietów

  1. Uruchom to polecenie w katalogu projektu, aby utworzyć dystrybucje źródeł i kół:

    python setup.py sdist bdist_wheel
    
    
  2. Uruchom następujące polecenie, aby opublikować pakiet. Użyj flagi -r FEED_NAME, aby upewnić się, że prywatne pakiety nie zostały przypadkowo opublikowane w repozytorium PyPI.

    twine upload -r <FEED_NAME> dist/*
    

Instalowanie pakietów

  1. Uruchom to polecenie w katalogu projektu, aby zainstalować pakiety:

    pip install
    
  2. Aby zainstalować określony pakiet, uruchom następujące polecenie, zastępując symbol zastępczy nazwą pakietu ze źródła danych.

    pip install <PACKAGE_NAME>
    

Następne kroki