Guía de inicio rápido para Python

En esta guía de inicio rápido, se muestra cómo configurar un repositorio de Artifact Registry para Python, subir un paquete y, luego, instalarlo.

Antes de comenzar

  1. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. En la página del selector de proyectos de Google Cloud Console, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  3. Asegúrate de que la facturación esté habilitada para tu proyecto de Cloud. Descubre cómo confirmar que tienes habilitada la facturación en un proyecto.

  4. Habilita la API Artifact Registry.

    Habilita la API

Iniciar Cloud Shell

En esta guía de inicio rápido, usarás Cloud Shell, que es un entorno de shell para administrar recursos alojados en Google Cloud.

Cloud Shell ya viene instalado en la herramienta de línea de comandos de gcloud y Python. La herramienta de gcloud proporciona la interfaz de línea de comandos principal para Google Cloud.

Iniciar Cloud Shell:

  1. Ve a Google Cloud Console

    Google Cloud Console

  2. En la barra de herramientas de Cloud Console, haz clic en Activar Cloud Shell:

Se abrirá una sesión de Cloud Shell dentro de un marco en la parte inferior en la consola. Usa esta shell para ejecutar los comandos de gcloud.

Configura un entorno virtual

En esta sección, usarás venv para crear un entorno virtual aislado.

En el entorno, instalará lo siguiente:

El uso de un entorno virtual aísla las dependencias de Python en un proyecto de las dependencias en otros proyectos. Te recomendamos que siempre uses un entorno virtual por proyecto cuando desarrolles con Python de forma local.

Para configurar un entorno virtual, sigue estos pasos:

  1. Usa el comando venv para crear una copia virtual de toda la instalación de Python 3 en una carpeta llamada quickstart.

    python3 -m venv quickstart
    
  2. Configura tu shell para usar las rutas de acceso venv para Python mediante la activación del entorno virtual.

    source quickstart/bin/activate
    

    El símbolo del sistema cambia para mostrar que estás usando el entorno virtual de Python 3.

    (quickstart) user@~$ python --version
    
  3. Actualice pip a la versión más reciente:

    python -m pip install -U pip
    
  4. Instala Twine y el backend del llavero de claves de Artifact Registry con el siguiente comando:

    pip install twine keyrings.google-artifactregistry-auth
    
  5. Enumera backends para confirmar la instalación.

    keyring --list-backends
    

    El resultado se ve como en el siguiente ejemplo:

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

Cree un repositorio

Crea el repositorio para tus paquetes.

  1. Crea el repositorio:

    Console

    1. Abre la página Repositorios en Cloud Console.

      Abrir la página Repositorios

    2. Haz clic en Crear repositorio.

    3. Especifica quickstart-python-repo como el nombre del repositorio.

    4. Elige Python como formato.

    5. En Tipo de ubicación, selecciona Región y, luego, elige la ubicación us-central1.

    6. Haga clic en Crear.

    El repositorio se agrega a la lista de repositorios.

    gcloud

    1. Ejecuta el siguiente comando para crear un repositorio de paquetes de Python nuevo en el proyecto actual llamado quickstart-python-repo en la ubicación us-central1.

      gcloud artifacts repositories create quickstart-python-repo \
          --repository-format=python \
          --location=us-central1 \
          --description="Python package repository"
      
    2. Ejecuta el siguiente comando para verificar que se haya creado el repositorio:

      gcloud artifacts repositories list
      

    Para obtener más información sobre los comandos de Artifact Registry, ejecuta el comando gcloud artifacts.

  2. Para simplificar los comandos de gcloud, configura el repositorio predeterminado como quickstart-python-repo y la ubicación predeterminada como us-central1. Una vez configurados los valores, no necesitas especificarlos en los comandos de gcloud que requieren un repositorio o una ubicación.

    Para configurar el repositorio, ejecuta el siguiente comando:

    gcloud config set artifacts/repository quickstart-python-repo
    

    Para configurar la ubicación, ejecuta el siguiente comando:

    gcloud config set artifacts/location us-central1
    

    Para obtener más información sobre estos comandos, consulta la documentación de establecimiento de la configuración de gcloud.

Configura la autenticación

