Publikowanie pakietów języka Python za pomocą usługi Azure Pipelines
Artykuł
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Usługa Azure Pipelines umożliwia deweloperom publikowanie pakietów języka Python w źródłach danych usługi Azure Artifacts i publicznych rejestrach, takich jak PyPi. Ten artykuł przeprowadzi Cię przez proces publikowania pakietów języka Python w kanale informacyjnym usługi Azure Artifacts.
Wymagania wstępne
Organizacja i projekt usługi Azure DevOps. Utwórz organizację lub projekt, jeśli jeszcze tego nie zrobiono.
Aby opublikować pakiety języka Python przy użyciu twine, musisz najpierw uwierzytelnić się za pomocą kanału Azure Artifacts. Zadanie TwineAuthenticate udostępnia poświadczenia bliźniaczych reprezentacji do zmiennej środowiskowejPYPIRC_PATH. Ta zmienna jest następnie używana przeztwine do publikowania pakietów bezpośrednio z twojego potoku.
Ważne
Poświadczenia przechowywane w zmiennej środowiskowej PYPIRC_PATH mają pierwszeństwo przed poświadczeniami w plikach .ini i .conf.
Jeśli dodasz wiele zadań TwineAuthenticate na różnych etapach pipeline'u, każde wykonanie zadania rozszerzy (nie zastąpi) istniejącą zmienną środowiskową PYPIRC_PATH.
Zaloguj się do organizacji usługi Azure DevOps, a następnie przejdź do projektu.
Wybierz element Pipelines, a później wybierz definicję "pipeline".
Wybierz pozycję Edytuj, a następnie dodaj następujący fragment kodu do potoku YAML.
YAML
steps:- task:UsePythonVersion@0 displayName:'Use Python 3.x'- task:TwineAuthenticate@1 inputs: artifactFeed:<PROJECT_NAME/FEED_NAME>## For an organization-scoped feed, use: artifactFeed: <FEED_NAME>
Zaloguj się do organizacji usługi Azure DevOps, a następnie przejdź do projektu.
Wybierz pozycję Potoki, wybierz definicję potoku, a następnie wybierz pozycję Edytuj.
Wybierz znak +, aby dodać nowe zadanie, a następnie dodaj zadanie Użyj wersji Python oraz zadanie Python twine upload authenticate do definicji pipeline'u. Możesz pozostawić zadanie UsePythonVersion@0 z ustawieniami domyślnymi i skonfigurować TwineAuthenticate@1 w następujący sposób:
Wybierz źródło danych z menu rozwijanego Moja nazwa kanału informacyjnego. Aby uwierzytelnić się za pomocą kanału informacyjnego spoza organizacji, wybierz kanał informacyjny z organizacji zewnętrznych i utwórz nowe połączenie z usługą.
Publikowanie pakietów języka Python w kanale informacyjnym
Uwaga
Aby opublikować pakiety w kanale przy użyciu usługi Azure Pipelines, upewnij się, że zarówno tożsamość usługi Project Collection Build Service, jak i tożsamość usługi kompilacji projektu są przypisane do roli publikatora kanału (współtwórca) w ustawieniach kanału. Aby uzyskać szczegółowe informacje, zobacz Zarządzanie uprawnieniami .
Zaloguj się do organizacji usługi Azure DevOps, a następnie przejdź do projektu.
Wybierz pozycję Potoki, wybierz definicję potoku, a następnie wybierz pozycję Edytuj.
Wybierz znak +, aby dodać nowe zadanie, a następnie dodaj zadanie Użyj wersji języka Python do potoku. W tym przykładzie ustawiamy specyfikację wersji na >= 3.7.
Dodaj zadanie wiersza polecenia do potoku i wklej następujące polecenia w polu tekstowym Script, aby zainstalować kompilację i twine na agencie:
command
pip install build
pip install twine
Dodaj nowe zadanie wiersza polecenia do potoku, a następnie wklej następujące polecenie w pole tekstowe skryptu , aby skompilować projekt:
command
python -m build -w
Dodaj zadanie Twine Authenticate do swojego potoku i wybierz swoje źródło danych z menu rozwijanego Moja nazwa kanału.
Dodaj kolejne zadanie wiersza polecenia do potoku i wklej następujące polecenie w polu tekstowym skryptu , aby opublikować pakiet w swoim strumieniu, zastępując symbol zastępczy nazwą swojego strumienia:
Dołącz do serii meetup, aby tworzyć skalowalne rozwiązania sztucznej inteligencji oparte na rzeczywistych przypadkach użycia z innymi deweloperami i ekspertami.
W tym module zespół internetowy Space Game przeprowadzi Cię przez proces tworzenia potoku kompilacji, który tworzy pakiet, który może być używany przez wiele aplikacji.
Zarządzanie pozyskiwaniem i przygotowywaniem danych, trenowanie i wdrażanie modelu oraz monitorowaniem rozwiązań uczenia maszynowego za pomocą języka Python, usługi Azure Machine Learning i MLflow.
Uwierzytelnianie w celu przekazywania dystrybucji języka Python przy użyciu bliźniaczej reprezentacji. Dodaj element "-r FeedName/EndpointName --config-file $(PYPIRC_PATH)" do polecenia przekazywania bliźniaczej reprezentacji. W przypadku kanałów informacyjnych obecnych w tej organizacji użyj nazwy kanału informacyjnego jako repozytorium (-r). W przeciwnym razie użyj nazwy punktu końcowego zdefiniowanego w połączeniu z usługą.