Almacena paquetes de Conda en Artifact Registry

En esta guía de inicio rápido, se muestra cómo configurar un repositorio privado de Conda en Artifact Registry y, luego, subir un paquete a ese repositorio.

Antes de comenzar

  1. In the Cloud de Confiance console, on the project selector page, select or create a Cloud de Confiance project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  2. Verify that billing is enabled for your Cloud de Confiance project.

  3. Enable the Artifact Registry API, if it is not already enabled.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

  4. Make sure that you have the following role or roles on the project: Artifact Registry Administrator

    Check for the roles

    1. In the Cloud de Confiance console, go to the IAM page.

      Go to IAM
    2. Select the project.
    3. In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.

    4. For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.

    Grant the roles

    1. In the Cloud de Confiance console, go to the IAM page.

      Go to IAM
    2. Select the project.
    3. Click Grant access.
    4. In the New principals field, enter your user identifier. This is typically the identifier for a user in a workforce identity pool. For details, see Represent workforce pool users in IAM policies, or contact your administrator.

    5. Click Select a role, then search for the role.
    6. To grant additional roles, click Add another role and add each additional role.
    7. Click Save.
  5. Para usar la CLI de Conda en tu entorno de Cloud de Confiance , instala uno de los siguientes administradores de paquetes de Conda:

Inicia Cloud Shell

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

Cloud Shell ya viene instalado en Google Cloud CLI y Conda. Gcloud CLI proporciona la interfaz de línea de comandos principal para Cloud de Confiance.

Iniciar Cloud Shell:

  1. Ve a la consola de Cloud de Confiance .

    Cloud de Confiance console

  2. En la barra de herramientas de la Cloud de Confiance consola, 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 la autenticación

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 Cloud de Confiance by S3NS 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.

Crea un repositorio

Crea el repositorio para tu paquete.

  1. Ejecuta el siguiente comando para crear un nuevo repositorio de Conda en el proyecto actual llamado quickstart-conda-repo en la ubicación us-west1.

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

    gcloud artifacts repositories list
    
  3. Para simplificar los comandos de gcloud, configura el repositorio predeterminado como quickstart-conda-repo y la ubicación predeterminada como us-west1. 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-conda-repo
    

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

    gcloud config set artifacts/location us-west1
    

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

Sube el paquete al repositorio

Para subir un paquete a tu repositorio, ejecuta el siguiente comando:

gcloud artifacts files upload \
    --source=PACKAGE_NAME \
    --repository=REPO_NAME\
    --project=PROJECT \
    --location=LOCATION

Aquí:

  • REPO_NAME es el ID del repositorio.
  • PROJECT es el ID del proyecto que contiene el repositorio.
  • LOCATION es la ubicación regional o multirregional del repositorio.

Para subir varios paquetes a la vez, sigue estos pasos:

gcloud artifacts files upload \
    --source-directory="DIRECTORY" \
    --repository="REPO_NAME"\
    --project="PROJECT" \
    --location="LOCATION"

Aquí:

  • DIRECTORY es la dirección de una carpeta local que contiene tus paquetes de Conda.

Visualiza el paquete en el repositorio

Para verificar que se haya agregado tu paquete, enumera los paquetes en el repositorio quickstart-conda-repo.

Ejecuta el comando siguiente:

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

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

gcloud artifacts versions list --package=PACKAGE_NAME

Para ver los archivos de una versión del paquete, ejecuta el siguiente comando:

gcloud artifacts files list --package=PACKAGE_NAME --version=VERSION

Instale el paquete

Para instalar el paquete que acabas de agregar a tu repositorio de Artifact Registry, ejecuta el siguiente comando:

Conda

conda install -n ENVIRONMENT_NAME PACKAGE_NAME

Miniforge

conda install -n ENVIRONMENT_NAME PACKAGE_NAME

Mamba

mamba install -n ENVIRONMENT_NAME PACKAGE_NAME

Micromamba

micromamba install -n ENVIRONMENT_NAME PACKAGE_NAME

Aquí:

  • ENVIRONMENT_NAME es el nombre de tu entorno de Conda.
  • PACKAGE_NAME es el nombre del paquete que se instalará en tu repositorio.

Soluciona problemas

Consulta Solución de problemas con paquetes de Conda para obtener más información.

Realiza una limpieza

Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Cloud de Confiance 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.

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

    gcloud artifacts repositories delete quickstart-conda-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
    

¿Qué sigue?