mirror of
https://github.com/harness/drone.git
synced 2025-05-02 13:40:22 +00:00
166 lines
3.5 KiB
Protocol Buffer
166 lines
3.5 KiB
Protocol Buffer
syntax = "proto3";
|
|
package rpc;
|
|
|
|
option go_package = "github.com/harness/gitness/gitrpc/rpc";
|
|
|
|
import "shared.proto";
|
|
|
|
// RepositoryService is a service providing RPCs accessing repositories as a whole.
|
|
service RepositoryService {
|
|
rpc CreateRepository(stream CreateRepositoryRequest) returns (CreateRepositoryResponse);
|
|
rpc GetTreeNode(GetTreeNodeRequest) returns (GetTreeNodeResponse);
|
|
rpc ListTreeNodes(ListTreeNodesRequest) returns (stream ListTreeNodesResponse);
|
|
rpc GetSubmodule(GetSubmoduleRequest) returns (GetSubmoduleResponse);
|
|
rpc GetBlob(GetBlobRequest) returns (stream GetBlobResponse);
|
|
rpc ListCommits(ListCommitsRequest) returns (stream ListCommitsResponse);
|
|
rpc GetCommit(GetCommitRequest) returns (GetCommitResponse);
|
|
rpc GetCommitDivergences(GetCommitDivergencesRequest) returns (GetCommitDivergencesResponse);
|
|
rpc DeleteRepository(DeleteRepositoryRequest) returns (DeleteRepositoryResponse);
|
|
}
|
|
|
|
message CreateRepositoryRequest {
|
|
oneof data {
|
|
CreateRepositoryRequestHeader header = 1;
|
|
FileUpload file = 2;
|
|
}
|
|
}
|
|
|
|
message CreateRepositoryRequestHeader {
|
|
WriteRequest base = 1;
|
|
string default_branch = 2;
|
|
Identity author = 3;
|
|
Identity committer = 4;
|
|
}
|
|
|
|
message CreateRepositoryResponse { }
|
|
|
|
message GetTreeNodeRequest {
|
|
ReadRequest base = 1;
|
|
string git_ref = 2;
|
|
string path = 3;
|
|
bool include_latest_commit = 4;
|
|
}
|
|
|
|
message GetTreeNodeResponse {
|
|
TreeNode node = 1;
|
|
Commit commit = 2;
|
|
}
|
|
|
|
message ListTreeNodesRequest {
|
|
ReadRequest base = 1;
|
|
string git_ref = 2;
|
|
string path = 3;
|
|
bool include_latest_commit = 4;
|
|
bool recursive = 5;
|
|
}
|
|
|
|
message ListTreeNodesResponse {
|
|
TreeNode node = 1;
|
|
Commit commit = 2;
|
|
}
|
|
|
|
message TreeNode {
|
|
TreeNodeType type = 1;
|
|
TreeNodeMode mode = 2;
|
|
string sha = 3;
|
|
string name = 4;
|
|
string path = 5;
|
|
}
|
|
|
|
enum TreeNodeType {
|
|
TreeNodeTypeTree = 0;
|
|
TreeNodeTypeBlob = 1;
|
|
TreeNodeTypeCommit = 2;
|
|
}
|
|
|
|
enum TreeNodeMode {
|
|
TreeNodeModeFile = 0;
|
|
TreeNodeModeSymlink = 1;
|
|
TreeNodeModeExec = 2;
|
|
TreeNodeModeTree = 3;
|
|
TreeNodeModeCommit = 4;
|
|
}
|
|
|
|
message GetCommitRequest {
|
|
ReadRequest base = 1;
|
|
string sha = 2;
|
|
}
|
|
|
|
message GetCommitResponse {
|
|
Commit commit = 1;
|
|
}
|
|
|
|
message ListCommitsRequest {
|
|
ReadRequest base = 1;
|
|
string git_ref = 2;
|
|
string after = 3;
|
|
int32 page = 4;
|
|
int32 limit = 5;
|
|
}
|
|
|
|
message ListCommitsResponse {
|
|
Commit commit = 1;
|
|
}
|
|
|
|
|
|
message GetBlobRequest {
|
|
ReadRequest base = 1;
|
|
string sha = 2;
|
|
int64 size_limit = 3;
|
|
}
|
|
|
|
message GetBlobResponse {
|
|
oneof data {
|
|
GetBlobResponseHeader header = 1;
|
|
bytes content = 2;
|
|
}
|
|
}
|
|
|
|
message GetBlobResponseHeader {
|
|
string sha = 1;
|
|
int64 size = 2;
|
|
int64 content_size = 3;
|
|
}
|
|
|
|
message GetSubmoduleRequest {
|
|
ReadRequest base = 1;
|
|
string git_ref = 2;
|
|
string path = 3;
|
|
}
|
|
|
|
message GetSubmoduleResponse {
|
|
Submodule submodule = 1;
|
|
}
|
|
|
|
message Submodule {
|
|
string name = 1;
|
|
string url = 2;
|
|
}
|
|
|
|
message GetCommitDivergencesRequest {
|
|
ReadRequest base = 1;
|
|
int32 max_count = 2;
|
|
repeated CommitDivergenceRequest requests = 3;
|
|
}
|
|
|
|
message CommitDivergenceRequest {
|
|
string from = 1;
|
|
string to = 2;
|
|
}
|
|
|
|
|
|
message GetCommitDivergencesResponse {
|
|
repeated CommitDivergence divergences = 1;
|
|
}
|
|
|
|
message CommitDivergence {
|
|
int32 ahead = 1;
|
|
int32 behind = 2;
|
|
}
|
|
|
|
message DeleteRepositoryRequest {
|
|
WriteRequest base = 1;
|
|
}
|
|
|
|
message DeleteRepositoryResponse {
|
|
} |