Conversation: change_repository_storage
Stages:
-
~"Client Implementation": #857 (closed) -
~"Acceptance Testing": #910 (closed)
RPC Endpoints:
- TBD
Known Client Routes:
- Grape POST
/api/v4/projects/:project_id
Currently as a part of storage sharding that was delivered in https://gitlab.com/gitlab-org/gitlab-ee/issues/239 projects are movable via the API between shards. This is accomplished by an rsync
command being performed on the back end API nodes to move projects from one NFS mount to the other. In a world where NFS mounts no longer exist we need a method to move projects between Gitaly storage targets.
There is an API call to move a project from one shard to another and can be found in the Runbooks for shard management
Git repositories can me moved between shards using an administrative API command:
curl --request PUT --header "PRIVATE-TOKEN: token_goes_here" -d repository_storage=nfs-fileXX https://gitlab.com/api/v4/projects/project_id_here
Blocked on #665 (closed)