Prise en main des packages Python dans Azure Artifacts
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
À l’aide d’Azure Artifacts, vous pouvez publier et télécharger des packages à partir de flux et de registres publics tels que PyPi. Ce guide de démarrage rapide vous guide tout au long de la création d’un flux, de la configuration de votre projet et de la gestion des packages Python dans votre flux Azure Artifacts. Dans cet article, vous allez apprendre à :
- Créez un flux.
- Authentifiez-vous avec votre flux de données.
- Publiez des packages Python.
- Installez des packages à partir de votre flux.
Conditions préalables
Créez une organisation Azure DevOps et un projet si ce n’est déjà fait.
Téléchargez et installez python.
Obtenir le code
Si vous n’avez pas votre propre projet Python, vous pouvez utiliser l’exemple de projet Python suivant :
https://github.com/microsoft/python-package-template
Pour générer votre roue et votre distribution source, exécutez les commandes suivantes dans le répertoire de votre projet :
pip install --upgrade build python -m build
Si votre projet Python a un fichier setup.py, vous pouvez également utiliser cette commande pour générer votre package :
python setup.py sdist bdist_wheel
Créer un flux
Connectez-vous à votre organisation Azure DevOps et accédez à votre projet.
Sélectionnez Artifacts, puis sélectionnez Create feed.
Fournissez un nom pour votre flux, choisissez l’option Visibilité qui définit qui peut afficher vos packages, cochez Inclure des packages à partir de sources publiques courantes si vous souhaitez inclure des packages à partir de sources telles que nuget.org ou npmjs.com, et pour étendue, déterminez si le flux doit être étendu à votre projet ou à l’ensemble de l’organisation.
Sélectionnez Créer lorsque vous avez terminé.
Connectez-vous à votre serveur Azure DevOps, puis accédez à votre projet.
Sélectionnez Artifacts, puis sélectionnez Create feed.
Fournissez un nom pour votre flux, choisissez l’option Visibilité qui définit qui peut afficher vos packages, cochez Inclure des packages à partir de sources publiques courantes si vous souhaitez inclure des packages à partir de sources telles que nuget.org ou npmjs.com, et pour étendue, déterminez si le flux doit être étendu à votre projet ou à l’ensemble de l’organisation.
Sélectionnez Créer lorsque vous avez terminé.
Sélectionnez Créer lorsque vous avez terminé.
Connectez-vous à votre serveur Azure DevOps, puis accédez à votre projet.
Sélectionnez Artifacts, puis sélectionnez New feed.
Pour Name, entrez un nom descriptif pour votre flux.
Pour Visibility, sélectionnez une option afin d’indiquer qui peut afficher les packages dans le flux.
Si vous souhaitez inclure des packages à partir de sources publiques, sélectionnez l’option Utiliser des packages à partir de sources publiques via cette option de flux.
Sélectionnez Créer lorsque vous avez terminé.
Remarque
Par défaut, les flux nouvellement créés ont la valeur Build Service de leur projet définie sur Feed and Upstream Reader (Collaborator).
Se connecter à un flux
Connectez-vous à votre organisation Azure DevOps, puis accédez à votre projet.
Sélectionnez Artifacts, sélectionnez votre flux dans le menu déroulant, puis sélectionnez Connect to feed.
Sélectionnez twine sous la section Python.
Si c’est votre première utilisation d’Azure Artifacts avec twine, sélectionnez Obtenir les outils et suivez les étapes pour installer les prérequis.
Ajoutez un fichier pypirc dans votre répertoire de base et collez l’extrait de code fourni. Votre fichier doit ressembler à ceci :
[distutils] Index-servers = FEED_NAME [FEED_NAME] Repository = https://pkgs.dev.azure.com/ORGANIZATION_NAME/PROJECT_NAME/_packaging/FEED_NAME/pypi/upload/
Remarque
Si votre fichier .pypirc contient déjà des informations d’identification pour l’index PyPI public, nous vous recommandons de supprimer la section [pypi]
pour empêcher la publication accidentelle de packages privés sur PyPI.
Publier des packages
Exécutez cette commande dans votre répertoire de projet pour créer des distributions source et de roue :
python setup.py sdist bdist_wheel
Exécutez la commande suivante pour publier votre package. Utilisez l’indicateur -r FEED_NAME pour vous assurer que vos packages privés ne sont pas publiés accidentellement sur PyPI.
twine upload -r <FEED_NAME> dist/*
Installer des packages
Exécutez cette commande dans le répertoire de votre projet pour installer vos packages :
pip install
Pour installer un package spécifique, exécutez la commande suivante, en remplaçant l’espace réservé par le nom du package à partir de votre flux.
pip install <PACKAGE_NAME>