Gestionar metadatos de artefactos

En esta página se describe cómo gestionar los metadatos relacionados con un artefacto almacenado en Artifact Registry como archivo adjunto.

Los archivos adjuntos son archivos que almacenan metadatos sobre un artefacto relacionado almacenado en Artifact Registry. Para saber cómo crear un archivo adjunto, consulta Almacenar metadatos de artefactos en archivos adjuntos.

Antes de empezar

Opcional: configura los valores predeterminados de los comandos de Google Cloud CLI.

Roles obligatorios

Para obtener los permisos que necesitas para gestionar archivos adjuntos, pide a tu administrador que te conceda los siguientes roles de IAM en el repositorio:

Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.

También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.

Archivos adjuntos a la lista

Un artefacto de Artifact Registry puede tener cualquier número de archivos adjuntos que hagan referencia a él. Puedes enumerar los archivos adjuntos mediante la Trusted Cloud consola, la CLI de gcloud o, solo para imágenes de contenedor en formato Docker, Oras.

Consola (solo Docker)

  1. En la Trusted Cloud consola, abre la página Repositorios.

    Abre la página Repositorios.

  2. Haz clic en el nombre del repositorio para ver las imágenes que contiene.

  3. Para ver las versiones de una imagen, haz clic en su nombre.

  4. Haz clic en la versión de la imagen que corresponda.

  5. Para ver los archivos adjuntos de esa versión, haz clic en la pestaña Archivos adjuntos.

gcloud

Antes de usar los datos de los comandos que se indican a continuación, haz los siguientes cambios:

  • TARGET: el nombre de versión completo. En el caso de las imágenes Docker, también puede usar el URI de Artifact Registry del artefacto al que hace referencia el archivo adjunto. En el URI, puedes usar el digest o, en el caso de las imágenes Docker, la etiqueta. Por ejemplo: u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image:tag1.

Ejecuta el siguiente comando:

Linux, macOS o Cloud Shell

gcloud artifacts attachments list \
    --target=TARGET

Windows (PowerShell)

gcloud artifacts attachments list `
    --target=TARGET

Windows (cmd.exe)

gcloud artifacts attachments list ^
    --target=TARGET
Para obtener más información, consulta el comando gcloud artifacts attachments list.

Oras (solo Docker)

Antes de ejecutar el comando, haz la siguiente sustitución:

  • IMAGE_URI: el URI de la imagen de destino a la que se hace referencia en los archivos adjuntos enumerados.
oras discover --distribution-spec v1.1-referrers-api IMAGE_URI

En el siguiente ejemplo se muestran los archivos adjuntos de una imagen de contenedor, my-image, identificada por su URI y su etiqueta:

oras discover --distribution-spec v1.1-referrers-api \
u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image:tag1

Donde:

  • v1.1-referrers-api es la API Referrer que se usa. Para obtener más información, consulta los detalles de la especificación de distribución.

  • u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image:tag1 es el URI que incluye la etiqueta de la versión de la imagen de contenedor de la que se quieren enumerar los archivos adjuntos.

Para ver una guía completa y más ejemplos, consulta la documentación de oras discover.

Describe los archivos adjuntos

Antes de usar los datos de los comandos que se indican a continuación, haz los siguientes cambios:

  • ATTACHMENT: el nombre completo del archivo adjunto, como projects/my-project/locations/u-france-east1/repositories/my-repo/attachments/my-attachment. También puedes proporcionar solo el ID del archivo adjunto y usar las marcas --location y --repository.

Ejecuta el siguiente comando:

Linux, macOS o Cloud Shell

gcloud artifacts attachments describe ATTACHMENT

Windows (PowerShell)

gcloud artifacts attachments describe ATTACHMENT

Windows (cmd.exe)

gcloud artifacts attachments describe ATTACHMENT
Para obtener más información, consulta el comando gcloud artifacts attachments describe.

Descargar archivos adjuntos

Puedes descargar archivos adjuntos mediante la CLI de gcloud o, solo en el caso de las imágenes de contenedor en formato Docker, Oras.

gcloud

Antes de usar los datos de los comandos que se indican a continuación, haz los siguientes cambios:

  • ATTACHMENT: el nombre completo del archivo adjunto, como projects/my-project/locations/u-france-east1/repositories/my-repo/attachments/my-attachment. También puedes proporcionar solo el ID del archivo adjunto y usar las marcas --location y --repository.
  • DESTINATION: la ruta del sistema de archivos local en la que se descargará el archivo adjunto.

Ejecuta el siguiente comando:

Linux, macOS o Cloud Shell

gcloud artifacts attachments download ATTACHMENT \
    --destination=DESTINATION

Windows (PowerShell)

gcloud artifacts attachments download ATTACHMENT `
    --destination=DESTINATION

