Saltar al contenido

Adjuntos de compilación ​

Registros, informes y otros archivos adjuntos a un artefacto, con su historial.

Operaciones de este grupo con su regla de acceso, su regla de reintento, sus parámetros y sus respuestas. Cada solicitud lleva una clave: Authorization: Bearer <clave> (consulte «Autenticación»).

Operaciones ​

Obtener los adjuntos de una compilación ​

GET HEAD /api/v1/repositories/{repository}/artifacts/{id}/attachments

Acceso: Permiso de repositorio: annotation.read; claves de archivo: read · Reintento: Se puede repetir (lectura)

Devuelve la revisión actual de adjuntos de un artefacto: hasta 32 entradas, cada una referida a otro artefacto publicado del repositorio, con un name, un kind (manifest, sbom, signature, report, file) y una description, además del actor y la hora del cambio. La revisión 0 sin elementos significa que nunca se adjuntó nada. Descargue un archivo adjunto por su artifactId.

Parámetros

NombreUbicaciónTipoObligatorioReglas
repositoryrutastringsícoincide con ^[a-z0-9][a-z0-9_-]{0,63}$
idrutastring (uuid)sí—

Respuesta 200

CampoTipoObligatorioReglas
revisionintegersí0–2147483647
itemsarray de objectsíhasta 32 elementos
items[].namestringsí1–240 caracteres
items[].kindstringsíuno de manifest, sbom, signature, report, file
items[].artifactIdstring (uuid)sí—
items[].descriptionstringsíhasta 512 caracteres
actorstringsípuede ser null
createdAtstring (date-time)sípuede ser null

Respuestas: 200, 400, 401, 403, 404, 409, 422, 503, 507

Ejemplo

bash
curl -X GET "$ARKVORY_URL/api/v1/repositories/$REPOSITORY/artifacts/$ID/attachments" \
  -H "Authorization: Bearer $ARKVORY_TOKEN"

Reemplazar los adjuntos de una compilación ​

PUT /api/v1/repositories/{repository}/artifacts/{id}/attachments

Acceso: Permiso de repositorio: annotation.write, artifact.read; claves de archivo: read, write · Reintento: Repetir solo con la revisión esperada (compare-and-swap)

Reemplaza la lista completa de adjuntos de un artefacto (hasta 32 entradas; una lista vacía los quita todos) y devuelve la nueva revisión. Cada destino debe ser otro artefacto ya publicado en el mismo repositorio (súbalo primero), los nombres son únicos sin distinguir mayúsculas y las descripciones tienen hasta 512 caracteres. expectedRevision debe ser la revisión actual (0 para la primera lista); de lo contrario, 409 revision_mismatch; los artefactos nombrados en cualquier revisión permanecen protegidos contra la eliminación.

Parámetros

NombreUbicaciónTipoObligatorioReglas
repositoryrutastringsícoincide con ^[a-z0-9][a-z0-9_-]{0,63}$
idrutastring (uuid)sí—

Cuerpo de la solicitud (application/json)

CampoTipoObligatorioReglas
expectedRevisionintegersí0–2147483646
itemsarray de objectsíhasta 32 elementos
items[].namestringsí1–240 caracteres
items[].kindstringsíuno de manifest, sbom, signature, report, file
items[].artifactIdstring (uuid)sí—
items[].descriptionstringsíhasta 512 caracteres

Respuesta 200

CampoTipoObligatorioReglas
revisionintegersí0–2147483647
itemsarray de objectsíhasta 32 elementos
items[].namestringsí1–240 caracteres
items[].kindstringsíuno de manifest, sbom, signature, report, file
items[].artifactIdstring (uuid)sí—
items[].descriptionstringsíhasta 512 caracteres
actorstringsípuede ser null
createdAtstring (date-time)sípuede ser null

Respuestas: 200, 400, 401, 403, 404, 405, 409, 413, 415, 422, 503, 507

Ejemplo

bash
curl -X PUT "$ARKVORY_URL/api/v1/repositories/$REPOSITORY/artifacts/$ID/attachments" \
  -H "Authorization: Bearer $ARKVORY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"expectedRevision":0,"items":[]}'

Listar el historial de adjuntos de una compilación ​

GET HEAD /api/v1/repositories/{repository}/artifacts/{id}/attachments/history

Acceso: Permiso de repositorio: annotation.read; claves de archivo: read · Reintento: Se puede repetir (lectura)

Devuelve las revisiones de adjuntos anteriores y la actual de un artefacto, de la más reciente a la más antigua, 20 por página, cada una con sus entradas, el actor y la hora; continúe pasando next como before. Los artefactos adjuntos de todas las revisiones siguen siendo descargables, porque están protegidos contra la eliminación.

Parámetros

NombreUbicaciónTipoObligatorioReglas
repositoryrutastringsícoincide con ^[a-z0-9][a-z0-9_-]{0,63}$
idrutastring (uuid)sí—
beforeconsultaintegerno1–2147483647

Respuesta 200

CampoTipoObligatorioReglas
itemsarray de objectsíhasta 20 elementos
items[].revisionintegersí0–2147483647
items[].itemsarray de objectsíhasta 32 elementos
items[].items[].namestringsí1–240 caracteres
items[].items[].kindstringsíuno de manifest, sbom, signature, report, file
items[].items[].artifactIdstring (uuid)sí—
items[].items[].descriptionstringsíhasta 512 caracteres
items[].actorstringsípuede ser null
items[].createdAtstring (date-time)sípuede ser null
nextintegersí1–2147483647; puede ser null

Respuestas: 200, 400, 401, 403, 404, 409, 422, 503, 507

Ejemplo

bash
curl -X GET "$ARKVORY_URL/api/v1/repositories/$REPOSITORY/artifacts/$ID/attachments/history" \
  -H "Authorization: Bearer $ARKVORY_TOKEN"

Arkvory · ProAnimaStudio