ミラー
ミラーリングされたリポジトリの状態と、ミラーが追跡するフィード。
このグループの操作と、それぞれのアクセスルール、再試行ルール、パラメーター、レスポンスです。すべてのリクエストにはキーを付けます:Authorization: Bearer <key>(「認証」を参照)。
操作
このインストールのミラーとインポートの一覧
GET HEAD /api/v1/mirrors
アクセス: 呼び出し元が参照できるリポジトリ(repository.read) · 再試行: 再試行しても安全(読み取り)
このサーバーが別のArkvoryからミラーまたはインポートしており、呼び出し元が読み取れる各リポジトリについて、1つのリポジトリのミラー状態と同じ情報を返します:ミラー元、mode、phase、cursorとhead、caughtUp、前回の確認・同期・エラー、コピーされたアーティファクトとバイトの数。呼び出し元が読み取れないリポジトリは省かれます。ミラーのないインストールは空のリストで応答します。
レスポンス 200
| フィールド | 型 | 必須 | ルール |
|---|---|---|---|
items | objectの配列 | はい | 64個以内の要素 |
items[].repository | string | はい | — |
items[].upstream | string (uri) | はい | — |
items[].sourceRepository | string | はい | — |
items[].mode | string | はい | 次のいずれか:mirror, import |
items[].stages | stringの配列 | はい | 16個以内の要素 |
items[].phase | string | はい | 次のいずれか:pending, seeding, following |
items[].seedStep | string | はい | 次のいずれか:artifacts, packages, assets; nullも可 |
items[].cursor | string | はい | 10進数字で表した整数(文字列として送信) |
items[].head | string | はい | 10進数字で表した整数(文字列として送信); nullも可 |
items[].caughtUp | boolean | はい | nullも可 |
items[].checkedAt | string (date-time) | はい | nullも可 |
items[].syncedAt | string (date-time) | はい | nullも可 |
items[].errorCode | string | はい | nullも可 |
items[].errorAt | string (date-time) | はい | nullも可 |
items[].copiedArtifacts | integer | はい | 0以上 |
items[].copiedBytes | string | はい | 10進数字で表した整数(文字列として送信) |
items[].conflicts | object | はい | — |
items[].conflicts.count | integer | はい | 0以上 |
items[].conflicts.oldestAt | string (date-time) | はい | nullも可 |
items[].conflicts.sample | objectの配列 | はい | 10個以内の要素 |
レスポンス: 200, 400, 401, 403, 404, 409, 422, 503, 507
例
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、または、リストされたstagesのバージョンを引き継ぐimport)、phase(pending、seeding、following)、適用済みのcursorとミラー元のhead、caughtUp、前回の確認・同期・エラー、コピーされたアーティファクトとバイトの数を返します。シーケンスはミラー元のジャーナル番号であるため、その差は変更の件数ではありません。通常のリポジトリは404で応答します。
パラメーター
| 名前 | 場所 | 型 | 必須 | ルール |
|---|---|---|---|---|
repository | パス | string | はい | ^[a-z0-9][a-z0-9_-]{0,63}$に一致 |
レスポンス 200
| フィールド | 型 | 必須 | ルール |
|---|---|---|---|
repository | string | はい | — |
upstream | string (uri) | はい | — |
sourceRepository | string | はい | — |
mode | string | はい | 次のいずれか:mirror, import |
stages | stringの配列 | はい | 16個以内の要素 |
phase | string | はい | 次のいずれか:pending, seeding, following |
seedStep | string | はい | 次のいずれか:artifacts, packages, assets; nullも可 |
cursor | string | はい | 10進数字で表した整数(文字列として送信) |
head | string | はい | 10進数字で表した整数(文字列として送信); nullも可 |
caughtUp | boolean | はい | nullも可 |
checkedAt | string (date-time) | はい | nullも可 |
syncedAt | string (date-time) | はい | nullも可 |
errorCode | string | はい | nullも可 |
errorAt | string (date-time) | はい | nullも可 |
copiedArtifacts | integer | はい | 0以上 |
copiedBytes | string | はい | 10進数字で表した整数(文字列として送信) |
conflicts | object | はい | — |
conflicts.count | integer | はい | 0以上 |
conflicts.oldestAt | string (date-time) | はい | nullも可 |
conflicts.sample | objectの配列 | はい | 10個以内の要素 |
conflicts.sample[].artifactId | string (uuid) | はい | — |
conflicts.sample[].action | string | はい | — |
conflicts.sample[].detail | string | はい | nullも可 |
conflicts.sample[].code | string | はい | — |
conflicts.sample[].firstAt | string (date-time) | はい | — |
conflicts.sample[].lastAt | string (date-time) | はい | — |
conflicts.sample[].attempts | integer | はい | 1以上 |
レスポンス: 200, 400, 401, 403, 404, 409, 422, 503, 507
例
curl -X GET "$ARKVORY_URL/api/v1/repositories/$REPOSITORY/mirror" \
-H "Authorization: Bearer $ARKVORY_TOKEN"