انتقل إلى المحتوى

المرايا ​

حالة المستودع المنسوخ بمرآة، والموجز الذي تتبعه المرآة.

عمليات هذه المجموعة مع قاعدة الوصول وقاعدة إعادة المحاولة والمعلمات والاستجابات. يحمل كل طلب مفتاحًا: Authorization: Bearer <key> (راجع «المصادقة»).

العمليات ​

سرد المرايا والاستيرادات في هذا التثبيت ​

GET HEAD /api/v1/mirrors

الوصول: المستودعات التي يحق للمستدعي رؤيتها (repository.read) · إعادة المحاولة: آمن للتكرار (قراءة)

يعيد لكل مستودع يعكسه هذا الخادم أو يستورده من Arkvory آخر ويمكن للمستدعي قراءته الحالةَ نفسها التي تعيدها حالة مرآة مستودع واحد: المصدر وmode وphase وcursor وhead وcaughtUp وآخر فحص ومزامنة وخطأ، وعدد العناصر والبايتات المنسوخة. تُستبعد المستودعات التي لا يمكن للمستدعي قراءتها؛ ويجيب تثبيت بلا مرايا بقائمة فارغة.

الاستجابة 200

الحقلالنوعمطلوبالقواعد
itemsمصفوفة من objectنعمعدد العناصر: 64 كحد أقصى
items[].repositorystringنعم—
items[].upstreamstring (uri)نعم—
items[].sourceRepositorystringنعم—
items[].modestringنعمإحدى القيم: mirror, import
items[].stagesمصفوفة من stringنعمعدد العناصر: 16 كحد أقصى
items[].phasestringنعمإحدى القيم: pending, seeding, following
items[].seedStepstringنعمإحدى القيم: artifacts, packages, assets; يمكن أن يكون null
items[].cursorstringنعمعدد صحيح بأرقام عشرية، يُرسَل كسلسلة نصية
items[].headstringنعمعدد صحيح بأرقام عشرية، يُرسَل كسلسلة نصية; يمكن أن يكون null
items[].caughtUpbooleanنعميمكن أن يكون null
items[].checkedAtstring (date-time)نعميمكن أن يكون null
items[].syncedAtstring (date-time)نعميمكن أن يكون null
items[].errorCodestringنعميمكن أن يكون null
items[].errorAtstring (date-time)نعميمكن أن يكون null
items[].copiedArtifactsintegerنعم0 على الأقل
items[].copiedBytesstringنعمعدد صحيح بأرقام عشرية، يُرسَل كسلسلة نصية
items[].conflictsobjectنعم—
items[].conflicts.countintegerنعم0 على الأقل
items[].conflicts.oldestAtstring (date-time)نعميمكن أن يكون null
items[].conflicts.sampleمصفوفة من objectنعمعدد العناصر: 10 كحد أقصى

الاستجابات: 200, 400, 401, 403, 404, 409, 422, 503, 507

مثال

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

الحصول على حالة مزامنة مرآة ​

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

الوصول: إذن المستودع: repository.read; مفاتيح الملفات: read · إعادة المحاولة: آمن للتكرار (قراءة)

بالنسبة لمستودع يعكسه هذا الخادم من Arkvory آخر (مضبوط في ARKVORY_MIRRORS_FILE)، يعيد المصدر، وmode (mirror وهي نسخة للقراءة فقط، أو import الذي يتسلّم الإصدارات ذات stages المذكورة)، وphase (pending أو seeding أو following)، وcursor المطبَّق وhead للمصدر، وcaughtUp، وآخر فحص ومزامنة وخطأ، والمُخرَجات والبايتات المنسوخة. التسلسلات هي أرقام سجل المصدر، لذا فالفرق بينها ليس عدد التغييرات. والمستودع العادي يردّ بـ 404.

المعلمات

الاسمالموضعالنوعمطلوبالقواعد
repositoryالمسارstringنعميطابق النمط ^[a-z0-9][a-z0-9_-]{0,63}$

الاستجابة 200

الحقلالنوعمطلوبالقواعد
repositorystringنعم—
upstreamstring (uri)نعم—
sourceRepositorystringنعم—
modestringنعمإحدى القيم: mirror, import
stagesمصفوفة من stringنعمعدد العناصر: 16 كحد أقصى
phasestringنعمإحدى القيم: pending, seeding, following
seedStepstringنعمإحدى القيم: artifacts, packages, assets; يمكن أن يكون null
cursorstringنعمعدد صحيح بأرقام عشرية، يُرسَل كسلسلة نصية
headstringنعمعدد صحيح بأرقام عشرية، يُرسَل كسلسلة نصية; يمكن أن يكون null
caughtUpbooleanنعميمكن أن يكون null
checkedAtstring (date-time)نعميمكن أن يكون null
syncedAtstring (date-time)نعميمكن أن يكون null
errorCodestringنعميمكن أن يكون null
errorAtstring (date-time)نعميمكن أن يكون null
copiedArtifactsintegerنعم0 على الأقل
copiedBytesstringنعمعدد صحيح بأرقام عشرية، يُرسَل كسلسلة نصية
conflictsobjectنعم—
conflicts.countintegerنعم0 على الأقل
conflicts.oldestAtstring (date-time)نعميمكن أن يكون null
conflicts.sampleمصفوفة من objectنعمعدد العناصر: 10 كحد أقصى
conflicts.sample[].artifactIdstring (uuid)نعم—
conflicts.sample[].actionstringنعم—
conflicts.sample[].detailstringنعميمكن أن يكون null
conflicts.sample[].codestringنعم—
conflicts.sample[].firstAtstring (date-time)نعم—
conflicts.sample[].lastAtstring (date-time)نعم—
conflicts.sample[].attemptsintegerنعم1 على الأقل

الاستجابات: 200, 400, 401, 403, 404, 409, 422, 503, 507

مثال

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

Arkvory · ProAnimaStudio