Configura la autenticación en Artifact Registry para los repositorios de Conda

Para permitir que la CLI de Conda acceda a los repositorios de Artifact Registry, debes proporcionar un token de autenticación con las solicitudes a Artifact Registry. En esta página, se describe cómo configurar la autenticación con un repositorio de paquetes de Conda de Artifact Registry.

Antes de comenzar

  1. Si aún no tienes un repositorio de Conda, crea uno.
  2. Verifica que Conda esté instalado. Si Conda no está instalado, ejecuta e instala Miniforge.
  3. Verifica que la cuenta de usuario o la cuenta de servicio que usas tenga los permisos necesarios para acceder al repositorio.
  4. Instala Google Cloud CLI. Después de la instalación, inicializa Google Cloud CLI con el siguiente comando:

    gcloud init

    Si usas un proveedor de identidad externo (IdP), primero debes acceder a la gcloud CLI con tu identidad federada.

  5. (Opcional) Configura valores predeterminados para los comandos de la gcloud CLI.

Autentica un canal con tokens de oauth

Un canal de Conda es la dirección de una ubicación en la que se almacenan uno o más paquetes de Conda. Antes de instalar paquetes en tu entorno de Conda, debes agregar el canal de ese paquete a tu archivo de configuración de Conda.

Para permitir que la CLI de Conda llame a Artifact Registry directamente, debes autenticar tu canal de Conda en Google Cloud con los siguientes pasos:

  1. En la gcloud CLI, ejecuta el siguiente comando para almacenar la identidad de un token de oauth en una variable TOKEN:

    export TOKEN="oauth2accesstoken:$(gcloud auth print-access-token)"
    
  2. Agrega tu repositorio de Conda como un canal en tu archivo de configuración de Conda:

    Conda

    conda config --add channels \
    https://$TOKEN@LOCATION-conda.pkg.dev/PROJECT/REPOSITORY
    

    Miniforge

    conda config --add channels \
    https://$TOKEN@LOCATION-conda.pkg.dev/PROJECT/REPOSITORY
    

    Mamba

    mamba config --add channels \
    https://$TOKEN@LOCATION-conda.pkg.dev/PROJECT/REPOSITORY
    

    Micromamba

    micromamba config --add channels \
    https://$TOKEN@LOCATION-conda.pkg.dev/PROJECT/REPOSITORY
    

    Aquí:

    • TOKEN almacena el valor del token oauth generado al ejecutar oauth2accesstoken:$(gcloud auth print-access-token).
    • LOCATION es la ubicación regional o multirregional del repositorio.
    • PROJECT es el ID del proyecto que contiene el repositorio.
    • REPOSITORY es el ID del repositorio.

Actualiza un token de oauth vencido

Un token de oauth vence después de una hora. Para volver a autenticar tu canal con un token nuevo, haz lo siguiente:

  1. Quita tu canal del archivo de configuración:

    Conda

    conda config --remove channels CHANNEL_NAME
    

    Miniforge

    conda config --remove channels CHANNEL_NAME
    

    Mamba

    mamba config --remove channels CHANNEL_NAME
    

    Micromamba

    micromamba config --remove channels CHANNEL_NAME
    
  2. Sigue el paso anterior en el que se describió cómo crear un token oauth nuevo.

  3. Vuelve a agregar tu repositorio de Conda al archivo de configuración de Conda con el nuevo valor del token.

¿Qué sigue?