blob: cbccfefccf4519bcfe8384ecc6209be90682846a [file] [log] [blame]
Abhay Kumara2ae5992025-11-10 14:02:24 +00001syntax = "proto3";
2package membershippb;
3
4import "gogoproto/gogo.proto";
5import "etcd/api/versionpb/version.proto";
6
7option go_package = "go.etcd.io/etcd/api/v3/membershippb";
8
9option (gogoproto.marshaler_all) = true;
10option (gogoproto.sizer_all) = true;
11option (gogoproto.unmarshaler_all) = true;
12option (gogoproto.goproto_getters_all) = false;
13
14// RaftAttributes represents the raft related attributes of an etcd member.
15message RaftAttributes {
16 option (versionpb.etcd_version_msg) = "3.5";
17
18 // peerURLs is the list of peers in the raft cluster.
19 repeated string peer_urls = 1;
20 // isLearner indicates if the member is raft learner.
21 bool is_learner = 2;
22}
23
24// Attributes represents all the non-raft related attributes of an etcd member.
25message Attributes {
26 option (versionpb.etcd_version_msg) = "3.5";
27
28 string name = 1;
29 repeated string client_urls = 2;
30}
31
32message Member {
33 option (versionpb.etcd_version_msg) = "3.5";
34
35 uint64 ID = 1;
36 RaftAttributes raft_attributes = 2;
37 Attributes member_attributes = 3;
38}
39
40message ClusterVersionSetRequest {
41 option (versionpb.etcd_version_msg) = "3.5";
42
43 string ver = 1;
44}
45
46message ClusterMemberAttrSetRequest {
47 option (versionpb.etcd_version_msg) = "3.5";
48
49 uint64 member_ID = 1;
50 Attributes member_attributes = 2;
51}
52
53message DowngradeInfoSetRequest {
54 option (versionpb.etcd_version_msg) = "3.5";
55
56 bool enabled = 1;
57 string ver = 2;
58}