Para configurar la autenticación con el backend del llavero de claves de Artifact Registry, haz lo siguiente:

  1. Ejecuta el siguiente comando para imprimir la configuración del repositorio que se agregará a tu proyecto de Python.

    gcloud artifacts print-settings python
    
  2. Crea o actualiza el archivo .pypirc. Este archivo especifica repositorios para publicar paquetes de Python.

    La ubicación predeterminada es la siguiente:

    • Linux y MacOS: $HOME/.pypirc
    • Windows: %USERPROFILE%\.pypirc

    En el archivo .pypirc, index-servers enumera los repositorios y, luego, cada repositorio tiene una sección independiente con la configuración del repositorio.

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

    Reemplaza PROJECT_ID con el ID del proyecto.

  3. Crea un archivo de configuración de pip para tu entorno virtual. La configuración de este archivo se combina con cualquier configuración en el archivo pip.conf global o por usuario.

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

    Incluye el siguiente fragmento en el archivo:

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

    La string /simple/ al final de la ruta del repositorio indica que el repositorio implementa la API de repositorio simple de Python.

  4. Accede al SDK de Cloud con las credenciales de usuario.

    gcloud auth login
    

El entorno de Python ahora está configurado para autenticarse con Artifact Registry.

Obtén un paquete de ejemplo

Cuando compilas un proyecto de Python, los archivos de distribución se guardan en un subdirectorio dist en tu proyecto de Python. Para simplificar esta guía de inicio rápido, descargarás los archivos de paquetes precompilados.

  1. Crea una carpeta de proyecto de Python llamada python-quickstart.

    mkdir python-quickstart
    
  2. Crea un subdirectorio llamado dist y, luego, cambia al directorio.

    mkdir python-quickstart/dist
    cd python-quickstart/dist
    
  3. Descarga los paquetes de Python de muestra que se usan en el instructivo de la guía del usuario de empaquetado de Python: Empaqueta proyectos de Python.

    pip download sampleproject
    

    El comando descarga el paquete sampleproject y su dependencia, peppercorn.

Sube el paquete al repositorio

Usa Twine para subir tus paquetes a tu repositorio.

  1. Desde el directorio dist, cambia al directorio superior python-quickstart.

    cd ..
    
  2. Sube los paquetes al repositorio desde el directorio dist.

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

Twine sube sampleproject y peppercorn a tu repositorio.

Visualiza el paquete en el repositorio

Para verificar que tu paquete se haya agregado al repositorio, haz lo siguiente:

Console

  1. Abre la página Repositorios en Cloud Console.

    Abrir la página Repositorios

  2. En la lista de repositorios, haz clic en el repositorio quickstart-python-repo.

    En la página Paquetes, se enumeran los paquetes del repositorio.

gcloud

Para generar una lista de los paquetes en el repositorio quickstart-python-repo, ejecuta el siguiente comando:

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

Para ver las versiones de un paquete, ejecuta el siguiente comando:

gcloud artifacts versions list --package=PACKAGE

En el ejemplo anterior, PACKAGE es el ID del paquete.

Instale el paquete

Ejecuta el siguiente comando para instalar el paquete:

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

Soluciona problemas

De forma predeterminada, herramientas como pip y Twine no muestran mensajes de error detallados. Si encuentras un error, vuelve a ejecutar el comando con el parámetro --verbose para obtener un mensaje más detallado. Consulta Solución de problemas para ver un ejemplo.

Limpia

Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página.

Antes de quitar el repositorio, asegúrate de que los paquetes que quieres conservar estén disponibles en otra ubicación.

Para borrar el repositorio, haz lo siguiente:

Console

  1. Abre la página Repositorios en Cloud Console.

    Abrir la página repositorios

  2. En la lista de repositorios, selecciona el repositorio quickstart-python-repo.

  3. Haz clic en Borrar.

gcloud

  1. Para borrar el repositorio quickstart-python-repo, ejecuta el siguiente comando:

    gcloud artifacts repositories delete quickstart-python-repo
    
  2. Si deseas quitar la configuración predeterminada de la ubicación y del repositorio que estableciste para la configuración activa de gcloud, ejecuta los siguientes comandos:

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

Si deseas dejar de usar el entorno virtual y volver al código global de Python, ejecuta el siguiente comando:

deactivate

Si conservas tu carpeta quickstart, puedes volver a activar el entorno virtual en las sesiones actuales o nuevas de Cloud Shell mediante la ejecución del comando de activación. Debido a que todos los paquetes necesarios para Artifact Registry ya están instalados en el entorno virtual, no tendrás que volver a configurarlos.

source quickstart/bin/activate

¿Qué sigue?