Guide de démarrage rapide pour Python

Ce guide de démarrage rapide explique comment configurer un dépôt Python Artifact Registry, importer un package, puis installer le package.

Avant de commencer

  1. Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
  2. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  3. Assurez-vous que la facturation est activée pour votre projet Cloud. Découvrez comment vérifier que la facturation est activée pour votre projet.

  4. Activez l'API Artifact Registry.

    Activer l'API

  5. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  6. Assurez-vous que la facturation est activée pour votre projet Cloud. Découvrez comment vérifier que la facturation est activée pour votre projet.

  7. Activez l'API Artifact Registry.

    Activer l'API

Lancer Cloud Shell

Dans ce guide de démarrage rapide, vous allez utiliser Cloud Shell, qui est un environnement shell permettant de gérer les ressources hébergées sur Google Cloud.

Cloud Shell est préinstallé avec l'outil de ligne de commande gcloud et Python. L'outil gcloud fournit l'interface de ligne de commande principale pour Google Cloud.

Lancez Cloud Shell :

  1. Accédez à Google Cloud Console.

    Google Cloud Console

  2. Dans la barre d'outils Cloud Console, cliquez sur Activer Cloud Shell:

Une session Cloud Shell s'ouvre dans un cadre situé en bas de la console. Cette interface système vous permet d'exécuter les commandes gcloud.

Configurer un environnement virtuel

Dans cette section, vous allez utiliser venv pour créer un environnement virtuel isolé.

Dans l'environnement que vous allez installer:

L'utilisation d'un environnement virtuel isole les dépendances Python d'un projet et celles des autres projets. Nous vous recommandons de toujours utiliser un environnement virtuel par projet lors du développement local avec Python.

Pour configurer un environnement virtuel:

  1. Utilisez la commande venv pour créer une copie virtuelle de l'installation Python 3 dans un dossier nommé quickstart.

    python3 -m venv quickstart
    
  2. Pour configurez l'interface système afin qu'elle utilise les chemins d'accès venv pour Python, activez l'environnement virtuel.

    source quickstart/bin/activate
    

    L'invite de commande change pour indiquer que vous utilisez l'environnement virtuel Python 3.

    (quickstart) user@~$ python --version
    
  3. Mettez à jour pip vers la dernière version:

    python -m pip install -U pip
    
  4. Installez Twine et le backend de trousseau de clés Artifact Registry à l'aide de la commande suivante:

    pip install twine keyrings.google-artifactregistry-auth
    
  5. Répertoriez les backends pour confirmer l'installation.

    keyring --list-backends
    

    Le résultat ressemble à l'exemple suivant :

    keyring.backends.chainer.ChainerBackend (priority: -1)
    keyring.backends.fail.Keyring (priority: 0)
    keyrings.gauth.GooglePythonAuth (priority: 9)
    

Créer un dépôt

Créez le dépôt pour vos packages.

  1. Créez le dépôt :

    Console

    1. Ouvrez la page Dépôts dans Cloud Console.

      Ouvrir la page "Dépôts"

    2. Cliquez sur Créer un dépôt.

    3. Spécifiez quickstart-python-repo comme nom de dépôt.

    4. Choisissez le format Python.

    5. Sous Type d'emplacement, sélectionnez Région, puis l'emplacement us-central1.

    6. Cliquez sur Create (Créer).

    Le dépôt est ajouté à la liste des dépôts.

    gcloud

    1. Exécutez la commande suivante pour créer un dépôt de packages Python dans le projet actuel nommé quickstart-python-repo, à l'emplacement us-central1.

      gcloud artifacts repositories create quickstart-python-repo \
          --repository-format=python \
          --location=us-central1 \
          --description="Python package repository"
      
    2. Exécutez la commande suivante pour vérifier que votre dépôt a bien été créé :

      gcloud artifacts repositories list
      

    Exécutez la commande gcloud artifacts pour en savoir plus sur les commandes Artifact Registry.

  2. Pour simplifier les commandes gcloud, définissez le dépôt par défaut sur quickstart-python-repo et l'emplacement par défaut sur us-central1. Une fois les valeurs définies, vous n'avez pas besoin de les spécifier dans les commandes gcloud nécessitant un dépôt ou un emplacement.

    Pour définir le dépôt, exécutez la commande suivante :

    gcloud config set artifacts/repository quickstart-python-repo
    

    Pour définir l'emplacement, exécutez la commande suivante :

    gcloud config set artifacts/location us-central1
    

    Pour plus d'informations sur ces commandes, reportez-vous à la documentation gcloud config set.

Configurer l'authentification

