Inspect changes in Gitaly 11825b3ad89525b194cc4095e581eef843377cdb
Upstream merge commit 4ca7dd558712 changes Gitaly server version from d87e76a602d9a5400c80363c8cfa878a3409c292 to 11825b3ad89525b194cc4095e581eef843377cdb, with changes in protocol or one of the source subtrees currently under watch.
To further inspect, go to an up to date Gitaly source clone and run
diff d87e76a602d9a5400c80363c8cfa878a3409c292..11825b3ad89525b194cc4095e581eef843377cdb -- proto/*.proto internal/backup
. Here is a preview, truncated at 500 lines:
diff --git a/proto/internal.proto b/proto/internal.proto
index 44f18d609..1e3f40882 100644
--- a/proto/internal.proto
+++ b/proto/internal.proto
@@ -4,6 +4,7 @@ package gitaly;
import "google/protobuf/timestamp.proto";
import "lint.proto";
+import "shared.proto";
option go_package = "gitlab.com/gitlab-org/gitaly/v16/proto/go/gitalypb";
@@ -18,6 +19,14 @@ service InternalGitaly {
scope_level: STORAGE
};
}
+
+ // BackupRepos triggers a backup for each repository in the stream. This RPC
+ // is intended to be used to coordinate backups within the gitaly cluster.
+ rpc BackupRepos (stream BackupReposRequest) returns (BackupReposResponse) {
+ option (op_type) = {
+ op: ACCESSOR
+ };
+ }
}
// This comment is left unintentionally blank.
@@ -35,3 +44,29 @@ message WalkReposResponse {
// modified.
google.protobuf.Timestamp modification_time = 2;
}
+
+// BackupReposRequest contains request parameters for the BackupRepos RPC.
+message BackupReposRequest {
+ // Header contains information to create the backups and must be sent in the
+ // first message.
+ message Header {
+ // BackupId determines which collective backup these repository backups will
+ // be part of. Must be sent in first message.
+ string backup_id = 1;
+
+ // StorageUrl is the object-storage URL where the backups will be stored.
+ // See https://gocloud.dev/howto/blob/ and https://gocloud.dev/concepts/urls/
+ string storage_url = 2;
+ }
+
+ // For each request stream there must be first a request with a header
+ // containing details about the backups to perform.
+ Header header = 1;
+
+ // Repositories to have a backups triggered.
+ repeated Repository repositories = 2 [(target_repository)=true];
+}
+
+// BackupReposResponse contains response parameters for the BackupRepos RPC.
+message BackupReposResponse {
+}
A merge request may have already been submitted, check that on [merge commit commit](4ca7dd558712, as usually changes in Gitaly are not breaking, compliance becoming mandatory in the following development cycles.