プロジェクト関連エクスポートAPI
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated
このAPIは、プロジェクト構造を移行するために、ダイレクト転送によるグループ移行中に宛先インスタンスによって使用されます。通常、このAPIを自分で使用する必要はありません。
このコンテキストでは、 はマージリクエストなどのエクスポート可能な項目です。関係をエクスポートすると、ラベルなど、その関係に関連するすべての項目が含まれます。
このAPIを使用する場合は、GitLabのインスタンスが特定の前提条件を満たしている必要があります。
このAPIは、ファイルベースの移行用のグループインポートおよびエクスポートAPIでは使用できません。
プロジェクトの新規エクスポートをスケジュールする
指定されたプロジェクトの関連エクスポートをスケジュールします。
POST /projects/:id/export_relations| 属性 | 型 | 必須 | 説明 |
|---|---|---|---|
id | 整数または文字列 | はい | プロジェクトのID。 |
batched | ブール値 | いいえ | バッチでエクスポートするかどうか。 |
curl --request POST \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/1/export_relations"{
"message": "202 Accepted"
}エクスポートのステータスを取得する
関連エクスポートのステータスを取得する。
GET /projects/:id/export_relations/status| 属性 | 型 | 必須 | 説明 |
|---|---|---|---|
id | 整数または文字列 | はい | プロジェクトのID。 |
relation | 文字列 | いいえ | 表示するプロジェクトのトップレベル関連の名前。 |
curl --request GET \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/1/export_relations/status"ステータスは次のいずれかです:
0:started(開始済み)1:finished(開始済み)-1:failed(開始済み)
[
{
"relation": "project_badges",
"status": 1,
"error": null,
"updated_at": "2021-05-04T11:25:20.423Z",
"batched": true,
"batches_count": 1,
"batches": [
{
"status": 1,
"batch_number": 1,
"objects_count": 1,
"error": null,
"updated_at": "2021-05-04T11:25:20.423Z"
}
]
},
{
"relation": "boards",
"status": 1,
"error": null,
"updated_at": "2021-05-04T11:25:20.085Z",
"batched": false,
"batches_count": 0
}
]エクスポートをダウンロード
完了した関連エクスポートをダウンロードします。
GET /projects/:id/export_relations/download| 属性 | 型 | 必須 | 説明 |
|---|---|---|---|
id | 整数または文字列 | はい | プロジェクトのID。 |
relation | 文字列 | はい | ダウンロードするプロジェクトのトップレベル関連の名前。 |
batched | ブール値 | いいえ | エクスポートがバッチ処理されているかどうか。 |
batch_number | 整数 | いいえ | ダウンロードするエクスポートバッチの番号。 |
curl --request GET \
--header "PRIVATE-TOKEN: <your_access_token>" \
--remote-header-name \
--remote-name \
--url "https://gitlab.example.com/api/v4/projects/1/export_relations/download?relation=labels"ls labels.ndjson.gz
labels.ndjson.gz