Publier des packages Python (CLI)

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Cet article vous guide tout au long de la publication de packages Python sur un flux Azure Artifacts à l’aide de l’interface de ligne de commande NuGet.

Prerequisites

Produit Exigences
Azure DevOps - Une organisation Azure DevOps .
- Un projet Azure DevOps .
- Téléchargez et installez Python.

Créer un flux

  1. Connectez-vous à votre organisation Azure DevOps et accédez à votre projet.

  2. Sélectionnez Artifacts, puis sélectionnez Create feed.

  3. Entrez un nom pour votre flux.

  4. Choisissez un paramètre de visibilité pour contrôler qui peut afficher les packages dans le flux.

  5. Sélectionnez Inclure des packages à partir de sources publiques courantes si vous souhaitez que votre flux utilise des packages en amont à partir de sources telles que nuget.org ou npmjs.com.

  6. Pour Étendue, choisissez si le flux est limité au projet actuel ou à l’ensemble de l’organisation.

  7. Sélectionnez Créer lorsque vous avez terminé.

    Capture d’écran montrant les sélections pour la création d’un flux dans Azure DevOps Services.

  1. Connectez-vous à votre serveur Azure DevOps et accédez à votre projet.

  2. Sélectionnez Artifacts, puis sélectionnez Create feed.

  3. Entrez un nom pour votre flux.

  4. Choisissez un paramètre de visibilité pour contrôler qui peut afficher les packages dans le flux.

  5. Sélectionnez Inclure des packages à partir de sources publiques courantes si vous souhaitez que votre flux utilise des packages en amont à partir de sources telles que nuget.org ou npmjs.com.

  6. Pour Étendue, choisissez si le flux est limité au projet actuel ou à l’ensemble de l’organisation.

  1. Sélectionnez Créer lorsque vous avez terminé.

    Capture d’écran montrant les sélections pour la création d’un flux dans Azure DevOps 2022.

Note

Lorsque vous créez un flux, le compte de service de génération du projet, tel que projectName Build Service (orgName) est affecté par défaut au rôle Flux et Lecteur en amont (Collaborateur).

Publier des packages

  1. Suivez les étapes de la configuration de Project pour vous authentifier auprès de votre flux si vous ne l’avez pas fait, puis passez à l’étape suivante.

  2. Connectez-vous à votre organization Azure DevOps, puis accédez à votre projet.

  3. Sélectionnez Artefacts, puis sélectionnez Se connecter au flux.

  4. Sélectionnez twine dans le volet de navigation de gauche. S’il s’agit de votre première utilisation d’Azure Artifacts avec twine, veillez à installer les prérequis en sélectionnant Obtenir les outils et en suivant les étapes fournies.

  5. Ajoutez un fichier pypirc dans votre répertoire de base et collez-y l’extrait de code fourni. Votre fichier doit se présenter comme l'extrait suivant. Si vous disposez déjà d’un pypirc qui contient des informations d’identification pour l’index PyPI public, nous vous recommandons de supprimer la section [pypi] pour éviter de publier accidentellement des packages privés dans PyPI.

    [distutils]
    Index-servers =
    FEED_NAME
    
    [FEED_NAME]
    Repository = https://pkgs.dev.azure.com/ORGANIZATION_NAME/PROJECT_NAME/_packaging/FEED_NAME/pypi/upload/
    
  6. Exécutez la commande suivante dans votre répertoire de projet pour créer des distributions source et binaire (wheel).

    python setup.py sdist bdist_wheel
    
  7. Exécutez la commande suivante pour publier votre package : Utilisez l’indicateur -r REPOSITORY_NAME pour vous assurer que vos packages privés ne sont pas publiés accidentellement sur PyPI.

    twine upload -r REPOSITORY_NAME dist/*
    

Importante

Vous devez disposer de twine 1.13.0 ou version ultérieure pour pouvoir utiliser artefacts-keyring. Pour plus d’informations, consultez les Conditions d’utilisation .