Windows (cmd.exe)

gcloud artifacts attachments download ATTACHMENT ^
    --destination=DESTINATION
En el caso de los archivos adjuntos de los repositorios con formato Docker, como alternativa a ATTACHMENT, puedes proporcionar la marca --oci-version-name seguida del nombre completo de la versión del archivo adjunto o del URI de Artifact Registry. Puedes usar el resumen o la etiqueta. Por ejemplo, projects/my-project/locations/u-france-east1/repositories/my-repo/packages/my-package/versions/sha256:abc123.

Para obtener más información, consulta el comando gcloud artifacts attachments download.

Oras (solo Docker)

Antes de ejecutar el comando, haz las siguientes sustituciones:

  • DESTINATION: el directorio de destino del archivo adjunto.

  • ATTACHMENT_URI: el URI del archivo adjunto que se va a descargar. Se trata del URI del contenedor de la imagen a la que hace referencia el archivo adjunto, seguido del SHA único del archivo adjunto.

oras pull -o DESTINATION ATTACHMENT_URI

En el siguiente ejemplo se descarga un archivo adjunto identificado por su URI y su digest:

oras pull -o . u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image@sha256:xxxx

Donde:

  • -o . asigna el nombre del directorio actual como destino de descarga.

  • u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image@sha256:xxxx es el URI de la imagen, incluido el resumen del archivo adjunto que se va a descargar.

Para ver una guía completa y más ejemplos, consulta la documentación de oras pull.

Eliminar archivos adjuntos

Puedes eliminar archivos adjuntos directamente mediante la Trusted Cloud consola o la CLI de gcloud. Puedes eliminar archivos adjuntos de forma indirecta eliminando el artefacto al que hacen referencia.

Eliminar archivos adjuntos directamente

Puedes eliminar archivos adjuntos directamente con una de las siguientes opciones:

Consola (solo Docker)

  1. En la Trusted Cloud consola, abre la página Repositorios.

    Abre la página Repositorios.

  2. Haz clic en el nombre del repositorio para ver las imágenes que contiene.

  3. Haz clic en el nombre de la imagen para ver sus versiones.

  4. Haz clic en la versión de la imagen cuyos archivos adjuntos quieras ver.

  5. Haz clic en la pestaña Adjuntos para ver los adjuntos de esa versión.

  6. Haz clic en el resumen del archivo adjunto que quieras eliminar.

  7. Haz clic en ELIMINAR.

  8. En el cuadro de diálogo de confirmación, haz clic en ELIMINAR.

gcloud

Antes de usar los datos de los comandos que se indican a continuación, haz los siguientes cambios:

  • ATTACHMENT: el nombre completo del archivo adjunto, como projects/my-project/locations/u-france-east1/repositories/my-repo/attachments/my-attachment. También puedes proporcionar solo el ID del archivo adjunto y usar las marcas --location y --repository.

Ejecuta el siguiente comando:

Linux, macOS o Cloud Shell

gcloud artifacts attachments delete ATTACHMENT

Windows (PowerShell)

gcloud artifacts attachments delete ATTACHMENT

Windows (cmd.exe)

gcloud artifacts attachments delete ATTACHMENT
Para obtener más información, consulta el comando gcloud artifacts attachments delete.

Eliminar archivos adjuntos de forma indirecta

Si se elimina un artefacto, también se eliminarán todos los archivos adjuntos que tengan el nombre de la versión del artefacto eliminado como target. Esto se aplica tanto a la eliminación manual de artefactos como a las eliminaciones causadas por políticas de limpieza.

Siguientes pasos