diff options
Diffstat (limited to 'doc/api/group_repository_storage_moves.md')
-rw-r--r-- | doc/api/group_repository_storage_moves.md | 44 |
1 files changed, 25 insertions, 19 deletions
diff --git a/doc/api/group_repository_storage_moves.md b/doc/api/group_repository_storage_moves.md index 53afe8d5ef3..a893bffb1f5 100644 --- a/doc/api/group_repository_storage_moves.md +++ b/doc/api/group_repository_storage_moves.md @@ -9,31 +9,35 @@ type: reference > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/53016) in GitLab 13.9. -Group repositories can be moved between storages. This can be useful when -[migrating to Gitaly Cluster](../administration/gitaly/praefect.md#migrate-to-gitaly-cluster), for -example, or to migrate a Group Wiki. +Group repositories can be moved between storages. This API can help you when +[migrating to Gitaly Cluster](../administration/gitaly/index.md#migrate-to-gitaly-cluster), for +example, or to migrate a [group wiki](../user/project/wiki/index.md#group-wikis). As group repository storage moves are processed, they transition through different states. Values of `state` are: -- `initial`: The record has been created but the background job has not yet been scheduled. +- `initial`: The record has been created, but the background job has not yet been scheduled. - `scheduled`: The background job has been scheduled. - `started`: The group repositories are being copied to the destination storage. - `replicated`: The group has been moved. -- `failed`: The group repositories failed to copy or the checksums did not match. -- `finished`: The group has been moved and the repositories on the source storage have been deleted. -- `cleanup failed`: The group has been moved but the repositories on the source storage could not be deleted. +- `failed`: The group repositories failed to copy, or the checksums did not match. +- `finished`: The group has been moved, and the repositories on the source storage have been deleted. +- `cleanup failed`: The group has been moved, but the repositories on the source storage could not be deleted. To ensure data integrity, groups are put in a temporary read-only state for the -duration of the move. During this time, users receive a `The repository is temporarily -read-only. Please try again later.` message if they try to push new commits. +duration of the move. During this time, users receive this message if they try to +push new commits: + +```plaintext +The repository is temporarily read-only. Please try again later. +``` This API requires you to [authenticate yourself](index.md#authentication) as an administrator. -For other type of repositories you can read: +APIs are also available to move other types of repositories: -- [Project repository storage moves API](project_repository_storage_moves.md) -- [Snippet repository storage moves API](snippet_repository_storage_moves.md) +- [Project repository storage moves API](project_repository_storage_moves.md). +- [Snippet repository storage moves API](snippet_repository_storage_moves.md). ## Retrieve all group repository storage moves @@ -41,7 +45,7 @@ For other type of repositories you can read: GET /group_repository_storage_moves ``` -By default, `GET` requests return 20 results at a time because the API results +By default, `GET` requests return 20 results at a time, because the API results are [paginated](index.md#pagination). Example request: @@ -71,13 +75,13 @@ Example response: ## Retrieve all repository storage moves for a single group -In order to retrieve all the repository storage moves for a single group you can use the following endpoint: +To retrieve all the repository storage moves for a single group you can use the following endpoint: ```plaintext GET /groups/:group_id/repository_storage_moves ``` -By default, `GET` requests return 20 results at a time because the API results +By default, `GET` requests return 20 results at a time, because the API results are [paginated](index.md#pagination). Supported attributes: @@ -113,7 +117,8 @@ Example response: ## Get a single group repository storage move -In order to retrieve a single repository storage move throughout all the existing repository storage moves, you can use the following endpoint: +To retrieve a single repository storage move throughout all the existing repository +storage moves, you can use the following endpoint: ```plaintext GET /group_repository_storage_moves/:repository_storage_id @@ -150,7 +155,8 @@ Example response: ## Get a single repository storage move for a group -Given a group, you can retrieve a specific repository storage move for that group, through the following endpoint: +Given a group, you can retrieve a specific repository storage move for that group, +through the following endpoint: ```plaintext GET /groups/:group_id/repository_storage_moves/:repository_storage_id @@ -197,7 +203,7 @@ Supported attributes: | Attribute | Type | Required | Description | | --------- | ---- | -------- | ----------- | | `group_id` | integer | yes | ID of the group. | -| `destination_storage_name` | string | no | Name of the destination storage shard. In [GitLab 13.5 and later](https://gitlab.com/gitlab-org/gitaly/-/issues/3209), the storage is selected [automatically based on storage weights](../administration/repository_storage_paths.md#configure-where-new-repositories-are-stored) if not provided. | +| `destination_storage_name` | string | no | Name of the destination storage shard. In [GitLab 13.5 and later](https://gitlab.com/gitlab-org/gitaly/-/issues/3209), the storage is selected [based on storage weights](../administration/repository_storage_paths.md#configure-where-new-repositories-are-stored) if not provided. | Example request: @@ -238,7 +244,7 @@ Supported attributes: | Attribute | Type | Required | Description | | --------- | ---- | -------- | ----------- | | `source_storage_name` | string | yes | Name of the source storage shard. | -| `destination_storage_name` | string | no | Name of the destination storage shard. The storage is selected [automatically based on storage weights](../administration/repository_storage_paths.md#configure-where-new-repositories-are-stored) if not provided. | +| `destination_storage_name` | string | no | Name of the destination storage shard. The storage is selected [based on storage weights](../administration/repository_storage_paths.md#configure-where-new-repositories-are-stored) if not provided. | Example request: |