Pour configurer l'authentification avec le backend de trousseau de clés Artifact Registry:

  1. Exécutez la commande suivante pour imprimer la configuration du dépôt à ajouter à votre projet Python.

    gcloud artifacts print-settings python
    
  2. Créez ou mettez à jour le fichier .pypirc. Ce fichier spécifie les dépôts permettant de publier des packages Python.

    L'emplacement par défaut est:

    • Linux et macOS: $HOME/.pypirc
    • Windows : %USERPROFILE%\.pypirc

    Dans le fichier .pypirc, index-servers répertorie les dépôts, puis chaque dépôt comporte une section distincte avec les paramètres du dépôt.

    [distutils]
    index-servers =
        quickstart-python-repo
    
    [quickstart-python-repo]
    repository: https://us-central1-python.pkg.dev/PROJECT_ID/quickstart-python-repo/
    

    Remplacez PROJECT_ID par l'ID du projet.

  3. Créez un fichier de configuration pip pour votre environnement virtuel. Les paramètres de ce fichier sont combinés à ceux de pip.conf ou global par utilisateur.

    • Unix et macOS: $VIRTUAL_ENV/pip.conf
    • Windows : %VIRTUAL_ENV%\pip.ini

    Incluez l'extrait suivant dans le fichier:

    [global]
    extra-index-url = https://us-central1-python.pkg.dev/PROJECT_ID/quickstart-python-repo/simple/
    

    La chaîne /simple/ à la fin du chemin d'accès au dépôt indique que le dépôt implémente l'API Python Simple Repository.

  4. Connectez-vous au SDK Cloud avec vos identifiants utilisateur.

    gcloud auth login
    

Votre environnement Python est maintenant configuré pour s'authentifier auprès d'Artifact Registry.

Obtenir un exemple de package

Lorsque vous créez un projet Python, les fichiers de distribution sont enregistrés dans un sous-répertoire dist de votre projet Python. Pour simplifier ce guide de démarrage rapide, vous allez télécharger des fichiers de package prédéfinis.

  1. Créez un dossier de projet Python nommé python-quickstart.

    mkdir python-quickstart
    
  2. Créez un sous-répertoire nommé dist, puis accédez au répertoire.

    mkdir python-quickstart/dist
    cd python-quickstart/dist
    
  3. Téléchargez les exemples de packages Python utilisés dans le tutoriel du guide d'utilisation du package Python, Empaqueter des projets Python.

    pip download sampleproject
    

    La commande télécharge le package sampleproject et sa dépendance, peppercorn.

Importer le package dans le dépôt

Utilisez Twine pour importer vos packages dans le dépôt.

  1. Dans le répertoire dist, accédez au répertoire parent python-quickstart.

    cd ..
    
  2. Importez les packages dans le dépôt à partir du répertoire dist.

    twine upload --repository-url https://us-central1-python.pkg.dev/PROJECT_ID/quickstart-python-repo/ dist/*
    

Twine importe à la fois sampleproject et peppercorn dans votre dépôt.

Afficher le package dans le dépôt

Pour vérifier que votre package a bien été ajouté au dépôt :

Console

  1. Ouvrez la page Dépôts dans Cloud Console.

    Ouvrir la page "Dépôts"

  2. Dans la liste des dépôts, cliquez sur le dépôt quickstart-python-repo.

    La page Packages répertorie les packages du dépôt.

gcloud

Pour répertorier les packages dans le dépôt quickstart-python-repo, exécutez la commande suivante :

gcloud artifacts packages list --repository=quickstart-python-repo

Pour afficher les versions d'un package, exécutez la commande suivante :

gcloud artifacts versions list --package=PACKAGE

PACKAGE correspond à l'ID de package.

Installer le package

Exécutez la commande suivante pour installer le package:

pip install --index-url https://us-central1-python.pkg.dev/PROJECT_ID/quickstart-python-repo/simple/ sampleproject

Dépannage

Par défaut, des outils tels que pip et Twine ne renvoient pas de messages d'erreur détaillés. Si vous rencontrez une erreur, exécutez à nouveau la commande avec l'option --verbose pour obtenir des résultats plus détaillés. Pour en savoir plus, consultez la section Dépannage des packages Python.

Effectuer un nettoyage

Pour éviter que les ressources utilisées sur cette page soient facturées sur votre compte Google Cloud :

Avant de supprimer le dépôt, assurez-vous que tous les packages que vous souhaitez conserver sont disponibles à un autre emplacement.

Pour supprimer le dépôt :

Console

  1. Ouvrez la page Dépôts dans Cloud Console.

    Ouvrir la page "Dépôts"

  2. Dans la liste des dépôts, sélectionnez le dépôt quickstart-python-repo.

  3. Cliquez sur Supprimer.

gcloud

  1. Pour supprimer le dépôt quickstart-python-repo, exécutez la commande suivante :

    gcloud artifacts repositories delete quickstart-python-repo
    
  2. Si vous souhaitez supprimer le dépôt par défaut et les paramètres d'emplacement que vous avez définis pour la configuration gcloud active, exécutez les commandes suivantes :

    gcloud config unset artifacts/repository
    gcloud config unset artifacts/location
    

Si vous souhaitez cesser d'utiliser l'environnement virtuel et revenir au Python global, exécutez la commande suivante:

deactivate

Si vous conservez votre dossier quickstart, vous pouvez réactiver l'environnement virtuel dans les sessions Cloud Shell actuelles ou nouvelles en exécutant à nouveau la commande d'activation. Étant donné que tous les packages requis pour Artifact Registry sont déjà installés dans l'environnement virtuel, vous n'aurez pas besoin de les configurer à nouveau.

source quickstart/bin/activate

Étape suivante