Merge pull request #4289 from xiang90/member_api

etcdserver: initial member api proto
release-2.3
Xiang Li 2016-01-26 10:16:44 -08:00
commit 179a8f9768
2 changed files with 1508 additions and 0 deletions

File diff suppressed because it is too large Load Diff

View File

@ -57,6 +57,20 @@ service Lease {
// TODO(xiangli) Get details information (expirations, leased keys, etc.) of a lease?
}
service Cluster {
// AddMember adds a member into the cluster.
rpc AddMember(AddMemberRequest) returns (AddMemberResponse) {}
// RemoveMember removes an existing member from the cluster.
rpc RemoveMember(RemoveMemberRequest) returns (RemoveMemberResponse) {}
// UpdateMember updates the member configuration.
rpc UpdateMember(UpdateMemberRequest) returns (UpdateMemberResponse) {}
// ListMember lists all the members in the cluster.
rpc ListMember(ListMemberRequest) returns (ListMemberResponse) {}
}
message ResponseHeader {
uint64 cluster_id = 1;
uint64 member_id = 2;
@ -292,3 +306,47 @@ message LeaseKeepAliveResponse {
int64 ID = 2;
int64 TTL = 3;
}
message Member {
uint64 ID = 1;
// If the member is not started, name will be an empty string.
string name = 2;
repeated string peer_URLs = 3;
// If the member is not started, client_URLs will be an zero length
// string array.
repeated string client_URLs = 4;
}
message AddMemberRequest {
repeated string peer_URLs = 1;
}
message AddMemberResponse {
ResponseHeader header = 1;
Member member = 2;
}
message RemoveMemberRequest {
uint64 ID = 1;
}
message RemoveMemberResponse {
ResponseHeader header = 1;
}
message UpdateMemberRequest {
uint64 ID = 1;
repeated string peer_URLs = 2;
}
message UpdateMemberResponse{
ResponseHeader header = 1;
}
message ListMemberRequest {
}
message ListMemberResponse {
ResponseHeader header = 1;
repeated Member members = 2;
}