syntax = "proto3";

package gitaly;

option go_package = "gitlab.com/gitlab-org/gitaly/v14/proto/go/gitalypb";

import "lint.proto";

// InternalGitaly is a gRPC service meant to be served by a Gitaly node, but
// only reachable by Praefect or other Gitalies
service InternalGitaly {
  // WalkRepos walks the storage and streams back all known git repos on the
  // requested storage
  rpc WalkRepos (WalkReposRequest) returns (stream WalkReposResponse) {
    option (op_type) = {
      op:          ACCESSOR
      scope_level: STORAGE
    };
  }
}

message WalkReposRequest {
  string storage_name = 1 [(storage)=true];
}

message WalkReposResponse {
  string relative_path = 1;
}
