Saltar al contenido

Espejos ​

El estado de un repositorio espejo y la fuente de cambios que sigue un espejo.

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 ​

Listar los espejos e importaciones de esta instalación ​

GET HEAD /api/v1/mirrors

Acceso: Repositorios que el llamador puede ver (repository.read) · Reintento: Se puede repetir (lectura)

Para cada repositorio que este servidor refleja o importa desde otro Arkvory y que el llamante puede leer, devuelve el mismo estado que el estado del espejo de un repositorio: origen, mode, phase, cursor y head, caughtUp, la última comprobación, sincronización y error, y los artefactos y bytes copiados. Se omiten los repositorios que el llamante no puede leer; una instalación sin espejos responde con una lista vacía.

Respuesta 200

CampoTipoObligatorioReglas
itemsarray de objectsíhasta 64 elementos
items[].repositorystringsí—
items[].upstreamstring (uri)sí—
items[].sourceRepositorystringsí—
items[].modestringsíuno de mirror, import
items[].stagesarray de stringsíhasta 16 elementos
items[].phasestringsíuno de pending, seeding, following
items[].seedStepstringsíuno de artifacts, packages, assets; puede ser null
items[].cursorstringsíun número entero en dígitos decimales, enviado como cadena
items[].headstringsíun número entero en dígitos decimales, enviado como cadena; puede ser null
items[].caughtUpbooleansípuede ser null
items[].checkedAtstring (date-time)sípuede ser null
items[].syncedAtstring (date-time)sípuede ser null
items[].errorCodestringsípuede ser null
items[].errorAtstring (date-time)sípuede ser null
items[].copiedArtifactsintegersícomo mínimo 0
items[].copiedBytesstringsíun número entero en dígitos decimales, enviado como cadena
items[].conflictsobjectsí—
items[].conflicts.countintegersícomo mínimo 0
items[].conflicts.oldestAtstring (date-time)sípuede ser null
items[].conflicts.samplearray de objectsíhasta 10 elementos

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

Ejemplo

bash
curl -X GET "$ARKVORY_URL/api/v1/mirrors" \
  -H "Authorization: Bearer $ARKVORY_TOKEN"

Obtener el estado de sincronización de un espejo ​

GET HEAD /api/v1/repositories/{repository}/mirror

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

Para un repositorio que este servidor mantiene como espejo de otro Arkvory (configurado en ARKVORY_MIRRORS_FILE), devuelve el origen, el mode (mirror, una copia de solo lectura, o import, que toma las versiones con las stages indicadas), la phase (pending, seeding, following), el cursor aplicado y el head del origen, caughtUp, la última comprobación, sincronización y error, y los artefactos y bytes copiados. Las secuencias son números del diario del origen, por lo que su diferencia no es un recuento de cambios. Un repositorio ordinario responde 404.

Parámetros

NombreUbicaciónTipoObligatorioReglas
repositoryrutastringsícoincide con ^[a-z0-9][a-z0-9_-]{0,63}$

Respuesta 200

CampoTipoObligatorioReglas
repositorystringsí—
upstreamstring (uri)sí—
sourceRepositorystringsí—
modestringsíuno de mirror, import
stagesarray de stringsíhasta 16 elementos
phasestringsíuno de pending, seeding, following
seedStepstringsíuno de artifacts, packages, assets; puede ser null
cursorstringsíun número entero en dígitos decimales, enviado como cadena
headstringsíun número entero en dígitos decimales, enviado como cadena; puede ser null
caughtUpbooleansípuede ser null
checkedAtstring (date-time)sípuede ser null
syncedAtstring (date-time)sípuede ser null
errorCodestringsípuede ser null
errorAtstring (date-time)sípuede ser null
copiedArtifactsintegersícomo mínimo 0
copiedBytesstringsíun número entero en dígitos decimales, enviado como cadena
conflictsobjectsí—
conflicts.countintegersícomo mínimo 0
conflicts.oldestAtstring (date-time)sípuede ser null
conflicts.samplearray de objectsíhasta 10 elementos
conflicts.sample[].artifactIdstring (uuid)sí—
conflicts.sample[].actionstringsí—
conflicts.sample[].detailstringsípuede ser null
conflicts.sample[].codestringsí—
conflicts.sample[].firstAtstring (date-time)sí—
conflicts.sample[].lastAtstring (date-time)sí—
conflicts.sample[].attemptsintegersícomo mínimo 1

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

Ejemplo

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

Arkvory · ProAnimaStudio