diff --git a/Makefile b/Makefile index 9ccf12770..ae1ced9ea 100644 --- a/Makefile +++ b/Makefile @@ -34,16 +34,18 @@ image-name: ## Protobuf ## ############## # Tool versions. -protoc-version = 3.11.2 -protoc-gen-go-version = 1.3.2 -protoc-gen-grpc-gateway-version = 1.12.1 -protoc-gen-swagger-version = 1.12.1 +protoc-version = 29.2 +protoc-gen-go-version = 1.36.1 +protoc-gen-go-grpc-version = 1.5.1 +protoc-gen-grpc-gateway-version = 2.25.1 +protoc-gen-openapiv2-version = 2.25.1 # Tool binary paths protoc = $(GOPATH)/bin/protoc protoc-gen-go = $(GOPATH)/bin/protoc-gen-go +protoc-gen-go-grpc = $(GOPATH)/bin/protoc-gen-go-grpc protoc-gen-grpc-gateway = $(GOPATH)/bin/protoc-gen-grpc-gateway -protoc-gen-swagger = $(GOPATH)/bin/protoc-gen-swagger +protoc-gen-openapiv2 = $(GOPATH)/bin/protoc-gen-openapiv2 # The protoc zip url changes depending on if we're running in CI or not. ifeq ($(shell uname -s),Linux) @@ -66,33 +68,39 @@ $(protoc): $(protoc-gen-go): @echo "+ $@" @echo "Installing protoc-gen-go $(protoc-gen-go-version) to $(protoc-gen-go)" - @cd /tmp; go install github.com/golang/protobuf/protoc-gen-go@v$(protoc-gen-go-version) + @cd /tmp; go install google.golang.org/protobuf/cmd/protoc-gen-go@v$(protoc-gen-go-version) + +# This target installs the protoc-gen-go-grpc binary. +$(protoc-gen-go-grpc): + @echo "+ $@" + @echo "Installing protoc-gen-go-grpc $(protoc-gen-go-grpc-version) to $(protoc-gen-go-grpc)" + @cd /tmp; go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@v$(protoc-gen-go-grpc-version) # This target installs the protoc-gen-grpc-gateway binary. $(protoc-gen-grpc-gateway): @echo "+ $@" @echo "Installing protoc-gen-grpc-gateway $(protoc-gen-grpc-gateway-version) to $(protoc-gen-grpc-gateway)" - @cd /tmp; go install github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway@v$(protoc-gen-grpc-gateway-version) + @cd /tmp; go install github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-grpc-gateway@v$(protoc-gen-grpc-gateway-version) -# This target installs the protoc-gen-swagger binary. -$(protoc-gen-swagger): +# This target installs the protoc-gen-openapiv2 binary. +$(protoc-gen-openapiv2): @echo "+ $@" - @echo "Installing protoc-gen-swagger $(protoc-gen-swagger-version) to $(protoc-gen-swagger)" - @cd /tmp; go install github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger@v$(protoc-gen-swagger-version) + @echo "Installing protoc-gen-openapiv2 $(protoc-gen-openapiv2-version) to $(protoc-gen-openapiv2)" + @cd /tmp; go install github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2@v$(protoc-gen-openapiv2-version) # This target installs all of the protoc related binaries. .PHONY: protoc-tools -protoc-tools: $(protoc) $(protoc-gen-go) $(protoc-gen-grpc-gateway) $(protoc-gen-swagger) +protoc-tools: $(protoc) $(protoc-gen-go) $(protoc-gen-go-grpc) $(protoc-gen-grpc-gateway) $(protoc-gen-openapiv2) PROTO_INPUT_DIR = proto/api/v1 PROTO_THIRD_PARTY = proto/third_party PROTO_FILES = service.proto -PROTO_OUTPUT_DIR = generated/api/v1 +PROTO_OUTPUT_DIR = generated # This target compiles proto files into: # - Go gRPC bindings # - Go gRPC-Gateway bindings -# - JSON Swagger definitions file +# - JSON OpenAPI v2 (Swagger) definitions file .PHONY: proto-generated-srcs proto-generated-srcs: protoc-tools @echo "+ $@" @@ -100,7 +108,8 @@ proto-generated-srcs: protoc-tools # Generate gRPC bindings $(protoc) -I$(PROTO_INPUT_DIR) \ -I$(PROTO_THIRD_PARTY) \ - --go_out=plugins=grpc:$(PROTO_OUTPUT_DIR) \ + --go_out=$(PROTO_OUTPUT_DIR) \ + --go-grpc_out=$(PROTO_OUTPUT_DIR) \ $(PROTO_FILES) # Generate gRPC-Gateway bindings @@ -109,10 +118,10 @@ proto-generated-srcs: protoc-tools --grpc-gateway_out=logtostderr=true:$(PROTO_OUTPUT_DIR) \ $(PROTO_FILES) - # Generate JSON Swagger manifest + # Generate JSON OpenAPI manifest $(protoc) -I$(PROTO_INPUT_DIR) \ -I$(PROTO_THIRD_PARTY) \ - --swagger_out=logtostderr=true:$(PROTO_OUTPUT_DIR) \ + --openapiv2_out=logtostderr=true:$(PROTO_OUTPUT_DIR)/api/v1 \ $(PROTO_FILES) ########### @@ -185,7 +194,7 @@ bats-e2e-tests: .PHONY: go-e2e-tests go-e2e-tests: proto-generated-srcs @kubectl apply -f workflows/ - @go test ./test/e2e/... -tags=e2e -v -parallel 5 -count 1 -cover -timeout 1h + @go test ./test/e2e/... -tags=e2e2 -v -parallel 5 -count 1 -cover -timeout 1h -json # Assuming a local dev infra server is running and accessible via a port-forward # i.e. nohup kubectl -n infra port-forward svc/infra-server-service 8443:8443 & diff --git a/cmd/infractl/cluster/get/fancy_test.go b/cmd/infractl/cluster/get/fancy_test.go index 045673569..e7cd2d8d9 100644 --- a/cmd/infractl/cluster/get/fancy_test.go +++ b/cmd/infractl/cluster/get/fancy_test.go @@ -32,6 +32,8 @@ import ( ) type FakeClusterServiceClient struct { + v1.UnimplementedClusterServiceServer + infoFn func(ctx context.Context, clusterID *v1.ResourceByID) (*v1.Cluster, error) listFn func(ctx context.Context, req *v1.ClusterListRequest) (*v1.ClusterListResponse, error) lifespanFn func(ctx context.Context, req *v1.LifespanRequest) (*durationpb.Duration, error) diff --git a/generated/api/v1/service.pb.go b/generated/api/v1/service.pb.go index 482da10b5..aa2ea1d9a 100644 --- a/generated/api/v1/service.pb.go +++ b/generated/api/v1/service.pb.go @@ -1,32 +1,28 @@ // Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.36.1 +// protoc v5.29.2 // source: service.proto package v1 import ( - context "context" - fmt "fmt" - proto "github.com/golang/protobuf/proto" _ "google.golang.org/genproto/googleapis/api/annotations" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" durationpb "google.golang.org/protobuf/types/known/durationpb" emptypb "google.golang.org/protobuf/types/known/emptypb" timestamppb "google.golang.org/protobuf/types/known/timestamppb" - math "math" + reflect "reflect" + sync "sync" ) -// Reference imports to suppress errors if they are not otherwise used. -var _ = proto.Marshal -var _ = fmt.Errorf -var _ = math.Inf - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the proto package it is being compiled against. -// A compilation error at this line likely means your copy of the -// proto package needs to be updated. -const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) // Status represents the various cluster states. type Status int32 @@ -44,28 +40,49 @@ const ( Status_FINISHED Status = 4 ) -var Status_name = map[int32]string{ - 0: "FAILED", - 1: "CREATING", - 2: "READY", - 3: "DESTROYING", - 4: "FINISHED", -} +// Enum value maps for Status. +var ( + Status_name = map[int32]string{ + 0: "FAILED", + 1: "CREATING", + 2: "READY", + 3: "DESTROYING", + 4: "FINISHED", + } + Status_value = map[string]int32{ + "FAILED": 0, + "CREATING": 1, + "READY": 2, + "DESTROYING": 3, + "FINISHED": 4, + } +) -var Status_value = map[string]int32{ - "FAILED": 0, - "CREATING": 1, - "READY": 2, - "DESTROYING": 3, - "FINISHED": 4, +func (x Status) Enum() *Status { + p := new(Status) + *p = x + return p } func (x Status) String() string { - return proto.EnumName(Status_name, int32(x)) + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (Status) Descriptor() protoreflect.EnumDescriptor { + return file_service_proto_enumTypes[0].Descriptor() } +func (Status) Type() protoreflect.EnumType { + return &file_service_proto_enumTypes[0] +} + +func (x Status) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use Status.Descriptor instead. func (Status) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{0} + return file_service_proto_rawDescGZIP(), []int{0} } // availability represents the availability classification levels. @@ -83,26 +100,47 @@ const ( Flavor_default FlavorAvailability = 3 ) -var FlavorAvailability_name = map[int32]string{ - 0: "alpha", - 1: "beta", - 2: "stable", - 3: "default", -} +// Enum value maps for FlavorAvailability. +var ( + FlavorAvailability_name = map[int32]string{ + 0: "alpha", + 1: "beta", + 2: "stable", + 3: "default", + } + FlavorAvailability_value = map[string]int32{ + "alpha": 0, + "beta": 1, + "stable": 2, + "default": 3, + } +) -var FlavorAvailability_value = map[string]int32{ - "alpha": 0, - "beta": 1, - "stable": 2, - "default": 3, +func (x FlavorAvailability) Enum() *FlavorAvailability { + p := new(FlavorAvailability) + *p = x + return p } func (x FlavorAvailability) String() string { - return proto.EnumName(FlavorAvailability_name, int32(x)) + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } +func (FlavorAvailability) Descriptor() protoreflect.EnumDescriptor { + return file_service_proto_enumTypes[1].Descriptor() +} + +func (FlavorAvailability) Type() protoreflect.EnumType { + return &file_service_proto_enumTypes[1] +} + +func (x FlavorAvailability) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use FlavorAvailability.Descriptor instead. func (FlavorAvailability) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{8, 0} + return file_service_proto_rawDescGZIP(), []int{8, 0} } // method represents the various lifespan operations. @@ -120,193 +158,256 @@ const ( LifespanRequest_SUBTRACT LifespanRequest_Method = 2 ) -var LifespanRequest_Method_name = map[int32]string{ - 0: "REPLACE", - 1: "ADD", - 2: "SUBTRACT", -} +// Enum value maps for LifespanRequest_Method. +var ( + LifespanRequest_Method_name = map[int32]string{ + 0: "REPLACE", + 1: "ADD", + 2: "SUBTRACT", + } + LifespanRequest_Method_value = map[string]int32{ + "REPLACE": 0, + "ADD": 1, + "SUBTRACT": 2, + } +) -var LifespanRequest_Method_value = map[string]int32{ - "REPLACE": 0, - "ADD": 1, - "SUBTRACT": 2, +func (x LifespanRequest_Method) Enum() *LifespanRequest_Method { + p := new(LifespanRequest_Method) + *p = x + return p } func (x LifespanRequest_Method) String() string { - return proto.EnumName(LifespanRequest_Method_name, int32(x)) + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } -func (LifespanRequest_Method) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{14, 0} +func (LifespanRequest_Method) Descriptor() protoreflect.EnumDescriptor { + return file_service_proto_enumTypes[2].Descriptor() } -// ResourceByID represents a generic reference to a named/unique resource. -type ResourceByID struct { - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (LifespanRequest_Method) Type() protoreflect.EnumType { + return &file_service_proto_enumTypes[2] } -func (m *ResourceByID) Reset() { *m = ResourceByID{} } -func (m *ResourceByID) String() string { return proto.CompactTextString(m) } -func (*ResourceByID) ProtoMessage() {} -func (*ResourceByID) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{0} +func (x LifespanRequest_Method) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) } -func (m *ResourceByID) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ResourceByID.Unmarshal(m, b) +// Deprecated: Use LifespanRequest_Method.Descriptor instead. +func (LifespanRequest_Method) EnumDescriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{14, 0} } -func (m *ResourceByID) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ResourceByID.Marshal(b, m, deterministic) + +// ResourceByID represents a generic reference to a named/unique resource. +type ResourceByID struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *ResourceByID) XXX_Merge(src proto.Message) { - xxx_messageInfo_ResourceByID.Merge(m, src) + +func (x *ResourceByID) Reset() { + *x = ResourceByID{} + mi := &file_service_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *ResourceByID) XXX_Size() int { - return xxx_messageInfo_ResourceByID.Size(m) + +func (x *ResourceByID) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ResourceByID) XXX_DiscardUnknown() { - xxx_messageInfo_ResourceByID.DiscardUnknown(m) + +func (*ResourceByID) ProtoMessage() {} + +func (x *ResourceByID) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[0] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ResourceByID proto.InternalMessageInfo +// Deprecated: Use ResourceByID.ProtoReflect.Descriptor instead. +func (*ResourceByID) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{0} +} -func (m *ResourceByID) GetId() string { - if m != nil { - return m.Id +func (x *ResourceByID) GetId() string { + if x != nil { + return x.Id } return "" } type Version struct { - BuildDate *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=BuildDate,proto3" json:"BuildDate,omitempty"` - GitCommit string `protobuf:"bytes,2,opt,name=GitCommit,proto3" json:"GitCommit,omitempty"` - GoVersion string `protobuf:"bytes,3,opt,name=GoVersion,proto3" json:"GoVersion,omitempty"` - Platform string `protobuf:"bytes,4,opt,name=Platform,proto3" json:"Platform,omitempty"` - Version string `protobuf:"bytes,5,opt,name=Version,proto3" json:"Version,omitempty"` - Workflow string `protobuf:"bytes,6,opt,name=Workflow,proto3" json:"Workflow,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *Version) Reset() { *m = Version{} } -func (m *Version) String() string { return proto.CompactTextString(m) } -func (*Version) ProtoMessage() {} -func (*Version) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{1} + state protoimpl.MessageState `protogen:"open.v1"` + BuildDate *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=BuildDate,proto3" json:"BuildDate,omitempty"` + GitCommit string `protobuf:"bytes,2,opt,name=GitCommit,proto3" json:"GitCommit,omitempty"` + GoVersion string `protobuf:"bytes,3,opt,name=GoVersion,proto3" json:"GoVersion,omitempty"` + Platform string `protobuf:"bytes,4,opt,name=Platform,proto3" json:"Platform,omitempty"` + Version string `protobuf:"bytes,5,opt,name=Version,proto3" json:"Version,omitempty"` + Workflow string `protobuf:"bytes,6,opt,name=Workflow,proto3" json:"Workflow,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *Version) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Version.Unmarshal(m, b) -} -func (m *Version) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Version.Marshal(b, m, deterministic) -} -func (m *Version) XXX_Merge(src proto.Message) { - xxx_messageInfo_Version.Merge(m, src) +func (x *Version) Reset() { + *x = Version{} + mi := &file_service_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *Version) XXX_Size() int { - return xxx_messageInfo_Version.Size(m) + +func (x *Version) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *Version) XXX_DiscardUnknown() { - xxx_messageInfo_Version.DiscardUnknown(m) + +func (*Version) ProtoMessage() {} + +func (x *Version) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[1] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_Version proto.InternalMessageInfo +// Deprecated: Use Version.ProtoReflect.Descriptor instead. +func (*Version) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{1} +} -func (m *Version) GetBuildDate() *timestamppb.Timestamp { - if m != nil { - return m.BuildDate +func (x *Version) GetBuildDate() *timestamppb.Timestamp { + if x != nil { + return x.BuildDate } return nil } -func (m *Version) GetGitCommit() string { - if m != nil { - return m.GitCommit +func (x *Version) GetGitCommit() string { + if x != nil { + return x.GitCommit } return "" } -func (m *Version) GetGoVersion() string { - if m != nil { - return m.GoVersion +func (x *Version) GetGoVersion() string { + if x != nil { + return x.GoVersion } return "" } -func (m *Version) GetPlatform() string { - if m != nil { - return m.Platform +func (x *Version) GetPlatform() string { + if x != nil { + return x.Platform } return "" } -func (m *Version) GetVersion() string { - if m != nil { - return m.Version +func (x *Version) GetVersion() string { + if x != nil { + return x.Version } return "" } -func (m *Version) GetWorkflow() string { - if m != nil { - return m.Workflow +func (x *Version) GetWorkflow() string { + if x != nil { + return x.Workflow } return "" } // WhoamiResponse represents details about the current authenticated principal. type WhoamiResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` // Principal represents a possible type of authenticated principal. // // Types that are valid to be assigned to Principal: // // *WhoamiResponse_User // *WhoamiResponse_ServiceAccount - Principal isWhoamiResponse_Principal `protobuf_oneof:"principal"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Principal isWhoamiResponse_Principal `protobuf_oneof:"principal"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *WhoamiResponse) Reset() { *m = WhoamiResponse{} } -func (m *WhoamiResponse) String() string { return proto.CompactTextString(m) } -func (*WhoamiResponse) ProtoMessage() {} -func (*WhoamiResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{2} +func (x *WhoamiResponse) Reset() { + *x = WhoamiResponse{} + mi := &file_service_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *WhoamiResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_WhoamiResponse.Unmarshal(m, b) +func (x *WhoamiResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *WhoamiResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_WhoamiResponse.Marshal(b, m, deterministic) + +func (*WhoamiResponse) ProtoMessage() {} + +func (x *WhoamiResponse) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[2] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -func (m *WhoamiResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_WhoamiResponse.Merge(m, src) + +// Deprecated: Use WhoamiResponse.ProtoReflect.Descriptor instead. +func (*WhoamiResponse) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{2} } -func (m *WhoamiResponse) XXX_Size() int { - return xxx_messageInfo_WhoamiResponse.Size(m) + +func (x *WhoamiResponse) GetPrincipal() isWhoamiResponse_Principal { + if x != nil { + return x.Principal + } + return nil } -func (m *WhoamiResponse) XXX_DiscardUnknown() { - xxx_messageInfo_WhoamiResponse.DiscardUnknown(m) + +func (x *WhoamiResponse) GetUser() *User { + if x != nil { + if x, ok := x.Principal.(*WhoamiResponse_User); ok { + return x.User + } + } + return nil } -var xxx_messageInfo_WhoamiResponse proto.InternalMessageInfo +func (x *WhoamiResponse) GetServiceAccount() *ServiceAccount { + if x != nil { + if x, ok := x.Principal.(*WhoamiResponse_ServiceAccount); ok { + return x.ServiceAccount + } + } + return nil +} type isWhoamiResponse_Principal interface { isWhoamiResponse_Principal() } type WhoamiResponse_User struct { + // User represents an authenticated human. User *User `protobuf:"bytes,1,opt,name=User,proto3,oneof"` } type WhoamiResponse_ServiceAccount struct { + // ServiceAccount represents an authenticated service account robot. ServiceAccount *ServiceAccount `protobuf:"bytes,2,opt,name=ServiceAccount,proto3,oneof"` } @@ -314,37 +415,9 @@ func (*WhoamiResponse_User) isWhoamiResponse_Principal() {} func (*WhoamiResponse_ServiceAccount) isWhoamiResponse_Principal() {} -func (m *WhoamiResponse) GetPrincipal() isWhoamiResponse_Principal { - if m != nil { - return m.Principal - } - return nil -} - -func (m *WhoamiResponse) GetUser() *User { - if x, ok := m.GetPrincipal().(*WhoamiResponse_User); ok { - return x.User - } - return nil -} - -func (m *WhoamiResponse) GetServiceAccount() *ServiceAccount { - if x, ok := m.GetPrincipal().(*WhoamiResponse_ServiceAccount); ok { - return x.ServiceAccount - } - return nil -} - -// XXX_OneofWrappers is for the internal use of the proto package. -func (*WhoamiResponse) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*WhoamiResponse_User)(nil), - (*WhoamiResponse_ServiceAccount)(nil), - } -} - // User represents an authenticated (human) principal. type User struct { + state protoimpl.MessageState `protogen:"open.v1"` // Expiry is the expiration date of this user session. Used only as a hint // to the user and not for enforcement. Expiry *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=Expiry,proto3" json:"Expiry,omitempty"` @@ -353,67 +426,72 @@ type User struct { // Email is the email address of the user. Email string `protobuf:"bytes,3,opt,name=Email,proto3" json:"Email,omitempty"` // Picture is a URL linking to this user's profile picture, if available. - Picture string `protobuf:"bytes,4,opt,name=Picture,proto3" json:"Picture,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Picture string `protobuf:"bytes,4,opt,name=Picture,proto3" json:"Picture,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *User) Reset() { *m = User{} } -func (m *User) String() string { return proto.CompactTextString(m) } -func (*User) ProtoMessage() {} -func (*User) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{3} +func (x *User) Reset() { + *x = User{} + mi := &file_service_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *User) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_User.Unmarshal(m, b) -} -func (m *User) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_User.Marshal(b, m, deterministic) +func (x *User) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *User) XXX_Merge(src proto.Message) { - xxx_messageInfo_User.Merge(m, src) -} -func (m *User) XXX_Size() int { - return xxx_messageInfo_User.Size(m) -} -func (m *User) XXX_DiscardUnknown() { - xxx_messageInfo_User.DiscardUnknown(m) + +func (*User) ProtoMessage() {} + +func (x *User) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[3] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_User proto.InternalMessageInfo +// Deprecated: Use User.ProtoReflect.Descriptor instead. +func (*User) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{3} +} -func (m *User) GetExpiry() *timestamppb.Timestamp { - if m != nil { - return m.Expiry +func (x *User) GetExpiry() *timestamppb.Timestamp { + if x != nil { + return x.Expiry } return nil } -func (m *User) GetName() string { - if m != nil { - return m.Name +func (x *User) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *User) GetEmail() string { - if m != nil { - return m.Email +func (x *User) GetEmail() string { + if x != nil { + return x.Email } return "" } -func (m *User) GetPicture() string { - if m != nil { - return m.Picture +func (x *User) GetPicture() string { + if x != nil { + return x.Picture } return "" } // ServiceAccount represents an authenticated service account (robot) principal. type ServiceAccount struct { + state protoimpl.MessageState `protogen:"open.v1"` // Name is a human readable name for the service account. Name string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"` // Description is a human readable description for the service account. @@ -425,130 +503,140 @@ type ServiceAccount struct { // NotBefore is the beginning of service account token valid time period. NotBefore int64 `protobuf:"varint,5,opt,name=NotBefore,proto3" json:"NotBefore,omitempty"` // ExpiresAt is the end of service account token valid time period. - ExpiresAt int64 `protobuf:"varint,6,opt,name=ExpiresAt,proto3" json:"ExpiresAt,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + ExpiresAt int64 `protobuf:"varint,6,opt,name=ExpiresAt,proto3" json:"ExpiresAt,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *ServiceAccount) Reset() { *m = ServiceAccount{} } -func (m *ServiceAccount) String() string { return proto.CompactTextString(m) } -func (*ServiceAccount) ProtoMessage() {} -func (*ServiceAccount) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{4} +func (x *ServiceAccount) Reset() { + *x = ServiceAccount{} + mi := &file_service_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *ServiceAccount) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ServiceAccount.Unmarshal(m, b) +func (x *ServiceAccount) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ServiceAccount) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ServiceAccount.Marshal(b, m, deterministic) -} -func (m *ServiceAccount) XXX_Merge(src proto.Message) { - xxx_messageInfo_ServiceAccount.Merge(m, src) -} -func (m *ServiceAccount) XXX_Size() int { - return xxx_messageInfo_ServiceAccount.Size(m) -} -func (m *ServiceAccount) XXX_DiscardUnknown() { - xxx_messageInfo_ServiceAccount.DiscardUnknown(m) + +func (*ServiceAccount) ProtoMessage() {} + +func (x *ServiceAccount) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[4] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ServiceAccount proto.InternalMessageInfo +// Deprecated: Use ServiceAccount.ProtoReflect.Descriptor instead. +func (*ServiceAccount) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{4} +} -func (m *ServiceAccount) GetName() string { - if m != nil { - return m.Name +func (x *ServiceAccount) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *ServiceAccount) GetDescription() string { - if m != nil { - return m.Description +func (x *ServiceAccount) GetDescription() string { + if x != nil { + return x.Description } return "" } -func (m *ServiceAccount) GetEmail() string { - if m != nil { - return m.Email +func (x *ServiceAccount) GetEmail() string { + if x != nil { + return x.Email } return "" } -func (m *ServiceAccount) GetIssuedAt() int64 { - if m != nil { - return m.IssuedAt +func (x *ServiceAccount) GetIssuedAt() int64 { + if x != nil { + return x.IssuedAt } return 0 } -func (m *ServiceAccount) GetNotBefore() int64 { - if m != nil { - return m.NotBefore +func (x *ServiceAccount) GetNotBefore() int64 { + if x != nil { + return x.NotBefore } return 0 } -func (m *ServiceAccount) GetExpiresAt() int64 { - if m != nil { - return m.ExpiresAt +func (x *ServiceAccount) GetExpiresAt() int64 { + if x != nil { + return x.ExpiresAt } return 0 } type TokenResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` // Account is the service account the token was generated for. Account *ServiceAccount `protobuf:"bytes,1,opt,name=Account,proto3" json:"Account,omitempty"` // Token is the token generated for the service account. - Token string `protobuf:"bytes,2,opt,name=Token,proto3" json:"Token,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Token string `protobuf:"bytes,2,opt,name=Token,proto3" json:"Token,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *TokenResponse) Reset() { *m = TokenResponse{} } -func (m *TokenResponse) String() string { return proto.CompactTextString(m) } -func (*TokenResponse) ProtoMessage() {} -func (*TokenResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{5} +func (x *TokenResponse) Reset() { + *x = TokenResponse{} + mi := &file_service_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *TokenResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_TokenResponse.Unmarshal(m, b) -} -func (m *TokenResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_TokenResponse.Marshal(b, m, deterministic) -} -func (m *TokenResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_TokenResponse.Merge(m, src) -} -func (m *TokenResponse) XXX_Size() int { - return xxx_messageInfo_TokenResponse.Size(m) +func (x *TokenResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *TokenResponse) XXX_DiscardUnknown() { - xxx_messageInfo_TokenResponse.DiscardUnknown(m) + +func (*TokenResponse) ProtoMessage() {} + +func (x *TokenResponse) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[5] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_TokenResponse proto.InternalMessageInfo +// Deprecated: Use TokenResponse.ProtoReflect.Descriptor instead. +func (*TokenResponse) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{5} +} -func (m *TokenResponse) GetAccount() *ServiceAccount { - if m != nil { - return m.Account +func (x *TokenResponse) GetAccount() *ServiceAccount { + if x != nil { + return x.Account } return nil } -func (m *TokenResponse) GetToken() string { - if m != nil { - return m.Token +func (x *TokenResponse) GetToken() string { + if x != nil { + return x.Token } return "" } // Parameter represents a single parameter that is needed to launch a flavor. type Parameter struct { + state protoimpl.MessageState `protogen:"open.v1"` // Name is the unique name of the parameter. Name string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"` // Description is a human readable description for the parameter. @@ -571,154 +659,164 @@ type Parameter struct { Help string `protobuf:"bytes,7,opt,name=Help,proto3" json:"Help,omitempty"` // Indicates that the value for this parameter can be provided from the // contents of a file. - FromFile bool `protobuf:"varint,8,opt,name=FromFile,proto3" json:"FromFile,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + FromFile bool `protobuf:"varint,8,opt,name=FromFile,proto3" json:"FromFile,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *Parameter) Reset() { *m = Parameter{} } -func (m *Parameter) String() string { return proto.CompactTextString(m) } -func (*Parameter) ProtoMessage() {} -func (*Parameter) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{6} +func (x *Parameter) Reset() { + *x = Parameter{} + mi := &file_service_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *Parameter) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Parameter.Unmarshal(m, b) -} -func (m *Parameter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Parameter.Marshal(b, m, deterministic) -} -func (m *Parameter) XXX_Merge(src proto.Message) { - xxx_messageInfo_Parameter.Merge(m, src) +func (x *Parameter) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *Parameter) XXX_Size() int { - return xxx_messageInfo_Parameter.Size(m) -} -func (m *Parameter) XXX_DiscardUnknown() { - xxx_messageInfo_Parameter.DiscardUnknown(m) + +func (*Parameter) ProtoMessage() {} + +func (x *Parameter) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[6] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_Parameter proto.InternalMessageInfo +// Deprecated: Use Parameter.ProtoReflect.Descriptor instead. +func (*Parameter) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{6} +} -func (m *Parameter) GetName() string { - if m != nil { - return m.Name +func (x *Parameter) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *Parameter) GetDescription() string { - if m != nil { - return m.Description +func (x *Parameter) GetDescription() string { + if x != nil { + return x.Description } return "" } -func (m *Parameter) GetValue() string { - if m != nil { - return m.Value +func (x *Parameter) GetValue() string { + if x != nil { + return x.Value } return "" } -func (m *Parameter) GetOptional() bool { - if m != nil { - return m.Optional +func (x *Parameter) GetOptional() bool { + if x != nil { + return x.Optional } return false } -func (m *Parameter) GetInternal() bool { - if m != nil { - return m.Internal +func (x *Parameter) GetInternal() bool { + if x != nil { + return x.Internal } return false } -func (m *Parameter) GetOrder() int32 { - if m != nil { - return m.Order +func (x *Parameter) GetOrder() int32 { + if x != nil { + return x.Order } return 0 } -func (m *Parameter) GetHelp() string { - if m != nil { - return m.Help +func (x *Parameter) GetHelp() string { + if x != nil { + return x.Help } return "" } -func (m *Parameter) GetFromFile() bool { - if m != nil { - return m.FromFile +func (x *Parameter) GetFromFile() bool { + if x != nil { + return x.FromFile } return false } // FlavorArtifact represents a single artifact that is produced by a flavor. type FlavorArtifact struct { + state protoimpl.MessageState `protogen:"open.v1"` // Name is the unique name of the artifact. Name string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"` // Description is a human readable description for the artifact. Description string `protobuf:"bytes,2,opt,name=Description,proto3" json:"Description,omitempty"` // Tags is a set of artifact tags. - Tags map[string]*emptypb.Empty `protobuf:"bytes,3,rep,name=Tags,proto3" json:"Tags,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Tags map[string]*emptypb.Empty `protobuf:"bytes,3,rep,name=Tags,proto3" json:"Tags,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *FlavorArtifact) Reset() { *m = FlavorArtifact{} } -func (m *FlavorArtifact) String() string { return proto.CompactTextString(m) } -func (*FlavorArtifact) ProtoMessage() {} -func (*FlavorArtifact) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{7} +func (x *FlavorArtifact) Reset() { + *x = FlavorArtifact{} + mi := &file_service_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *FlavorArtifact) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_FlavorArtifact.Unmarshal(m, b) -} -func (m *FlavorArtifact) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_FlavorArtifact.Marshal(b, m, deterministic) +func (x *FlavorArtifact) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *FlavorArtifact) XXX_Merge(src proto.Message) { - xxx_messageInfo_FlavorArtifact.Merge(m, src) -} -func (m *FlavorArtifact) XXX_Size() int { - return xxx_messageInfo_FlavorArtifact.Size(m) -} -func (m *FlavorArtifact) XXX_DiscardUnknown() { - xxx_messageInfo_FlavorArtifact.DiscardUnknown(m) + +func (*FlavorArtifact) ProtoMessage() {} + +func (x *FlavorArtifact) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[7] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_FlavorArtifact proto.InternalMessageInfo +// Deprecated: Use FlavorArtifact.ProtoReflect.Descriptor instead. +func (*FlavorArtifact) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{7} +} -func (m *FlavorArtifact) GetName() string { - if m != nil { - return m.Name +func (x *FlavorArtifact) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *FlavorArtifact) GetDescription() string { - if m != nil { - return m.Description +func (x *FlavorArtifact) GetDescription() string { + if x != nil { + return x.Description } return "" } -func (m *FlavorArtifact) GetTags() map[string]*emptypb.Empty { - if m != nil { - return m.Tags +func (x *FlavorArtifact) GetTags() map[string]*emptypb.Empty { + if x != nil { + return x.Tags } return nil } // Flavor represents a configured cluster flavor. type Flavor struct { + state protoimpl.MessageState `protogen:"open.v1"` // ID is the unique, human type-able, ID for the flavor. ID string `protobuf:"bytes,1,opt,name=ID,proto3" json:"ID,omitempty"` // Name is a human readable name for the flavor. @@ -728,184 +826,199 @@ type Flavor struct { // Description is an availability classification for the flavor. Availability FlavorAvailability `protobuf:"varint,4,opt,name=Availability,proto3,enum=v1.FlavorAvailability" json:"Availability,omitempty"` // Parameters is a map of parameters required for launching this flavor. - Parameters map[string]*Parameter `protobuf:"bytes,5,rep,name=Parameters,proto3" json:"Parameters,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Parameters map[string]*Parameter `protobuf:"bytes,5,rep,name=Parameters,proto3" json:"Parameters,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` // Artifacts is a map of artifacts produced by this flavor. - Artifacts map[string]*FlavorArtifact `protobuf:"bytes,6,rep,name=Artifacts,proto3" json:"Artifacts,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Artifacts map[string]*FlavorArtifact `protobuf:"bytes,6,rep,name=Artifacts,proto3" json:"Artifacts,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` // Aliases are alternative IDs of the flavor. - Aliases []string `protobuf:"bytes,7,rep,name=Aliases,proto3" json:"Aliases,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Aliases []string `protobuf:"bytes,7,rep,name=Aliases,proto3" json:"Aliases,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *Flavor) Reset() { *m = Flavor{} } -func (m *Flavor) String() string { return proto.CompactTextString(m) } -func (*Flavor) ProtoMessage() {} -func (*Flavor) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{8} +func (x *Flavor) Reset() { + *x = Flavor{} + mi := &file_service_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *Flavor) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Flavor.Unmarshal(m, b) +func (x *Flavor) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *Flavor) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Flavor.Marshal(b, m, deterministic) -} -func (m *Flavor) XXX_Merge(src proto.Message) { - xxx_messageInfo_Flavor.Merge(m, src) -} -func (m *Flavor) XXX_Size() int { - return xxx_messageInfo_Flavor.Size(m) -} -func (m *Flavor) XXX_DiscardUnknown() { - xxx_messageInfo_Flavor.DiscardUnknown(m) + +func (*Flavor) ProtoMessage() {} + +func (x *Flavor) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[8] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_Flavor proto.InternalMessageInfo +// Deprecated: Use Flavor.ProtoReflect.Descriptor instead. +func (*Flavor) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{8} +} -func (m *Flavor) GetID() string { - if m != nil { - return m.ID +func (x *Flavor) GetID() string { + if x != nil { + return x.ID } return "" } -func (m *Flavor) GetName() string { - if m != nil { - return m.Name +func (x *Flavor) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *Flavor) GetDescription() string { - if m != nil { - return m.Description +func (x *Flavor) GetDescription() string { + if x != nil { + return x.Description } return "" } -func (m *Flavor) GetAvailability() FlavorAvailability { - if m != nil { - return m.Availability +func (x *Flavor) GetAvailability() FlavorAvailability { + if x != nil { + return x.Availability } return Flavor_alpha } -func (m *Flavor) GetParameters() map[string]*Parameter { - if m != nil { - return m.Parameters +func (x *Flavor) GetParameters() map[string]*Parameter { + if x != nil { + return x.Parameters } return nil } -func (m *Flavor) GetArtifacts() map[string]*FlavorArtifact { - if m != nil { - return m.Artifacts +func (x *Flavor) GetArtifacts() map[string]*FlavorArtifact { + if x != nil { + return x.Artifacts } return nil } -func (m *Flavor) GetAliases() []string { - if m != nil { - return m.Aliases +func (x *Flavor) GetAliases() []string { + if x != nil { + return x.Aliases } return nil } // FlavorListRequest represents a request to FlavorService.List. type FlavorListRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` // all indicates that all flavors should be returned, by default // availability alpha clusters are excluded. - All bool `protobuf:"varint,1,opt,name=all,proto3" json:"all,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + All bool `protobuf:"varint,1,opt,name=all,proto3" json:"all,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *FlavorListRequest) Reset() { *m = FlavorListRequest{} } -func (m *FlavorListRequest) String() string { return proto.CompactTextString(m) } -func (*FlavorListRequest) ProtoMessage() {} -func (*FlavorListRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{9} +func (x *FlavorListRequest) Reset() { + *x = FlavorListRequest{} + mi := &file_service_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *FlavorListRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_FlavorListRequest.Unmarshal(m, b) -} -func (m *FlavorListRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_FlavorListRequest.Marshal(b, m, deterministic) -} -func (m *FlavorListRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_FlavorListRequest.Merge(m, src) -} -func (m *FlavorListRequest) XXX_Size() int { - return xxx_messageInfo_FlavorListRequest.Size(m) +func (x *FlavorListRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *FlavorListRequest) XXX_DiscardUnknown() { - xxx_messageInfo_FlavorListRequest.DiscardUnknown(m) + +func (*FlavorListRequest) ProtoMessage() {} + +func (x *FlavorListRequest) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[9] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_FlavorListRequest proto.InternalMessageInfo +// Deprecated: Use FlavorListRequest.ProtoReflect.Descriptor instead. +func (*FlavorListRequest) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{9} +} -func (m *FlavorListRequest) GetAll() bool { - if m != nil { - return m.All +func (x *FlavorListRequest) GetAll() bool { + if x != nil { + return x.All } return false } // FlavorListResponse represents details about the available cluster flavors. type FlavorListResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` // Default is the flavor ID of the default cluster flavor. Default string `protobuf:"bytes,1,opt,name=Default,proto3" json:"Default,omitempty"` // Flavors is a list of all available cluster flavors. - Flavors []*Flavor `protobuf:"bytes,2,rep,name=Flavors,proto3" json:"Flavors,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Flavors []*Flavor `protobuf:"bytes,2,rep,name=Flavors,proto3" json:"Flavors,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *FlavorListResponse) Reset() { *m = FlavorListResponse{} } -func (m *FlavorListResponse) String() string { return proto.CompactTextString(m) } -func (*FlavorListResponse) ProtoMessage() {} -func (*FlavorListResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{10} +func (x *FlavorListResponse) Reset() { + *x = FlavorListResponse{} + mi := &file_service_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *FlavorListResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_FlavorListResponse.Unmarshal(m, b) -} -func (m *FlavorListResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_FlavorListResponse.Marshal(b, m, deterministic) -} -func (m *FlavorListResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_FlavorListResponse.Merge(m, src) +func (x *FlavorListResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *FlavorListResponse) XXX_Size() int { - return xxx_messageInfo_FlavorListResponse.Size(m) -} -func (m *FlavorListResponse) XXX_DiscardUnknown() { - xxx_messageInfo_FlavorListResponse.DiscardUnknown(m) + +func (*FlavorListResponse) ProtoMessage() {} + +func (x *FlavorListResponse) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[10] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_FlavorListResponse proto.InternalMessageInfo +// Deprecated: Use FlavorListResponse.ProtoReflect.Descriptor instead. +func (*FlavorListResponse) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{10} +} -func (m *FlavorListResponse) GetDefault() string { - if m != nil { - return m.Default +func (x *FlavorListResponse) GetDefault() string { + if x != nil { + return x.Default } return "" } -func (m *FlavorListResponse) GetFlavors() []*Flavor { - if m != nil { - return m.Flavors +func (x *FlavorListResponse) GetFlavors() []*Flavor { + if x != nil { + return x.Flavors } return nil } // Cluster represents a single cluster. type Cluster struct { + state protoimpl.MessageState `protogen:"open.v1"` // ID is the unique ID for the cluster. ID string `protobuf:"bytes,1,opt,name=ID,proto3" json:"ID,omitempty"` // Status is the current status for the cluster. @@ -928,116 +1041,121 @@ type Cluster struct { // Connect is a command to add kube connection information to kubeconfig. Connect string `protobuf:"bytes,10,opt,name=Connect,proto3" json:"Connect,omitempty"` // Parameters is a list of options to configure the cluster creation. - Parameters []*Parameter `protobuf:"bytes,11,rep,name=Parameters,proto3" json:"Parameters,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Parameters []*Parameter `protobuf:"bytes,11,rep,name=Parameters,proto3" json:"Parameters,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *Cluster) Reset() { *m = Cluster{} } -func (m *Cluster) String() string { return proto.CompactTextString(m) } -func (*Cluster) ProtoMessage() {} -func (*Cluster) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{11} +func (x *Cluster) Reset() { + *x = Cluster{} + mi := &file_service_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *Cluster) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Cluster.Unmarshal(m, b) -} -func (m *Cluster) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Cluster.Marshal(b, m, deterministic) +func (x *Cluster) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *Cluster) XXX_Merge(src proto.Message) { - xxx_messageInfo_Cluster.Merge(m, src) -} -func (m *Cluster) XXX_Size() int { - return xxx_messageInfo_Cluster.Size(m) -} -func (m *Cluster) XXX_DiscardUnknown() { - xxx_messageInfo_Cluster.DiscardUnknown(m) + +func (*Cluster) ProtoMessage() {} + +func (x *Cluster) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[11] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_Cluster proto.InternalMessageInfo +// Deprecated: Use Cluster.ProtoReflect.Descriptor instead. +func (*Cluster) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{11} +} -func (m *Cluster) GetID() string { - if m != nil { - return m.ID +func (x *Cluster) GetID() string { + if x != nil { + return x.ID } return "" } -func (m *Cluster) GetStatus() Status { - if m != nil { - return m.Status +func (x *Cluster) GetStatus() Status { + if x != nil { + return x.Status } return Status_FAILED } -func (m *Cluster) GetFlavor() string { - if m != nil { - return m.Flavor +func (x *Cluster) GetFlavor() string { + if x != nil { + return x.Flavor } return "" } -func (m *Cluster) GetOwner() string { - if m != nil { - return m.Owner +func (x *Cluster) GetOwner() string { + if x != nil { + return x.Owner } return "" } -func (m *Cluster) GetCreatedOn() *timestamppb.Timestamp { - if m != nil { - return m.CreatedOn +func (x *Cluster) GetCreatedOn() *timestamppb.Timestamp { + if x != nil { + return x.CreatedOn } return nil } -func (m *Cluster) GetDestroyedOn() *timestamppb.Timestamp { - if m != nil { - return m.DestroyedOn +func (x *Cluster) GetDestroyedOn() *timestamppb.Timestamp { + if x != nil { + return x.DestroyedOn } return nil } -func (m *Cluster) GetLifespan() *durationpb.Duration { - if m != nil { - return m.Lifespan +func (x *Cluster) GetLifespan() *durationpb.Duration { + if x != nil { + return x.Lifespan } return nil } -func (m *Cluster) GetDescription() string { - if m != nil { - return m.Description +func (x *Cluster) GetDescription() string { + if x != nil { + return x.Description } return "" } -func (m *Cluster) GetURL() string { - if m != nil { - return m.URL +func (x *Cluster) GetURL() string { + if x != nil { + return x.URL } return "" } -func (m *Cluster) GetConnect() string { - if m != nil { - return m.Connect +func (x *Cluster) GetConnect() string { + if x != nil { + return x.Connect } return "" } -func (m *Cluster) GetParameters() []*Parameter { - if m != nil { - return m.Parameters +func (x *Cluster) GetParameters() []*Parameter { + if x != nil { + return x.Parameters } return nil } // ClusterListRequest represents a request to ClusterService.List. type ClusterListRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` // all indicates that all clusters should be returned, not just the ones // owned by the user. All bool `protobuf:"varint,1,opt,name=all,proto3" json:"all,omitempty"` @@ -1045,164 +1163,179 @@ type ClusterListRequest struct { // ones that are launching/ready. Expired bool `protobuf:"varint,2,opt,name=expired,proto3" json:"expired,omitempty"` // list clusters whose ID matches this prefix. - Prefix string `protobuf:"bytes,3,opt,name=prefix,proto3" json:"prefix,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Prefix string `protobuf:"bytes,3,opt,name=prefix,proto3" json:"prefix,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *ClusterListRequest) Reset() { *m = ClusterListRequest{} } -func (m *ClusterListRequest) String() string { return proto.CompactTextString(m) } -func (*ClusterListRequest) ProtoMessage() {} -func (*ClusterListRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{12} +func (x *ClusterListRequest) Reset() { + *x = ClusterListRequest{} + mi := &file_service_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *ClusterListRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ClusterListRequest.Unmarshal(m, b) +func (x *ClusterListRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ClusterListRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ClusterListRequest.Marshal(b, m, deterministic) -} -func (m *ClusterListRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ClusterListRequest.Merge(m, src) -} -func (m *ClusterListRequest) XXX_Size() int { - return xxx_messageInfo_ClusterListRequest.Size(m) -} -func (m *ClusterListRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ClusterListRequest.DiscardUnknown(m) + +func (*ClusterListRequest) ProtoMessage() {} + +func (x *ClusterListRequest) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[12] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ClusterListRequest proto.InternalMessageInfo +// Deprecated: Use ClusterListRequest.ProtoReflect.Descriptor instead. +func (*ClusterListRequest) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{12} +} -func (m *ClusterListRequest) GetAll() bool { - if m != nil { - return m.All +func (x *ClusterListRequest) GetAll() bool { + if x != nil { + return x.All } return false } -func (m *ClusterListRequest) GetExpired() bool { - if m != nil { - return m.Expired +func (x *ClusterListRequest) GetExpired() bool { + if x != nil { + return x.Expired } return false } -func (m *ClusterListRequest) GetPrefix() string { - if m != nil { - return m.Prefix +func (x *ClusterListRequest) GetPrefix() string { + if x != nil { + return x.Prefix } return "" } // ClusterListResponse represents details about all clusters. type ClusterListResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` // Clusters is a list of all clusters. - Clusters []*Cluster `protobuf:"bytes,1,rep,name=Clusters,proto3" json:"Clusters,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Clusters []*Cluster `protobuf:"bytes,1,rep,name=Clusters,proto3" json:"Clusters,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *ClusterListResponse) Reset() { *m = ClusterListResponse{} } -func (m *ClusterListResponse) String() string { return proto.CompactTextString(m) } -func (*ClusterListResponse) ProtoMessage() {} -func (*ClusterListResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{13} +func (x *ClusterListResponse) Reset() { + *x = ClusterListResponse{} + mi := &file_service_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *ClusterListResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ClusterListResponse.Unmarshal(m, b) -} -func (m *ClusterListResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ClusterListResponse.Marshal(b, m, deterministic) -} -func (m *ClusterListResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_ClusterListResponse.Merge(m, src) -} -func (m *ClusterListResponse) XXX_Size() int { - return xxx_messageInfo_ClusterListResponse.Size(m) +func (x *ClusterListResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ClusterListResponse) XXX_DiscardUnknown() { - xxx_messageInfo_ClusterListResponse.DiscardUnknown(m) + +func (*ClusterListResponse) ProtoMessage() {} + +func (x *ClusterListResponse) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[13] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ClusterListResponse proto.InternalMessageInfo +// Deprecated: Use ClusterListResponse.ProtoReflect.Descriptor instead. +func (*ClusterListResponse) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{13} +} -func (m *ClusterListResponse) GetClusters() []*Cluster { - if m != nil { - return m.Clusters +func (x *ClusterListResponse) GetClusters() []*Cluster { + if x != nil { + return x.Clusters } return nil } type LifespanRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` // ID is the unique ID for the cluster. Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // Lifespan is the new lifespan. - Lifespan *durationpb.Duration `protobuf:"bytes,2,opt,name=Lifespan,proto3" json:"Lifespan,omitempty"` - Method LifespanRequest_Method `protobuf:"varint,3,opt,name=method,proto3,enum=v1.LifespanRequest_Method" json:"method,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Lifespan *durationpb.Duration `protobuf:"bytes,2,opt,name=Lifespan,proto3" json:"Lifespan,omitempty"` + Method LifespanRequest_Method `protobuf:"varint,3,opt,name=method,proto3,enum=v1.LifespanRequest_Method" json:"method,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *LifespanRequest) Reset() { *m = LifespanRequest{} } -func (m *LifespanRequest) String() string { return proto.CompactTextString(m) } -func (*LifespanRequest) ProtoMessage() {} -func (*LifespanRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{14} +func (x *LifespanRequest) Reset() { + *x = LifespanRequest{} + mi := &file_service_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *LifespanRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_LifespanRequest.Unmarshal(m, b) -} -func (m *LifespanRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_LifespanRequest.Marshal(b, m, deterministic) -} -func (m *LifespanRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_LifespanRequest.Merge(m, src) +func (x *LifespanRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *LifespanRequest) XXX_Size() int { - return xxx_messageInfo_LifespanRequest.Size(m) -} -func (m *LifespanRequest) XXX_DiscardUnknown() { - xxx_messageInfo_LifespanRequest.DiscardUnknown(m) + +func (*LifespanRequest) ProtoMessage() {} + +func (x *LifespanRequest) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[14] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_LifespanRequest proto.InternalMessageInfo +// Deprecated: Use LifespanRequest.ProtoReflect.Descriptor instead. +func (*LifespanRequest) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{14} +} -func (m *LifespanRequest) GetId() string { - if m != nil { - return m.Id +func (x *LifespanRequest) GetId() string { + if x != nil { + return x.Id } return "" } -func (m *LifespanRequest) GetLifespan() *durationpb.Duration { - if m != nil { - return m.Lifespan +func (x *LifespanRequest) GetLifespan() *durationpb.Duration { + if x != nil { + return x.Lifespan } return nil } -func (m *LifespanRequest) GetMethod() LifespanRequest_Method { - if m != nil { - return m.Method +func (x *LifespanRequest) GetMethod() LifespanRequest_Method { + if x != nil { + return x.Method } return LifespanRequest_REPLACE } // CreateClusterRequest represents details for launching a new cluster. type CreateClusterRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` // ID is the flavor ID to launch. ID string `protobuf:"bytes,1,opt,name=ID,proto3" json:"ID,omitempty"` // Lifespan is the initial cluster lifespan. Lifespan *durationpb.Duration `protobuf:"bytes,2,opt,name=Lifespan,proto3" json:"Lifespan,omitempty"` // Parameters is a map of launch parameter names to values. - Parameters map[string]string `protobuf:"bytes,3,rep,name=Parameters,proto3" json:"Parameters,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Parameters map[string]string `protobuf:"bytes,3,rep,name=Parameters,proto3" json:"Parameters,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` // Description is a human readable description for the cluster. Description string `protobuf:"bytes,4,opt,name=Description,proto3" json:"Description,omitempty"` // NoSlack is used to skip sending Slack messages for cluster lifecycle @@ -1210,183 +1343,198 @@ type CreateClusterRequest struct { NoSlack bool `protobuf:"varint,5,opt,name=NoSlack,proto3" json:"NoSlack,omitempty"` // SlackDM is used to choose direct messages for cluster lifecycle // events. - SlackDM bool `protobuf:"varint,6,opt,name=SlackDM,proto3" json:"SlackDM,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + SlackDM bool `protobuf:"varint,6,opt,name=SlackDM,proto3" json:"SlackDM,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *CreateClusterRequest) Reset() { *m = CreateClusterRequest{} } -func (m *CreateClusterRequest) String() string { return proto.CompactTextString(m) } -func (*CreateClusterRequest) ProtoMessage() {} -func (*CreateClusterRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{15} +func (x *CreateClusterRequest) Reset() { + *x = CreateClusterRequest{} + mi := &file_service_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *CreateClusterRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_CreateClusterRequest.Unmarshal(m, b) -} -func (m *CreateClusterRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_CreateClusterRequest.Marshal(b, m, deterministic) +func (x *CreateClusterRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *CreateClusterRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_CreateClusterRequest.Merge(m, src) -} -func (m *CreateClusterRequest) XXX_Size() int { - return xxx_messageInfo_CreateClusterRequest.Size(m) -} -func (m *CreateClusterRequest) XXX_DiscardUnknown() { - xxx_messageInfo_CreateClusterRequest.DiscardUnknown(m) + +func (*CreateClusterRequest) ProtoMessage() {} + +func (x *CreateClusterRequest) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[15] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_CreateClusterRequest proto.InternalMessageInfo +// Deprecated: Use CreateClusterRequest.ProtoReflect.Descriptor instead. +func (*CreateClusterRequest) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{15} +} -func (m *CreateClusterRequest) GetID() string { - if m != nil { - return m.ID +func (x *CreateClusterRequest) GetID() string { + if x != nil { + return x.ID } return "" } -func (m *CreateClusterRequest) GetLifespan() *durationpb.Duration { - if m != nil { - return m.Lifespan +func (x *CreateClusterRequest) GetLifespan() *durationpb.Duration { + if x != nil { + return x.Lifespan } return nil } -func (m *CreateClusterRequest) GetParameters() map[string]string { - if m != nil { - return m.Parameters +func (x *CreateClusterRequest) GetParameters() map[string]string { + if x != nil { + return x.Parameters } return nil } -func (m *CreateClusterRequest) GetDescription() string { - if m != nil { - return m.Description +func (x *CreateClusterRequest) GetDescription() string { + if x != nil { + return x.Description } return "" } -func (m *CreateClusterRequest) GetNoSlack() bool { - if m != nil { - return m.NoSlack +func (x *CreateClusterRequest) GetNoSlack() bool { + if x != nil { + return x.NoSlack } return false } -func (m *CreateClusterRequest) GetSlackDM() bool { - if m != nil { - return m.SlackDM +func (x *CreateClusterRequest) GetSlackDM() bool { + if x != nil { + return x.SlackDM } return false } type Artifact struct { - Name string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"` - Description string `protobuf:"bytes,2,opt,name=Description,proto3" json:"Description,omitempty"` - URL string `protobuf:"bytes,3,opt,name=URL,proto3" json:"URL,omitempty"` - Mode int32 `protobuf:"varint,4,opt,name=Mode,proto3" json:"Mode,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *Artifact) Reset() { *m = Artifact{} } -func (m *Artifact) String() string { return proto.CompactTextString(m) } -func (*Artifact) ProtoMessage() {} -func (*Artifact) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{16} + state protoimpl.MessageState `protogen:"open.v1"` + Name string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"` + Description string `protobuf:"bytes,2,opt,name=Description,proto3" json:"Description,omitempty"` + URL string `protobuf:"bytes,3,opt,name=URL,proto3" json:"URL,omitempty"` + Mode int32 `protobuf:"varint,4,opt,name=Mode,proto3" json:"Mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *Artifact) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Artifact.Unmarshal(m, b) +func (x *Artifact) Reset() { + *x = Artifact{} + mi := &file_service_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *Artifact) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Artifact.Marshal(b, m, deterministic) -} -func (m *Artifact) XXX_Merge(src proto.Message) { - xxx_messageInfo_Artifact.Merge(m, src) -} -func (m *Artifact) XXX_Size() int { - return xxx_messageInfo_Artifact.Size(m) + +func (x *Artifact) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *Artifact) XXX_DiscardUnknown() { - xxx_messageInfo_Artifact.DiscardUnknown(m) + +func (*Artifact) ProtoMessage() {} + +func (x *Artifact) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[16] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_Artifact proto.InternalMessageInfo +// Deprecated: Use Artifact.ProtoReflect.Descriptor instead. +func (*Artifact) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{16} +} -func (m *Artifact) GetName() string { - if m != nil { - return m.Name +func (x *Artifact) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *Artifact) GetDescription() string { - if m != nil { - return m.Description +func (x *Artifact) GetDescription() string { + if x != nil { + return x.Description } return "" } -func (m *Artifact) GetURL() string { - if m != nil { - return m.URL +func (x *Artifact) GetURL() string { + if x != nil { + return x.URL } return "" } -func (m *Artifact) GetMode() int32 { - if m != nil { - return m.Mode +func (x *Artifact) GetMode() int32 { + if x != nil { + return x.Mode } return 0 } type ClusterArtifacts struct { - Artifacts []*Artifact `protobuf:"bytes,1,rep,name=Artifacts,proto3" json:"Artifacts,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + state protoimpl.MessageState `protogen:"open.v1"` + Artifacts []*Artifact `protobuf:"bytes,1,rep,name=Artifacts,proto3" json:"Artifacts,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *ClusterArtifacts) Reset() { *m = ClusterArtifacts{} } -func (m *ClusterArtifacts) String() string { return proto.CompactTextString(m) } -func (*ClusterArtifacts) ProtoMessage() {} -func (*ClusterArtifacts) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{17} +func (x *ClusterArtifacts) Reset() { + *x = ClusterArtifacts{} + mi := &file_service_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *ClusterArtifacts) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ClusterArtifacts.Unmarshal(m, b) -} -func (m *ClusterArtifacts) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ClusterArtifacts.Marshal(b, m, deterministic) -} -func (m *ClusterArtifacts) XXX_Merge(src proto.Message) { - xxx_messageInfo_ClusterArtifacts.Merge(m, src) -} -func (m *ClusterArtifacts) XXX_Size() int { - return xxx_messageInfo_ClusterArtifacts.Size(m) +func (x *ClusterArtifacts) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ClusterArtifacts) XXX_DiscardUnknown() { - xxx_messageInfo_ClusterArtifacts.DiscardUnknown(m) + +func (*ClusterArtifacts) ProtoMessage() {} + +func (x *ClusterArtifacts) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[17] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ClusterArtifacts proto.InternalMessageInfo +// Deprecated: Use ClusterArtifacts.ProtoReflect.Descriptor instead. +func (*ClusterArtifacts) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{17} +} -func (m *ClusterArtifacts) GetArtifacts() []*Artifact { - if m != nil { - return m.Artifacts +func (x *ClusterArtifacts) GetArtifacts() []*Artifact { + if x != nil { + return x.Artifacts } return nil } // Log represents the logs from a specific pod. type Log struct { + state protoimpl.MessageState `protogen:"open.v1"` // Name is the name given to this pod in the workflow. Name string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"` // Started is the time at which this pod was started. Used for ordering @@ -1395,1290 +1543,732 @@ type Log struct { // Body is the raw pod logs. Body []byte `protobuf:"bytes,3,opt,name=Body,proto3" json:"Body,omitempty"` // Message surfaces step state from Argo. - Message string `protobuf:"bytes,4,opt,name=Message,proto3" json:"Message,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Message string `protobuf:"bytes,4,opt,name=Message,proto3" json:"Message,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *Log) Reset() { *m = Log{} } -func (m *Log) String() string { return proto.CompactTextString(m) } -func (*Log) ProtoMessage() {} -func (*Log) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{18} +func (x *Log) Reset() { + *x = Log{} + mi := &file_service_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *Log) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Log.Unmarshal(m, b) -} -func (m *Log) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Log.Marshal(b, m, deterministic) -} -func (m *Log) XXX_Merge(src proto.Message) { - xxx_messageInfo_Log.Merge(m, src) +func (x *Log) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *Log) XXX_Size() int { - return xxx_messageInfo_Log.Size(m) -} -func (m *Log) XXX_DiscardUnknown() { - xxx_messageInfo_Log.DiscardUnknown(m) + +func (*Log) ProtoMessage() {} + +func (x *Log) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[18] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_Log proto.InternalMessageInfo +// Deprecated: Use Log.ProtoReflect.Descriptor instead. +func (*Log) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{18} +} -func (m *Log) GetName() string { - if m != nil { - return m.Name +func (x *Log) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *Log) GetStarted() *timestamppb.Timestamp { - if m != nil { - return m.Started +func (x *Log) GetStarted() *timestamppb.Timestamp { + if x != nil { + return x.Started } return nil } -func (m *Log) GetBody() []byte { - if m != nil { - return m.Body +func (x *Log) GetBody() []byte { + if x != nil { + return x.Body } return nil } -func (m *Log) GetMessage() string { - if m != nil { - return m.Message +func (x *Log) GetMessage() string { + if x != nil { + return x.Message } return "" } // LogsResponse represents a collection of logs. type LogsResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` // Logs are all of the logs from a cluster. - Logs []*Log `protobuf:"bytes,1,rep,name=Logs,proto3" json:"Logs,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Logs []*Log `protobuf:"bytes,1,rep,name=Logs,proto3" json:"Logs,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *LogsResponse) Reset() { *m = LogsResponse{} } -func (m *LogsResponse) String() string { return proto.CompactTextString(m) } -func (*LogsResponse) ProtoMessage() {} -func (*LogsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{19} +func (x *LogsResponse) Reset() { + *x = LogsResponse{} + mi := &file_service_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *LogsResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_LogsResponse.Unmarshal(m, b) -} -func (m *LogsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_LogsResponse.Marshal(b, m, deterministic) +func (x *LogsResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *LogsResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_LogsResponse.Merge(m, src) -} -func (m *LogsResponse) XXX_Size() int { - return xxx_messageInfo_LogsResponse.Size(m) -} -func (m *LogsResponse) XXX_DiscardUnknown() { - xxx_messageInfo_LogsResponse.DiscardUnknown(m) + +func (*LogsResponse) ProtoMessage() {} + +func (x *LogsResponse) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[19] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_LogsResponse proto.InternalMessageInfo +// Deprecated: Use LogsResponse.ProtoReflect.Descriptor instead. +func (*LogsResponse) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{19} +} -func (m *LogsResponse) GetLogs() []*Log { - if m != nil { - return m.Logs +func (x *LogsResponse) GetLogs() []*Log { + if x != nil { + return x.Logs } return nil } type CliUpgradeRequest struct { - Os string `protobuf:"bytes,1,opt,name=os,proto3" json:"os,omitempty"` - Arch string `protobuf:"bytes,2,opt,name=arch,proto3" json:"arch,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + state protoimpl.MessageState `protogen:"open.v1"` + Os string `protobuf:"bytes,1,opt,name=os,proto3" json:"os,omitempty"` + Arch string `protobuf:"bytes,2,opt,name=arch,proto3" json:"arch,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *CliUpgradeRequest) Reset() { *m = CliUpgradeRequest{} } -func (m *CliUpgradeRequest) String() string { return proto.CompactTextString(m) } -func (*CliUpgradeRequest) ProtoMessage() {} -func (*CliUpgradeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{20} +func (x *CliUpgradeRequest) Reset() { + *x = CliUpgradeRequest{} + mi := &file_service_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *CliUpgradeRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_CliUpgradeRequest.Unmarshal(m, b) +func (x *CliUpgradeRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *CliUpgradeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_CliUpgradeRequest.Marshal(b, m, deterministic) -} -func (m *CliUpgradeRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_CliUpgradeRequest.Merge(m, src) -} -func (m *CliUpgradeRequest) XXX_Size() int { - return xxx_messageInfo_CliUpgradeRequest.Size(m) -} -func (m *CliUpgradeRequest) XXX_DiscardUnknown() { - xxx_messageInfo_CliUpgradeRequest.DiscardUnknown(m) + +func (*CliUpgradeRequest) ProtoMessage() {} + +func (x *CliUpgradeRequest) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[20] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_CliUpgradeRequest proto.InternalMessageInfo +// Deprecated: Use CliUpgradeRequest.ProtoReflect.Descriptor instead. +func (*CliUpgradeRequest) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{20} +} -func (m *CliUpgradeRequest) GetOs() string { - if m != nil { - return m.Os +func (x *CliUpgradeRequest) GetOs() string { + if x != nil { + return x.Os } return "" } -func (m *CliUpgradeRequest) GetArch() string { - if m != nil { - return m.Arch +func (x *CliUpgradeRequest) GetArch() string { + if x != nil { + return x.Arch } return "" } type CliUpgradeResponse struct { - FileChunk []byte `protobuf:"bytes,1,opt,name=fileChunk,proto3" json:"fileChunk,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + state protoimpl.MessageState `protogen:"open.v1"` + FileChunk []byte `protobuf:"bytes,1,opt,name=fileChunk,proto3" json:"fileChunk,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *CliUpgradeResponse) Reset() { *m = CliUpgradeResponse{} } -func (m *CliUpgradeResponse) String() string { return proto.CompactTextString(m) } -func (*CliUpgradeResponse) ProtoMessage() {} -func (*CliUpgradeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{21} +func (x *CliUpgradeResponse) Reset() { + *x = CliUpgradeResponse{} + mi := &file_service_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *CliUpgradeResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_CliUpgradeResponse.Unmarshal(m, b) -} -func (m *CliUpgradeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_CliUpgradeResponse.Marshal(b, m, deterministic) -} -func (m *CliUpgradeResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_CliUpgradeResponse.Merge(m, src) -} -func (m *CliUpgradeResponse) XXX_Size() int { - return xxx_messageInfo_CliUpgradeResponse.Size(m) +func (x *CliUpgradeResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *CliUpgradeResponse) XXX_DiscardUnknown() { - xxx_messageInfo_CliUpgradeResponse.DiscardUnknown(m) + +func (*CliUpgradeResponse) ProtoMessage() {} + +func (x *CliUpgradeResponse) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[21] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_CliUpgradeResponse proto.InternalMessageInfo +// Deprecated: Use CliUpgradeResponse.ProtoReflect.Descriptor instead. +func (*CliUpgradeResponse) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{21} +} -func (m *CliUpgradeResponse) GetFileChunk() []byte { - if m != nil { - return m.FileChunk +func (x *CliUpgradeResponse) GetFileChunk() []byte { + if x != nil { + return x.FileChunk } return nil } type InfraStatus struct { + state protoimpl.MessageState `protogen:"open.v1"` // MaintenanceActive is an indicator whether a maintenance is ongoing. MaintenanceActive bool `protobuf:"varint,1,opt,name=MaintenanceActive,proto3" json:"MaintenanceActive,omitempty"` // Maintainer is the email of the person currently doing maintenance. - Maintainer string `protobuf:"bytes,2,opt,name=Maintainer,proto3" json:"Maintainer,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Maintainer string `protobuf:"bytes,2,opt,name=Maintainer,proto3" json:"Maintainer,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *InfraStatus) Reset() { *m = InfraStatus{} } -func (m *InfraStatus) String() string { return proto.CompactTextString(m) } -func (*InfraStatus) ProtoMessage() {} -func (*InfraStatus) Descriptor() ([]byte, []int) { - return fileDescriptor_a0b84a42fa06f626, []int{22} +func (x *InfraStatus) Reset() { + *x = InfraStatus{} + mi := &file_service_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *InfraStatus) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_InfraStatus.Unmarshal(m, b) -} -func (m *InfraStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_InfraStatus.Marshal(b, m, deterministic) -} -func (m *InfraStatus) XXX_Merge(src proto.Message) { - xxx_messageInfo_InfraStatus.Merge(m, src) -} -func (m *InfraStatus) XXX_Size() int { - return xxx_messageInfo_InfraStatus.Size(m) -} -func (m *InfraStatus) XXX_DiscardUnknown() { - xxx_messageInfo_InfraStatus.DiscardUnknown(m) -} - -var xxx_messageInfo_InfraStatus proto.InternalMessageInfo - -func (m *InfraStatus) GetMaintenanceActive() bool { - if m != nil { - return m.MaintenanceActive - } - return false -} - -func (m *InfraStatus) GetMaintainer() string { - if m != nil { - return m.Maintainer - } - return "" -} - -func init() { - proto.RegisterEnum("v1.Status", Status_name, Status_value) - proto.RegisterEnum("v1.FlavorAvailability", FlavorAvailability_name, FlavorAvailability_value) - proto.RegisterEnum("v1.LifespanRequest_Method", LifespanRequest_Method_name, LifespanRequest_Method_value) - proto.RegisterType((*ResourceByID)(nil), "v1.ResourceByID") - proto.RegisterType((*Version)(nil), "v1.Version") - proto.RegisterType((*WhoamiResponse)(nil), "v1.WhoamiResponse") - proto.RegisterType((*User)(nil), "v1.User") - proto.RegisterType((*ServiceAccount)(nil), "v1.ServiceAccount") - proto.RegisterType((*TokenResponse)(nil), "v1.TokenResponse") - proto.RegisterType((*Parameter)(nil), "v1.Parameter") - proto.RegisterType((*FlavorArtifact)(nil), "v1.FlavorArtifact") - proto.RegisterMapType((map[string]*emptypb.Empty)(nil), "v1.FlavorArtifact.TagsEntry") - proto.RegisterType((*Flavor)(nil), "v1.Flavor") - proto.RegisterMapType((map[string]*FlavorArtifact)(nil), "v1.Flavor.ArtifactsEntry") - proto.RegisterMapType((map[string]*Parameter)(nil), "v1.Flavor.ParametersEntry") - proto.RegisterType((*FlavorListRequest)(nil), "v1.FlavorListRequest") - proto.RegisterType((*FlavorListResponse)(nil), "v1.FlavorListResponse") - proto.RegisterType((*Cluster)(nil), "v1.Cluster") - proto.RegisterType((*ClusterListRequest)(nil), "v1.ClusterListRequest") - proto.RegisterType((*ClusterListResponse)(nil), "v1.ClusterListResponse") - proto.RegisterType((*LifespanRequest)(nil), "v1.LifespanRequest") - proto.RegisterType((*CreateClusterRequest)(nil), "v1.CreateClusterRequest") - proto.RegisterMapType((map[string]string)(nil), "v1.CreateClusterRequest.ParametersEntry") - proto.RegisterType((*Artifact)(nil), "v1.Artifact") - proto.RegisterType((*ClusterArtifacts)(nil), "v1.ClusterArtifacts") - proto.RegisterType((*Log)(nil), "v1.Log") - proto.RegisterType((*LogsResponse)(nil), "v1.LogsResponse") - proto.RegisterType((*CliUpgradeRequest)(nil), "v1.CliUpgradeRequest") - proto.RegisterType((*CliUpgradeResponse)(nil), "v1.CliUpgradeResponse") - proto.RegisterType((*InfraStatus)(nil), "v1.InfraStatus") -} - -func init() { proto.RegisterFile("service.proto", fileDescriptor_a0b84a42fa06f626) } - -var fileDescriptor_a0b84a42fa06f626 = []byte{ - // 1901 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x57, 0xcb, 0x73, 0x1b, 0x49, - 0x19, 0xf7, 0x48, 0xb2, 0x1e, 0x9f, 0x6c, 0x65, 0xdc, 0x71, 0x9c, 0xd9, 0x89, 0xd7, 0xa4, 0x7a, - 0x97, 0x22, 0x65, 0xb2, 0xd6, 0x46, 0x40, 0xed, 0x56, 0xc8, 0x2e, 0x25, 0x4b, 0x72, 0x2c, 0x90, - 0x1f, 0xb4, 0xec, 0xcd, 0x2e, 0x1c, 0xa0, 0x2d, 0xb5, 0xe4, 0x29, 0x8f, 0x66, 0xc4, 0x4c, 0x4b, - 0x59, 0x57, 0x2a, 0x1c, 0xf8, 0x17, 0x38, 0x50, 0xfc, 0x1f, 0x9c, 0x28, 0x2e, 0x1c, 0x39, 0x52, - 0x14, 0xff, 0x01, 0x57, 0x6e, 0x1c, 0x38, 0x52, 0xfd, 0x98, 0x87, 0x5e, 0x49, 0x2a, 0xdc, 0xe6, - 0x7b, 0xf4, 0xef, 0xfb, 0xfa, 0x7b, 0xf6, 0xc0, 0x66, 0xc8, 0x82, 0xa9, 0xd3, 0x63, 0x07, 0xe3, - 0xc0, 0xe7, 0x3e, 0xca, 0x4c, 0x9f, 0xd8, 0xbb, 0x43, 0xdf, 0x1f, 0xba, 0xac, 0x4a, 0xc7, 0x4e, - 0x95, 0x7a, 0x9e, 0xcf, 0x29, 0x77, 0x7c, 0x2f, 0x54, 0x1a, 0xf6, 0x9e, 0x96, 0x4a, 0xea, 0x6a, - 0x32, 0xa8, 0xf6, 0x27, 0x81, 0x54, 0xd0, 0xf2, 0x07, 0xf3, 0x72, 0x36, 0x1a, 0xf3, 0x5b, 0x2d, - 0xfc, 0xce, 0xbc, 0x90, 0x3b, 0x23, 0x16, 0x72, 0x3a, 0x1a, 0x2b, 0x05, 0xbc, 0x07, 0x1b, 0x84, - 0x85, 0xfe, 0x24, 0xe8, 0xb1, 0xc3, 0xdb, 0x76, 0x13, 0x55, 0x20, 0xe3, 0xf4, 0x2d, 0xe3, 0xa1, - 0xf1, 0xa8, 0x44, 0x32, 0x4e, 0x1f, 0xff, 0xdd, 0x80, 0xc2, 0x57, 0x2c, 0x08, 0x1d, 0xdf, 0x43, - 0x9f, 0x43, 0xe9, 0x70, 0xe2, 0xb8, 0xfd, 0x26, 0xe5, 0x4c, 0xaa, 0x94, 0x6b, 0xf6, 0x81, 0x32, - 0x70, 0x10, 0x19, 0x38, 0xb8, 0x88, 0x0c, 0x90, 0x44, 0x19, 0xed, 0x42, 0xe9, 0xb9, 0xc3, 0x1b, - 0xfe, 0x68, 0xe4, 0x70, 0x2b, 0x23, 0xc1, 0x13, 0x86, 0x94, 0xfa, 0xda, 0x88, 0x95, 0xd5, 0xd2, - 0x88, 0x81, 0x6c, 0x28, 0x9e, 0xbb, 0x94, 0x0f, 0xfc, 0x60, 0x64, 0xe5, 0xa4, 0x30, 0xa6, 0x91, - 0x15, 0x3b, 0x67, 0xad, 0x4b, 0x51, 0x21, 0x75, 0xea, 0x85, 0x1f, 0xdc, 0x0c, 0x5c, 0xff, 0xa5, - 0x95, 0x57, 0xa7, 0x22, 0x1a, 0xbf, 0x82, 0xca, 0x8b, 0x6b, 0x9f, 0x8e, 0x1c, 0xc2, 0xc2, 0xb1, - 0xef, 0x85, 0x0c, 0xed, 0x41, 0xee, 0x32, 0x64, 0x81, 0xbe, 0x54, 0xf1, 0x60, 0xfa, 0xe4, 0x40, - 0xd0, 0xc7, 0x6b, 0x44, 0xf2, 0xd1, 0x33, 0xa8, 0x74, 0x55, 0xda, 0xea, 0xbd, 0x9e, 0x3f, 0xf1, - 0xd4, 0x25, 0xca, 0x35, 0x24, 0x34, 0x67, 0x25, 0xc7, 0x6b, 0x64, 0x4e, 0xf7, 0xb0, 0x0c, 0xa5, - 0x71, 0xe0, 0x78, 0x3d, 0x67, 0x4c, 0x5d, 0xfc, 0x5b, 0x65, 0x0a, 0xd5, 0x20, 0xdf, 0xfa, 0x76, - 0xec, 0x04, 0xb7, 0xef, 0x10, 0x49, 0xad, 0x89, 0x10, 0xe4, 0x4e, 0xe9, 0x88, 0xe9, 0x08, 0xca, - 0x6f, 0xb4, 0x0d, 0xeb, 0xad, 0x11, 0x75, 0x5c, 0x1d, 0x38, 0x45, 0x88, 0xc0, 0x9c, 0x3b, 0x3d, - 0x3e, 0x09, 0x98, 0x8e, 0x59, 0x44, 0xe2, 0x3f, 0x19, 0xf3, 0x77, 0x89, 0x61, 0x8d, 0x14, 0xec, - 0x43, 0x28, 0x37, 0x59, 0xd8, 0x0b, 0x9c, 0xb1, 0x28, 0x35, 0x6d, 0x31, 0xcd, 0x5a, 0x61, 0xd8, - 0x86, 0x62, 0x3b, 0x0c, 0x27, 0xac, 0x5f, 0xe7, 0xd2, 0x72, 0x96, 0xc4, 0xb4, 0xc8, 0xf3, 0xa9, - 0xcf, 0x0f, 0xd9, 0xc0, 0x0f, 0x98, 0xcc, 0x57, 0x96, 0x24, 0x0c, 0x21, 0x95, 0xd7, 0x64, 0x61, - 0x9d, 0xcb, 0x94, 0x65, 0x49, 0xc2, 0xc0, 0x5d, 0xd8, 0xbc, 0xf0, 0x6f, 0x98, 0x17, 0xa7, 0xec, - 0x31, 0x14, 0xa2, 0x5c, 0x18, 0xab, 0x72, 0x41, 0x22, 0x15, 0xe1, 0xac, 0x3c, 0xae, 0x2f, 0xa2, - 0x08, 0xfc, 0x4f, 0x03, 0x4a, 0xe7, 0x34, 0xa0, 0x23, 0xc6, 0x59, 0xf0, 0xfe, 0x61, 0xf8, 0x8a, - 0xba, 0x13, 0x16, 0x85, 0x41, 0x12, 0x22, 0x0c, 0x67, 0x52, 0x4e, 0x5d, 0x19, 0x86, 0x22, 0x89, - 0x69, 0x19, 0x22, 0x8f, 0xb3, 0x40, 0xc8, 0xd6, 0x95, 0x2c, 0xa2, 0x05, 0xda, 0x59, 0xd0, 0x67, - 0x81, 0x0c, 0xc0, 0x3a, 0x51, 0x84, 0xf0, 0xec, 0x98, 0xb9, 0x63, 0xab, 0xa0, 0x3c, 0x13, 0xdf, - 0x02, 0xe5, 0x28, 0xf0, 0x47, 0x47, 0x8e, 0xcb, 0xac, 0xa2, 0x42, 0x89, 0x68, 0xfc, 0x37, 0x03, - 0x2a, 0x47, 0x2e, 0x9d, 0xfa, 0x41, 0x3d, 0xe0, 0xce, 0x80, 0xf6, 0xde, 0x37, 0xc7, 0x9f, 0x42, - 0xee, 0x82, 0x0e, 0x43, 0x2b, 0xfb, 0x30, 0xfb, 0xa8, 0x5c, 0xdb, 0x15, 0x11, 0x9e, 0xc5, 0x3d, - 0x10, 0xe2, 0x96, 0xc7, 0x83, 0x5b, 0x22, 0x35, 0xed, 0x33, 0x28, 0xc5, 0x2c, 0x64, 0x42, 0xf6, - 0x86, 0xdd, 0x6a, 0x9b, 0xe2, 0x13, 0x3d, 0x86, 0xf5, 0xa9, 0x8c, 0x96, 0xea, 0x9f, 0x9d, 0x85, - 0xa2, 0x6f, 0x89, 0xe1, 0x45, 0x94, 0xd2, 0xd3, 0xcc, 0xe7, 0x06, 0xfe, 0x6f, 0x16, 0xf2, 0xca, - 0xa6, 0x98, 0x4d, 0xed, 0x66, 0x34, 0x9b, 0xda, 0xcd, 0xa5, 0xed, 0x30, 0x77, 0xa7, 0xec, 0xe2, - 0x9d, 0x7e, 0x0c, 0x1b, 0xf5, 0x29, 0x75, 0x5c, 0x7a, 0xe5, 0xb8, 0x0e, 0xbf, 0x95, 0xe9, 0xa9, - 0xd4, 0xee, 0x27, 0x77, 0x3b, 0xa0, 0x29, 0x31, 0x99, 0x51, 0x46, 0x4f, 0x01, 0xe2, 0x82, 0x09, - 0xad, 0x75, 0x19, 0x16, 0x3b, 0x75, 0x34, 0x11, 0xaa, 0xa0, 0xa4, 0xb4, 0xd1, 0x67, 0x50, 0x8a, - 0xc2, 0x16, 0x5a, 0x79, 0x79, 0xf4, 0x83, 0xd4, 0xd1, 0x58, 0xa6, 0x4e, 0x26, 0xba, 0xa2, 0x99, - 0xeb, 0xae, 0x43, 0x43, 0x16, 0x5a, 0x85, 0x87, 0x59, 0xd1, 0xcc, 0x9a, 0xb4, 0x3b, 0x70, 0x67, - 0xce, 0xe2, 0x92, 0x98, 0x7f, 0x34, 0x1b, 0xf3, 0x4d, 0x61, 0x33, 0x3e, 0x95, 0x0a, 0xb5, 0x7d, - 0x0e, 0x95, 0x59, 0x27, 0x96, 0x80, 0x3d, 0x9a, 0x05, 0x43, 0x8b, 0x25, 0x91, 0x4e, 0xde, 0x33, - 0xd8, 0x48, 0x07, 0x13, 0x95, 0x60, 0x9d, 0xba, 0xe3, 0x6b, 0x6a, 0xae, 0xa1, 0x22, 0xe4, 0xae, - 0x18, 0xa7, 0xa6, 0x81, 0x00, 0xf2, 0x21, 0xa7, 0x57, 0x2e, 0x33, 0x33, 0xa8, 0x0c, 0x85, 0x3e, - 0x1b, 0xd0, 0x89, 0xcb, 0xcd, 0x2c, 0xfe, 0x2e, 0x6c, 0x29, 0xe8, 0x8e, 0x13, 0x72, 0xc2, 0x7e, - 0x33, 0x61, 0x21, 0x17, 0x2e, 0x51, 0xd7, 0x95, 0x2e, 0x15, 0x89, 0xf8, 0xc4, 0x17, 0x80, 0xd2, - 0x6a, 0x7a, 0x3e, 0x58, 0x50, 0x68, 0x2a, 0x24, 0xed, 0x7e, 0x44, 0xa2, 0x8f, 0xa1, 0xa0, 0xf4, - 0x43, 0x2b, 0x23, 0xb3, 0x00, 0xc9, 0x25, 0x48, 0x24, 0xc2, 0x7f, 0xc8, 0x42, 0xa1, 0xe1, 0x4e, - 0x42, 0x31, 0x19, 0xe6, 0x0b, 0x0f, 0x43, 0xbe, 0xcb, 0x29, 0x9f, 0x84, 0x32, 0x0a, 0x15, 0x05, - 0xa0, 0x38, 0x44, 0x4b, 0xd0, 0x4e, 0x54, 0xb6, 0xba, 0x06, 0xa3, 0x22, 0x16, 0x1d, 0xfe, 0xd2, - 0x63, 0x81, 0x9e, 0xcb, 0x8a, 0x10, 0xab, 0xb5, 0x11, 0x30, 0xca, 0x59, 0xff, 0x4c, 0xad, 0xb2, - 0xb7, 0xac, 0xd6, 0x58, 0x19, 0x3d, 0x93, 0x05, 0xcf, 0x03, 0xff, 0x56, 0x9e, 0xcd, 0xbf, 0xf5, - 0x6c, 0x5a, 0x1d, 0xfd, 0x08, 0x8a, 0x1d, 0x67, 0xc0, 0xc2, 0x31, 0xf5, 0xe4, 0x74, 0x11, 0x25, - 0x39, 0x7f, 0xb4, 0xa9, 0xdf, 0x1b, 0x24, 0x56, 0x9d, 0xef, 0xb2, 0xe2, 0x62, 0x97, 0x99, 0x90, - 0xbd, 0x24, 0x1d, 0xab, 0xa4, 0x2a, 0xe7, 0x92, 0x74, 0x44, 0x42, 0x1a, 0xbe, 0xe7, 0xb1, 0x1e, - 0xb7, 0x40, 0x25, 0x44, 0x93, 0xe8, 0x93, 0x99, 0xa6, 0x2a, 0xcb, 0x9c, 0xcc, 0x55, 0x69, 0x4a, - 0x01, 0x7f, 0x0d, 0x48, 0x27, 0xe6, 0x8d, 0x75, 0x21, 0x0c, 0x32, 0xb9, 0x3f, 0xfa, 0x32, 0x4d, - 0x45, 0x12, 0x91, 0x22, 0x37, 0xe3, 0x80, 0x0d, 0x9c, 0x6f, 0xa3, 0xdc, 0x28, 0x0a, 0x7f, 0x09, - 0x77, 0x67, 0x90, 0x75, 0x29, 0x7d, 0x0f, 0x8a, 0x9a, 0x1d, 0x5a, 0x86, 0xf4, 0xae, 0x2c, 0xbc, - 0xd3, 0x3c, 0x12, 0x0b, 0xf1, 0x9f, 0x0d, 0xb8, 0x13, 0xc5, 0x28, 0xf2, 0x6b, 0xee, 0x41, 0x35, - 0x13, 0xf1, 0xcc, 0xbb, 0x47, 0xbc, 0x06, 0xf9, 0x11, 0xe3, 0xd7, 0x7e, 0x5f, 0xba, 0x5c, 0x51, - 0x43, 0x67, 0xce, 0xd6, 0xc1, 0x89, 0xd4, 0x20, 0x5a, 0x13, 0x3f, 0x86, 0xbc, 0xe2, 0x88, 0xb6, - 0x22, 0xad, 0xf3, 0x4e, 0xbd, 0xd1, 0x32, 0xd7, 0x50, 0x01, 0xb2, 0xf5, 0x66, 0xd3, 0x34, 0xd0, - 0x06, 0x14, 0xbb, 0x97, 0x87, 0x17, 0xa4, 0xde, 0xb8, 0x30, 0x33, 0xf8, 0x2f, 0x19, 0xd8, 0x56, - 0x65, 0x15, 0x5d, 0x2c, 0xb9, 0xc1, 0x4c, 0xf5, 0xbf, 0xe7, 0x0d, 0x8e, 0x67, 0xb2, 0xac, 0x36, - 0xca, 0x23, 0x19, 0xc7, 0x25, 0x46, 0xdf, 0x38, 0x48, 0xe7, 0xaa, 0x2f, 0xb7, 0x58, 0x7d, 0x16, - 0x14, 0x4e, 0xfd, 0xae, 0x4b, 0x7b, 0x37, 0x7a, 0xc3, 0x46, 0xa4, 0x90, 0xc8, 0x8f, 0xe6, 0x89, - 0x6c, 0x95, 0x22, 0x89, 0x48, 0xfb, 0x8b, 0x77, 0x99, 0xa5, 0xdb, 0xe9, 0xf1, 0x57, 0x4a, 0x8f, - 0xba, 0x01, 0x14, 0xff, 0xcf, 0x65, 0xab, 0x5b, 0x26, 0x9b, 0xb4, 0x0c, 0x82, 0xdc, 0x89, 0xdf, - 0x57, 0x4f, 0xb8, 0x75, 0x22, 0xbf, 0xf1, 0x97, 0x60, 0xea, 0x50, 0x25, 0x0b, 0x62, 0x3f, 0xbd, - 0x59, 0x54, 0x85, 0x6e, 0x88, 0xc8, 0xc6, 0x23, 0x39, 0x11, 0xe3, 0xd7, 0x90, 0xed, 0xf8, 0xc3, - 0xa5, 0x2e, 0xfe, 0x10, 0x0a, 0x5d, 0x4e, 0x03, 0xae, 0x1b, 0xe6, 0xcd, 0x63, 0x24, 0x52, 0x15, - 0x48, 0x87, 0x7e, 0xff, 0x56, 0xfa, 0xbd, 0x41, 0xe4, 0xb7, 0x88, 0xf2, 0x09, 0x0b, 0x43, 0x3a, - 0x8c, 0x9f, 0x9f, 0x9a, 0xc4, 0xdf, 0x87, 0x8d, 0x8e, 0x3f, 0x0c, 0xe3, 0xde, 0x7a, 0x00, 0x39, - 0x41, 0x6b, 0xaf, 0x0b, 0xb2, 0xaa, 0xfd, 0x21, 0x91, 0x4c, 0xfc, 0x19, 0x6c, 0x35, 0x5c, 0xe7, - 0x72, 0x3c, 0x0c, 0x68, 0x9f, 0xa5, 0xca, 0xd1, 0x0f, 0xa3, 0x72, 0xf4, 0x43, 0x61, 0x9f, 0x06, - 0xbd, 0xeb, 0xe8, 0x15, 0x20, 0xbe, 0x71, 0x4d, 0x8c, 0x88, 0xe4, 0xa0, 0xb6, 0xb5, 0x0b, 0xa5, - 0x81, 0xe3, 0xb2, 0xc6, 0xf5, 0xc4, 0xbb, 0x91, 0x00, 0x1b, 0x24, 0x61, 0xe0, 0x5f, 0x42, 0xb9, - 0xed, 0x0d, 0x02, 0xaa, 0xe7, 0xf7, 0x63, 0xd8, 0x3a, 0xa1, 0x8e, 0xc7, 0x99, 0x47, 0x3d, 0xf1, - 0xa0, 0xe4, 0xce, 0x94, 0xe9, 0xe9, 0xb2, 0x28, 0x40, 0x7b, 0x00, 0x92, 0x49, 0x1d, 0x31, 0xda, - 0x95, 0x2b, 0x29, 0xce, 0xfe, 0xcf, 0xa2, 0x8d, 0x21, 0xb6, 0xdd, 0x51, 0xbd, 0xdd, 0x69, 0x35, - 0xcd, 0x35, 0xd1, 0x80, 0x0d, 0xd2, 0xaa, 0x5f, 0xb4, 0x4f, 0x9f, 0x9b, 0x86, 0x58, 0x8e, 0xa4, - 0x55, 0x6f, 0x7e, 0x63, 0x66, 0x50, 0x05, 0xa0, 0xd9, 0xea, 0x5e, 0x90, 0xb3, 0x6f, 0x84, 0x28, - 0x2b, 0x14, 0x8f, 0xda, 0xa7, 0xed, 0xee, 0x71, 0xab, 0x69, 0xe6, 0x6a, 0x5f, 0x43, 0x45, 0xff, - 0xe6, 0xe8, 0xe7, 0x2e, 0x3a, 0x02, 0x78, 0xce, 0x78, 0xf4, 0xef, 0xb3, 0xe2, 0x55, 0x65, 0xcb, - 0xa9, 0xa5, 0x95, 0xf0, 0xdd, 0xdf, 0xfd, 0xe3, 0x5f, 0xbf, 0xcf, 0x6c, 0xa2, 0x72, 0x75, 0xfa, - 0xa4, 0x3a, 0x55, 0xcc, 0xda, 0x7f, 0x0c, 0x28, 0x8b, 0xbf, 0x93, 0x08, 0xf7, 0x18, 0xf2, 0xea, - 0x4f, 0x69, 0x25, 0xa6, 0x7c, 0x00, 0xcc, 0xfe, 0x4d, 0x61, 0x24, 0xa1, 0x37, 0x10, 0x08, 0xe8, - 0x97, 0xea, 0xfc, 0xcf, 0xa1, 0xac, 0xfa, 0x5c, 0xbe, 0xbc, 0xd1, 0x92, 0xc7, 0xba, 0xbd, 0x25, - 0x78, 0x33, 0x8f, 0x7c, 0xfc, 0x40, 0x22, 0xdd, 0xc3, 0xa6, 0x40, 0xe2, 0x42, 0xf4, 0x49, 0x4f, - 0xa2, 0x3c, 0x35, 0xf6, 0xd1, 0xb1, 0x7e, 0xd3, 0xaf, 0xf4, 0x6d, 0x09, 0xe0, 0xb6, 0x04, 0xac, - 0xe0, 0x52, 0x0c, 0xf8, 0xd4, 0xd8, 0xaf, 0xfd, 0xd1, 0x80, 0x4d, 0xb5, 0x9e, 0xa3, 0x8b, 0xb7, - 0x21, 0x27, 0x56, 0x00, 0xba, 0x97, 0x3c, 0x0d, 0x52, 0xcb, 0xc6, 0xde, 0x99, 0x67, 0x2f, 0xbb, - 0xf9, 0x40, 0x2d, 0xfc, 0x2f, 0x20, 0xd7, 0xf6, 0x06, 0x3e, 0x32, 0xc5, 0x99, 0xf4, 0xbf, 0xb6, - 0x9d, 0x7a, 0x77, 0xe0, 0xfb, 0xf2, 0xe4, 0x16, 0xba, 0x93, 0x9c, 0xac, 0xbe, 0x72, 0xfa, 0xaf, - 0x6b, 0x7f, 0xcd, 0x41, 0x45, 0x37, 0x7c, 0xe4, 0xdc, 0x4f, 0x56, 0x22, 0xa6, 0xf7, 0x12, 0xb6, - 0x24, 0x24, 0x42, 0x32, 0x78, 0x3d, 0xc5, 0x94, 0x98, 0xa8, 0xa3, 0x6f, 0xb7, 0x93, 0x52, 0x4f, - 0x5f, 0xef, 0xfe, 0x02, 0x5f, 0xdf, 0x6f, 0xa6, 0x68, 0x34, 0x24, 0xfa, 0x75, 0xb2, 0x0f, 0xd0, - 0xdd, 0x25, 0x6b, 0xc9, 0x5e, 0xbd, 0x1e, 0xf0, 0xc7, 0x12, 0x70, 0x0f, 0x7f, 0x30, 0xef, 0x63, - 0xd5, 0xd5, 0x20, 0x22, 0xd3, 0x1d, 0xc8, 0xab, 0xe2, 0x41, 0xd6, 0xaa, 0x85, 0x61, 0x2f, 0x04, - 0x03, 0xef, 0x48, 0x6c, 0x13, 0xa7, 0x9d, 0x15, 0x68, 0x2f, 0x52, 0xd3, 0x72, 0x49, 0x0c, 0xb7, - 0x53, 0x97, 0x4f, 0xc6, 0x26, 0x96, 0x60, 0xbb, 0xc8, 0x5e, 0x70, 0x94, 0xc6, 0x58, 0x1d, 0xc8, - 0x37, 0x99, 0xcb, 0x38, 0x5b, 0x82, 0xba, 0xa2, 0x46, 0xa3, 0x24, 0xed, 0x2f, 0x26, 0xa9, 0xad, - 0x26, 0xe3, 0x12, 0x2c, 0x53, 0x4f, 0xc9, 0x78, 0x8a, 0xe2, 0x0f, 0x25, 0xca, 0x7d, 0x74, 0x6f, - 0x31, 0x8c, 0xfe, 0x30, 0xac, 0x8d, 0x00, 0x1a, 0xae, 0x13, 0x95, 0xcf, 0xaf, 0xa0, 0xa0, 0x27, - 0xa3, 0x2a, 0xef, 0x85, 0x11, 0x6b, 0xef, 0xcc, 0xb3, 0xb5, 0x99, 0x8f, 0xa4, 0x99, 0x0f, 0xd1, - 0x03, 0x65, 0xc6, 0xa9, 0xbe, 0xf2, 0xc3, 0xd7, 0xd5, 0x57, 0x62, 0xe4, 0xbe, 0xae, 0x4e, 0x94, - 0xf2, 0xa7, 0x46, 0xed, 0xdf, 0x06, 0xa0, 0xd4, 0x28, 0x4d, 0x86, 0x49, 0xe9, 0x39, 0xe3, 0xd1, - 0xf3, 0x78, 0x45, 0xcf, 0xde, 0x11, 0xa6, 0x53, 0x87, 0x67, 0x5b, 0x2a, 0x54, 0x87, 0x7f, 0x0a, - 0x65, 0xc2, 0xc2, 0xf7, 0xc6, 0xda, 0x4f, 0x63, 0xd5, 0xa1, 0xd4, 0x8d, 0x91, 0xe6, 0x4f, 0xac, - 0x84, 0xb0, 0x53, 0x10, 0x87, 0xb9, 0x5f, 0x64, 0xa6, 0x4f, 0xae, 0xf2, 0xd2, 0xfa, 0x0f, 0xfe, - 0x17, 0x00, 0x00, 0xff, 0xff, 0xac, 0x70, 0xde, 0x7a, 0xe1, 0x13, 0x00, 0x00, -} - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConn - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion4 - -// VersionServiceClient is the client API for VersionService service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type VersionServiceClient interface { - GetVersion(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*Version, error) -} - -type versionServiceClient struct { - cc *grpc.ClientConn -} - -func NewVersionServiceClient(cc *grpc.ClientConn) VersionServiceClient { - return &versionServiceClient{cc} -} - -func (c *versionServiceClient) GetVersion(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*Version, error) { - out := new(Version) - err := c.cc.Invoke(ctx, "/v1.VersionService/GetVersion", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// VersionServiceServer is the server API for VersionService service. -type VersionServiceServer interface { - GetVersion(context.Context, *emptypb.Empty) (*Version, error) -} - -// UnimplementedVersionServiceServer can be embedded to have forward compatible implementations. -type UnimplementedVersionServiceServer struct { -} - -func (*UnimplementedVersionServiceServer) GetVersion(ctx context.Context, req *emptypb.Empty) (*Version, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetVersion not implemented") -} - -func RegisterVersionServiceServer(s *grpc.Server, srv VersionServiceServer) { - s.RegisterService(&_VersionService_serviceDesc, srv) -} - -func _VersionService_GetVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(emptypb.Empty) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(VersionServiceServer).GetVersion(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/v1.VersionService/GetVersion", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(VersionServiceServer).GetVersion(ctx, req.(*emptypb.Empty)) - } - return interceptor(ctx, in, info, handler) -} - -var _VersionService_serviceDesc = grpc.ServiceDesc{ - ServiceName: "v1.VersionService", - HandlerType: (*VersionServiceServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "GetVersion", - Handler: _VersionService_GetVersion_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "service.proto", -} - -// UserServiceClient is the client API for UserService service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type UserServiceClient interface { - // Whoami provides information about the currently authenticated principal. - Whoami(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*WhoamiResponse, error) - // CreateToken generates an arbitrary service account token - CreateToken(ctx context.Context, in *ServiceAccount, opts ...grpc.CallOption) (*TokenResponse, error) - // Token generates a service account token for the current user. - Token(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*TokenResponse, error) -} - -type userServiceClient struct { - cc *grpc.ClientConn -} - -func NewUserServiceClient(cc *grpc.ClientConn) UserServiceClient { - return &userServiceClient{cc} -} - -func (c *userServiceClient) Whoami(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*WhoamiResponse, error) { - out := new(WhoamiResponse) - err := c.cc.Invoke(ctx, "/v1.UserService/Whoami", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *userServiceClient) CreateToken(ctx context.Context, in *ServiceAccount, opts ...grpc.CallOption) (*TokenResponse, error) { - out := new(TokenResponse) - err := c.cc.Invoke(ctx, "/v1.UserService/CreateToken", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *userServiceClient) Token(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*TokenResponse, error) { - out := new(TokenResponse) - err := c.cc.Invoke(ctx, "/v1.UserService/Token", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// UserServiceServer is the server API for UserService service. -type UserServiceServer interface { - // Whoami provides information about the currently authenticated principal. - Whoami(context.Context, *emptypb.Empty) (*WhoamiResponse, error) - // CreateToken generates an arbitrary service account token - CreateToken(context.Context, *ServiceAccount) (*TokenResponse, error) - // Token generates a service account token for the current user. - Token(context.Context, *emptypb.Empty) (*TokenResponse, error) +func (x *InfraStatus) String() string { + return protoimpl.X.MessageStringOf(x) } -// UnimplementedUserServiceServer can be embedded to have forward compatible implementations. -type UnimplementedUserServiceServer struct { -} - -func (*UnimplementedUserServiceServer) Whoami(ctx context.Context, req *emptypb.Empty) (*WhoamiResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Whoami not implemented") -} -func (*UnimplementedUserServiceServer) CreateToken(ctx context.Context, req *ServiceAccount) (*TokenResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method CreateToken not implemented") -} -func (*UnimplementedUserServiceServer) Token(ctx context.Context, req *emptypb.Empty) (*TokenResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Token not implemented") -} - -func RegisterUserServiceServer(s *grpc.Server, srv UserServiceServer) { - s.RegisterService(&_UserService_serviceDesc, srv) -} - -func _UserService_Whoami_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(emptypb.Empty) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(UserServiceServer).Whoami(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/v1.UserService/Whoami", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(UserServiceServer).Whoami(ctx, req.(*emptypb.Empty)) - } - return interceptor(ctx, in, info, handler) -} - -func _UserService_CreateToken_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ServiceAccount) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(UserServiceServer).CreateToken(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/v1.UserService/CreateToken", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(UserServiceServer).CreateToken(ctx, req.(*ServiceAccount)) - } - return interceptor(ctx, in, info, handler) -} +func (*InfraStatus) ProtoMessage() {} -func _UserService_Token_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(emptypb.Empty) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(UserServiceServer).Token(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/v1.UserService/Token", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(UserServiceServer).Token(ctx, req.(*emptypb.Empty)) +func (x *InfraStatus) ProtoReflect() protoreflect.Message { + mi := &file_service_proto_msgTypes[22] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return interceptor(ctx, in, info, handler) + return mi.MessageOf(x) } -var _UserService_serviceDesc = grpc.ServiceDesc{ - ServiceName: "v1.UserService", - HandlerType: (*UserServiceServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "Whoami", - Handler: _UserService_Whoami_Handler, - }, - { - MethodName: "CreateToken", - Handler: _UserService_CreateToken_Handler, - }, - { - MethodName: "Token", - Handler: _UserService_Token_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "service.proto", -} - -// FlavorServiceClient is the client API for FlavorService service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type FlavorServiceClient interface { - // List provides information about the available flavors. - List(ctx context.Context, in *FlavorListRequest, opts ...grpc.CallOption) (*FlavorListResponse, error) - // Info provides information about a specific flavor. - Info(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*Flavor, error) -} - -type flavorServiceClient struct { - cc *grpc.ClientConn -} - -func NewFlavorServiceClient(cc *grpc.ClientConn) FlavorServiceClient { - return &flavorServiceClient{cc} -} - -func (c *flavorServiceClient) List(ctx context.Context, in *FlavorListRequest, opts ...grpc.CallOption) (*FlavorListResponse, error) { - out := new(FlavorListResponse) - err := c.cc.Invoke(ctx, "/v1.FlavorService/List", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *flavorServiceClient) Info(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*Flavor, error) { - out := new(Flavor) - err := c.cc.Invoke(ctx, "/v1.FlavorService/Info", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// FlavorServiceServer is the server API for FlavorService service. -type FlavorServiceServer interface { - // List provides information about the available flavors. - List(context.Context, *FlavorListRequest) (*FlavorListResponse, error) - // Info provides information about a specific flavor. - Info(context.Context, *ResourceByID) (*Flavor, error) -} - -// UnimplementedFlavorServiceServer can be embedded to have forward compatible implementations. -type UnimplementedFlavorServiceServer struct { -} - -func (*UnimplementedFlavorServiceServer) List(ctx context.Context, req *FlavorListRequest) (*FlavorListResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method List not implemented") -} -func (*UnimplementedFlavorServiceServer) Info(ctx context.Context, req *ResourceByID) (*Flavor, error) { - return nil, status.Errorf(codes.Unimplemented, "method Info not implemented") -} - -func RegisterFlavorServiceServer(s *grpc.Server, srv FlavorServiceServer) { - s.RegisterService(&_FlavorService_serviceDesc, srv) -} - -func _FlavorService_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(FlavorListRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(FlavorServiceServer).List(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/v1.FlavorService/List", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(FlavorServiceServer).List(ctx, req.(*FlavorListRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _FlavorService_Info_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ResourceByID) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(FlavorServiceServer).Info(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/v1.FlavorService/Info", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(FlavorServiceServer).Info(ctx, req.(*ResourceByID)) - } - return interceptor(ctx, in, info, handler) -} - -var _FlavorService_serviceDesc = grpc.ServiceDesc{ - ServiceName: "v1.FlavorService", - HandlerType: (*FlavorServiceServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "List", - Handler: _FlavorService_List_Handler, - }, - { - MethodName: "Info", - Handler: _FlavorService_Info_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "service.proto", -} - -// ClusterServiceClient is the client API for ClusterService service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type ClusterServiceClient interface { - // Info provides information about a specific cluster. - Info(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*Cluster, error) - // List provides information about the available clusters. - List(ctx context.Context, in *ClusterListRequest, opts ...grpc.CallOption) (*ClusterListResponse, error) - // Lifespan updates the lifespan for a specific cluster. - Lifespan(ctx context.Context, in *LifespanRequest, opts ...grpc.CallOption) (*durationpb.Duration, error) - // Create launches a new cluster. - Create(ctx context.Context, in *CreateClusterRequest, opts ...grpc.CallOption) (*ResourceByID, error) - // Artifacts returns the artifacts for a specific cluster. - Artifacts(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*ClusterArtifacts, error) - // Delete deletes an existing cluster. - Delete(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*emptypb.Empty, error) - // Logs returns the logs for a specific cluster. - Logs(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*LogsResponse, error) -} - -type clusterServiceClient struct { - cc *grpc.ClientConn -} - -func NewClusterServiceClient(cc *grpc.ClientConn) ClusterServiceClient { - return &clusterServiceClient{cc} -} - -func (c *clusterServiceClient) Info(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*Cluster, error) { - out := new(Cluster) - err := c.cc.Invoke(ctx, "/v1.ClusterService/Info", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *clusterServiceClient) List(ctx context.Context, in *ClusterListRequest, opts ...grpc.CallOption) (*ClusterListResponse, error) { - out := new(ClusterListResponse) - err := c.cc.Invoke(ctx, "/v1.ClusterService/List", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *clusterServiceClient) Lifespan(ctx context.Context, in *LifespanRequest, opts ...grpc.CallOption) (*durationpb.Duration, error) { - out := new(durationpb.Duration) - err := c.cc.Invoke(ctx, "/v1.ClusterService/Lifespan", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *clusterServiceClient) Create(ctx context.Context, in *CreateClusterRequest, opts ...grpc.CallOption) (*ResourceByID, error) { - out := new(ResourceByID) - err := c.cc.Invoke(ctx, "/v1.ClusterService/Create", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *clusterServiceClient) Artifacts(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*ClusterArtifacts, error) { - out := new(ClusterArtifacts) - err := c.cc.Invoke(ctx, "/v1.ClusterService/Artifacts", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *clusterServiceClient) Delete(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*emptypb.Empty, error) { - out := new(emptypb.Empty) - err := c.cc.Invoke(ctx, "/v1.ClusterService/Delete", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *clusterServiceClient) Logs(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*LogsResponse, error) { - out := new(LogsResponse) - err := c.cc.Invoke(ctx, "/v1.ClusterService/Logs", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// ClusterServiceServer is the server API for ClusterService service. -type ClusterServiceServer interface { - // Info provides information about a specific cluster. - Info(context.Context, *ResourceByID) (*Cluster, error) - // List provides information about the available clusters. - List(context.Context, *ClusterListRequest) (*ClusterListResponse, error) - // Lifespan updates the lifespan for a specific cluster. - Lifespan(context.Context, *LifespanRequest) (*durationpb.Duration, error) - // Create launches a new cluster. - Create(context.Context, *CreateClusterRequest) (*ResourceByID, error) - // Artifacts returns the artifacts for a specific cluster. - Artifacts(context.Context, *ResourceByID) (*ClusterArtifacts, error) - // Delete deletes an existing cluster. - Delete(context.Context, *ResourceByID) (*emptypb.Empty, error) - // Logs returns the logs for a specific cluster. - Logs(context.Context, *ResourceByID) (*LogsResponse, error) -} - -// UnimplementedClusterServiceServer can be embedded to have forward compatible implementations. -type UnimplementedClusterServiceServer struct { -} - -func (*UnimplementedClusterServiceServer) Info(ctx context.Context, req *ResourceByID) (*Cluster, error) { - return nil, status.Errorf(codes.Unimplemented, "method Info not implemented") -} -func (*UnimplementedClusterServiceServer) List(ctx context.Context, req *ClusterListRequest) (*ClusterListResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method List not implemented") -} -func (*UnimplementedClusterServiceServer) Lifespan(ctx context.Context, req *LifespanRequest) (*durationpb.Duration, error) { - return nil, status.Errorf(codes.Unimplemented, "method Lifespan not implemented") -} -func (*UnimplementedClusterServiceServer) Create(ctx context.Context, req *CreateClusterRequest) (*ResourceByID, error) { - return nil, status.Errorf(codes.Unimplemented, "method Create not implemented") -} -func (*UnimplementedClusterServiceServer) Artifacts(ctx context.Context, req *ResourceByID) (*ClusterArtifacts, error) { - return nil, status.Errorf(codes.Unimplemented, "method Artifacts not implemented") -} -func (*UnimplementedClusterServiceServer) Delete(ctx context.Context, req *ResourceByID) (*emptypb.Empty, error) { - return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented") -} -func (*UnimplementedClusterServiceServer) Logs(ctx context.Context, req *ResourceByID) (*LogsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Logs not implemented") -} - -func RegisterClusterServiceServer(s *grpc.Server, srv ClusterServiceServer) { - s.RegisterService(&_ClusterService_serviceDesc, srv) -} - -func _ClusterService_Info_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ResourceByID) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ClusterServiceServer).Info(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/v1.ClusterService/Info", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ClusterServiceServer).Info(ctx, req.(*ResourceByID)) - } - return interceptor(ctx, in, info, handler) -} - -func _ClusterService_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ClusterListRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ClusterServiceServer).List(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/v1.ClusterService/List", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ClusterServiceServer).List(ctx, req.(*ClusterListRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _ClusterService_Lifespan_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(LifespanRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ClusterServiceServer).Lifespan(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/v1.ClusterService/Lifespan", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ClusterServiceServer).Lifespan(ctx, req.(*LifespanRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _ClusterService_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(CreateClusterRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ClusterServiceServer).Create(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/v1.ClusterService/Create", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ClusterServiceServer).Create(ctx, req.(*CreateClusterRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _ClusterService_Artifacts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ResourceByID) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ClusterServiceServer).Artifacts(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/v1.ClusterService/Artifacts", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ClusterServiceServer).Artifacts(ctx, req.(*ResourceByID)) - } - return interceptor(ctx, in, info, handler) -} - -func _ClusterService_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ResourceByID) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ClusterServiceServer).Delete(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/v1.ClusterService/Delete", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ClusterServiceServer).Delete(ctx, req.(*ResourceByID)) - } - return interceptor(ctx, in, info, handler) -} - -func _ClusterService_Logs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ResourceByID) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ClusterServiceServer).Logs(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/v1.ClusterService/Logs", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ClusterServiceServer).Logs(ctx, req.(*ResourceByID)) - } - return interceptor(ctx, in, info, handler) -} - -var _ClusterService_serviceDesc = grpc.ServiceDesc{ - ServiceName: "v1.ClusterService", - HandlerType: (*ClusterServiceServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "Info", - Handler: _ClusterService_Info_Handler, - }, - { - MethodName: "List", - Handler: _ClusterService_List_Handler, - }, - { - MethodName: "Lifespan", - Handler: _ClusterService_Lifespan_Handler, - }, - { - MethodName: "Create", - Handler: _ClusterService_Create_Handler, - }, - { - MethodName: "Artifacts", - Handler: _ClusterService_Artifacts_Handler, - }, - { - MethodName: "Delete", - Handler: _ClusterService_Delete_Handler, - }, - { - MethodName: "Logs", - Handler: _ClusterService_Logs_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "service.proto", -} - -// CliServiceClient is the client API for CliService service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type CliServiceClient interface { - // Upgrade - gets an updated binary if it exists. - Upgrade(ctx context.Context, in *CliUpgradeRequest, opts ...grpc.CallOption) (CliService_UpgradeClient, error) -} - -type cliServiceClient struct { - cc *grpc.ClientConn -} - -func NewCliServiceClient(cc *grpc.ClientConn) CliServiceClient { - return &cliServiceClient{cc} -} - -func (c *cliServiceClient) Upgrade(ctx context.Context, in *CliUpgradeRequest, opts ...grpc.CallOption) (CliService_UpgradeClient, error) { - stream, err := c.cc.NewStream(ctx, &_CliService_serviceDesc.Streams[0], "/v1.CliService/Upgrade", opts...) - if err != nil { - return nil, err - } - x := &cliServiceUpgradeClient{stream} - if err := x.ClientStream.SendMsg(in); err != nil { - return nil, err - } - if err := x.ClientStream.CloseSend(); err != nil { - return nil, err - } - return x, nil -} - -type CliService_UpgradeClient interface { - Recv() (*CliUpgradeResponse, error) - grpc.ClientStream -} - -type cliServiceUpgradeClient struct { - grpc.ClientStream -} - -func (x *cliServiceUpgradeClient) Recv() (*CliUpgradeResponse, error) { - m := new(CliUpgradeResponse) - if err := x.ClientStream.RecvMsg(m); err != nil { - return nil, err - } - return m, nil -} - -// CliServiceServer is the server API for CliService service. -type CliServiceServer interface { - // Upgrade - gets an updated binary if it exists. - Upgrade(*CliUpgradeRequest, CliService_UpgradeServer) error -} - -// UnimplementedCliServiceServer can be embedded to have forward compatible implementations. -type UnimplementedCliServiceServer struct { -} - -func (*UnimplementedCliServiceServer) Upgrade(req *CliUpgradeRequest, srv CliService_UpgradeServer) error { - return status.Errorf(codes.Unimplemented, "method Upgrade not implemented") -} - -func RegisterCliServiceServer(s *grpc.Server, srv CliServiceServer) { - s.RegisterService(&_CliService_serviceDesc, srv) -} - -func _CliService_Upgrade_Handler(srv interface{}, stream grpc.ServerStream) error { - m := new(CliUpgradeRequest) - if err := stream.RecvMsg(m); err != nil { - return err - } - return srv.(CliServiceServer).Upgrade(m, &cliServiceUpgradeServer{stream}) -} - -type CliService_UpgradeServer interface { - Send(*CliUpgradeResponse) error - grpc.ServerStream -} - -type cliServiceUpgradeServer struct { - grpc.ServerStream -} - -func (x *cliServiceUpgradeServer) Send(m *CliUpgradeResponse) error { - return x.ServerStream.SendMsg(m) -} - -var _CliService_serviceDesc = grpc.ServiceDesc{ - ServiceName: "v1.CliService", - HandlerType: (*CliServiceServer)(nil), - Methods: []grpc.MethodDesc{}, - Streams: []grpc.StreamDesc{ - { - StreamName: "Upgrade", - Handler: _CliService_Upgrade_Handler, - ServerStreams: true, - }, - }, - Metadata: "service.proto", -} - -// InfraStatusServiceClient is the client API for InfraStatusService service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type InfraStatusServiceClient interface { - // GetStatus gets the maintenance - GetStatus(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*InfraStatus, error) - // ResetStatus resets the maintenance - ResetStatus(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*InfraStatus, error) - // SetStatus sets the maintenance - SetStatus(ctx context.Context, in *InfraStatus, opts ...grpc.CallOption) (*InfraStatus, error) -} - -type infraStatusServiceClient struct { - cc *grpc.ClientConn -} - -func NewInfraStatusServiceClient(cc *grpc.ClientConn) InfraStatusServiceClient { - return &infraStatusServiceClient{cc} -} - -func (c *infraStatusServiceClient) GetStatus(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*InfraStatus, error) { - out := new(InfraStatus) - err := c.cc.Invoke(ctx, "/v1.InfraStatusService/GetStatus", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *infraStatusServiceClient) ResetStatus(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*InfraStatus, error) { - out := new(InfraStatus) - err := c.cc.Invoke(ctx, "/v1.InfraStatusService/ResetStatus", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +// Deprecated: Use InfraStatus.ProtoReflect.Descriptor instead. +func (*InfraStatus) Descriptor() ([]byte, []int) { + return file_service_proto_rawDescGZIP(), []int{22} } -func (c *infraStatusServiceClient) SetStatus(ctx context.Context, in *InfraStatus, opts ...grpc.CallOption) (*InfraStatus, error) { - out := new(InfraStatus) - err := c.cc.Invoke(ctx, "/v1.InfraStatusService/SetStatus", in, out, opts...) - if err != nil { - return nil, err +func (x *InfraStatus) GetMaintenanceActive() bool { + if x != nil { + return x.MaintenanceActive } - return out, nil -} - -// InfraStatusServiceServer is the server API for InfraStatusService service. -type InfraStatusServiceServer interface { - // GetStatus gets the maintenance - GetStatus(context.Context, *emptypb.Empty) (*InfraStatus, error) - // ResetStatus resets the maintenance - ResetStatus(context.Context, *emptypb.Empty) (*InfraStatus, error) - // SetStatus sets the maintenance - SetStatus(context.Context, *InfraStatus) (*InfraStatus, error) -} - -// UnimplementedInfraStatusServiceServer can be embedded to have forward compatible implementations. -type UnimplementedInfraStatusServiceServer struct { -} - -func (*UnimplementedInfraStatusServiceServer) GetStatus(ctx context.Context, req *emptypb.Empty) (*InfraStatus, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetStatus not implemented") -} -func (*UnimplementedInfraStatusServiceServer) ResetStatus(ctx context.Context, req *emptypb.Empty) (*InfraStatus, error) { - return nil, status.Errorf(codes.Unimplemented, "method ResetStatus not implemented") -} -func (*UnimplementedInfraStatusServiceServer) SetStatus(ctx context.Context, req *InfraStatus) (*InfraStatus, error) { - return nil, status.Errorf(codes.Unimplemented, "method SetStatus not implemented") -} - -func RegisterInfraStatusServiceServer(s *grpc.Server, srv InfraStatusServiceServer) { - s.RegisterService(&_InfraStatusService_serviceDesc, srv) + return false } -func _InfraStatusService_GetStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(emptypb.Empty) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(InfraStatusServiceServer).GetStatus(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/v1.InfraStatusService/GetStatus", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(InfraStatusServiceServer).GetStatus(ctx, req.(*emptypb.Empty)) +func (x *InfraStatus) GetMaintainer() string { + if x != nil { + return x.Maintainer } - return interceptor(ctx, in, info, handler) + return "" } -func _InfraStatusService_ResetStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(emptypb.Empty) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(InfraStatusServiceServer).ResetStatus(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/v1.InfraStatusService/ResetStatus", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(InfraStatusServiceServer).ResetStatus(ctx, req.(*emptypb.Empty)) - } - return interceptor(ctx, in, info, handler) -} +var File_service_proto protoreflect.FileDescriptor + +var file_service_proto_rawDesc = []byte{ + 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, + 0x02, 0x76, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, + 0x1e, 0x0a, 0x0c, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x79, 0x49, 0x44, 0x12, + 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, + 0xd1, 0x01, 0x0a, 0x07, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x38, 0x0a, 0x09, 0x42, + 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x42, 0x75, 0x69, 0x6c, + 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x47, 0x69, 0x74, 0x43, 0x6f, 0x6d, 0x6d, + 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x47, 0x69, 0x74, 0x43, 0x6f, 0x6d, + 0x6d, 0x69, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x47, 0x6f, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x47, 0x6f, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, + 0x07, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x57, 0x6f, 0x72, 0x6b, 0x66, + 0x6c, 0x6f, 0x77, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x57, 0x6f, 0x72, 0x6b, 0x66, + 0x6c, 0x6f, 0x77, 0x22, 0x7b, 0x0a, 0x0e, 0x57, 0x68, 0x6f, 0x61, 0x6d, 0x69, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x48, 0x00, 0x52, + 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x3c, 0x0a, 0x0e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, + 0x76, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x48, 0x00, 0x52, 0x0e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x42, 0x0b, 0x0a, 0x09, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, + 0x22, 0x7e, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x32, 0x0a, 0x06, 0x45, 0x78, 0x70, 0x69, + 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x52, 0x06, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, + 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x14, 0x0a, 0x05, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x50, 0x69, 0x63, 0x74, 0x75, 0x72, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x50, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, + 0x22, 0xb4, 0x01, 0x0a, 0x0e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x44, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x44, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x45, 0x6d, 0x61, + 0x69, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, + 0x1a, 0x0a, 0x08, 0x49, 0x73, 0x73, 0x75, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x08, 0x49, 0x73, 0x73, 0x75, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x4e, + 0x6f, 0x74, 0x42, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, + 0x4e, 0x6f, 0x74, 0x42, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x45, 0x78, 0x70, + 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x45, 0x78, + 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x22, 0x53, 0x0a, 0x0d, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x07, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x76, 0x31, 0x2e, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x07, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xd5, 0x01, 0x0a, + 0x09, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, + 0x0a, 0x0b, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x14, 0x0a, 0x05, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x12, 0x14, + 0x0a, 0x05, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x4f, + 0x72, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x48, 0x65, 0x6c, 0x70, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x48, 0x65, 0x6c, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x46, 0x72, 0x6f, 0x6d, + 0x46, 0x69, 0x6c, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x46, 0x72, 0x6f, 0x6d, + 0x46, 0x69, 0x6c, 0x65, 0x22, 0xc9, 0x01, 0x0a, 0x0e, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x41, + 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x44, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, + 0x04, 0x54, 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x76, 0x31, + 0x2e, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x2e, + 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x54, 0x61, 0x67, 0x73, 0x1a, + 0x4f, 0x0a, 0x09, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2c, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x45, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, + 0x22, 0xf8, 0x03, 0x0a, 0x06, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x49, + 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x4e, + 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x20, 0x0a, 0x0b, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x3b, 0x0a, 0x0c, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6c, 0x61, + 0x76, 0x6f, 0x72, 0x2e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x52, 0x0c, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x3a, + 0x0a, 0x0a, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x05, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x2e, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x37, 0x0a, 0x09, 0x41, 0x72, + 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, + 0x76, 0x31, 0x2e, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, + 0x63, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, + 0x63, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x18, 0x07, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x1a, 0x4c, 0x0a, + 0x0f, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x23, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x0d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x50, 0x0a, 0x0e, 0x41, + 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, + 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, + 0x28, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, + 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, + 0x63, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x3c, 0x0a, + 0x0c, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x09, 0x0a, + 0x05, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x62, 0x65, 0x74, 0x61, + 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x10, 0x02, 0x12, 0x0b, + 0x0a, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x10, 0x03, 0x22, 0x25, 0x0a, 0x11, 0x46, + 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x10, 0x0a, 0x03, 0x61, 0x6c, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x61, + 0x6c, 0x6c, 0x22, 0x54, 0x0a, 0x12, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x4c, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x44, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x44, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x12, 0x24, 0x0a, 0x07, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x52, + 0x07, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x73, 0x22, 0x97, 0x03, 0x0a, 0x07, 0x43, 0x6c, 0x75, + 0x73, 0x74, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x02, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0a, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x52, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x46, 0x6c, 0x61, 0x76, + 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, + 0x12, 0x14, 0x0a, 0x05, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x09, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x4f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x4f, 0x6e, + 0x12, 0x3c, 0x0a, 0x0b, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x4f, 0x6e, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x52, 0x0b, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x4f, 0x6e, 0x12, 0x35, + 0x0a, 0x08, 0x4c, 0x69, 0x66, 0x65, 0x73, 0x70, 0x61, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x4c, 0x69, 0x66, + 0x65, 0x73, 0x70, 0x61, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x44, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x55, 0x52, 0x4c, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x55, 0x52, 0x4c, 0x12, 0x18, 0x0a, 0x07, 0x43, 0x6f, 0x6e, + 0x6e, 0x65, 0x63, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x43, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x12, 0x2d, 0x0a, 0x0a, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, + 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, + 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x52, 0x0a, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, + 0x72, 0x73, 0x22, 0x58, 0x0a, 0x12, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x6c, 0x6c, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x61, 0x6c, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x78, + 0x70, 0x69, 0x72, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x78, 0x70, + 0x69, 0x72, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x22, 0x3e, 0x0a, 0x13, + 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x08, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x52, 0x08, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x22, 0xba, 0x01, 0x0a, + 0x0f, 0x4c, 0x69, 0x66, 0x65, 0x73, 0x70, 0x61, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, + 0x12, 0x35, 0x0a, 0x08, 0x4c, 0x69, 0x66, 0x65, 0x73, 0x70, 0x61, 0x6e, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x4c, + 0x69, 0x66, 0x65, 0x73, 0x70, 0x61, 0x6e, 0x12, 0x32, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x66, + 0x65, 0x73, 0x70, 0x61, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x74, + 0x68, 0x6f, 0x64, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0x2c, 0x0a, 0x06, 0x4d, + 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x43, 0x45, + 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x44, 0x44, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x53, + 0x55, 0x42, 0x54, 0x52, 0x41, 0x43, 0x54, 0x10, 0x02, 0x22, 0xbc, 0x02, 0x0a, 0x14, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, + 0x49, 0x44, 0x12, 0x35, 0x0a, 0x08, 0x4c, 0x69, 0x66, 0x65, 0x73, 0x70, 0x61, 0x6e, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x08, 0x4c, 0x69, 0x66, 0x65, 0x73, 0x70, 0x61, 0x6e, 0x12, 0x48, 0x0a, 0x0a, 0x50, 0x61, 0x72, + 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, + 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, + 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, + 0x65, 0x72, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x4e, 0x6f, 0x53, 0x6c, 0x61, 0x63, 0x6b, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x4e, 0x6f, 0x53, 0x6c, 0x61, 0x63, 0x6b, 0x12, + 0x18, 0x0a, 0x07, 0x53, 0x6c, 0x61, 0x63, 0x6b, 0x44, 0x4d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x07, 0x53, 0x6c, 0x61, 0x63, 0x6b, 0x44, 0x4d, 0x1a, 0x3d, 0x0a, 0x0f, 0x50, 0x61, 0x72, + 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x66, 0x0a, 0x08, 0x41, 0x72, 0x74, 0x69, + 0x66, 0x61, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x44, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x44, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x55, 0x52, + 0x4c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x55, 0x52, 0x4c, 0x12, 0x12, 0x0a, 0x04, + 0x4d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x4d, 0x6f, 0x64, 0x65, + 0x22, 0x3e, 0x0a, 0x10, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x41, 0x72, 0x74, 0x69, 0x66, + 0x61, 0x63, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x09, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x72, 0x74, + 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x09, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, + 0x22, 0x7d, 0x0a, 0x03, 0x4c, 0x6f, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x07, 0x53, + 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, + 0x64, 0x12, 0x12, 0x0a, 0x04, 0x42, 0x6f, 0x64, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x04, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, + 0x2b, 0x0a, 0x0c, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x1b, 0x0a, 0x04, 0x4c, 0x6f, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x07, 0x2e, + 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x52, 0x04, 0x4c, 0x6f, 0x67, 0x73, 0x22, 0x37, 0x0a, 0x11, + 0x43, 0x6c, 0x69, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x6f, + 0x73, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x61, 0x72, 0x63, 0x68, 0x22, 0x32, 0x0a, 0x12, 0x43, 0x6c, 0x69, 0x55, 0x70, 0x67, 0x72, + 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x66, + 0x69, 0x6c, 0x65, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, + 0x66, 0x69, 0x6c, 0x65, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x22, 0x5b, 0x0a, 0x0b, 0x49, 0x6e, 0x66, + 0x72, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x4d, 0x61, 0x69, 0x6e, + 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x11, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, + 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x61, + 0x69, 0x6e, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x4d, 0x61, 0x69, 0x6e, + 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x2a, 0x4b, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, + 0x43, 0x52, 0x45, 0x41, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x52, 0x45, + 0x41, 0x44, 0x59, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, + 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x49, 0x4e, 0x49, 0x53, 0x48, 0x45, + 0x44, 0x10, 0x04, 0x32, 0x58, 0x0a, 0x0e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x46, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x56, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x0b, 0x2e, 0x76, 0x31, + 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x13, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0d, + 0x12, 0x0b, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x32, 0xf4, 0x01, + 0x0a, 0x0b, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x48, 0x0a, + 0x06, 0x57, 0x68, 0x6f, 0x61, 0x6d, 0x69, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, + 0x12, 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x68, 0x6f, 0x61, 0x6d, 0x69, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x12, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0c, 0x12, 0x0a, 0x2f, 0x76, 0x31, + 0x2f, 0x77, 0x68, 0x6f, 0x61, 0x6d, 0x69, 0x12, 0x51, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x12, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x11, 0x2e, 0x76, 0x31, 0x2e, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1b, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x3a, 0x01, 0x2a, 0x22, 0x10, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x6f, + 0x6b, 0x65, 0x6e, 0x2d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x48, 0x0a, 0x05, 0x54, 0x6f, + 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x11, 0x2e, 0x76, 0x31, + 0x2e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x14, + 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0e, 0x3a, 0x01, 0x2a, 0x22, 0x09, 0x2f, 0x76, 0x31, 0x2f, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x32, 0x99, 0x01, 0x0a, 0x0d, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x49, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x15, + 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6c, 0x61, 0x76, 0x6f, + 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x12, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x0c, 0x12, 0x0a, 0x2f, 0x76, 0x31, 0x2f, 0x66, 0x6c, 0x61, 0x76, 0x6f, + 0x72, 0x12, 0x3d, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10, 0x2e, 0x76, 0x31, 0x2e, 0x52, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x79, 0x49, 0x44, 0x1a, 0x0a, 0x2e, 0x76, 0x31, + 0x2e, 0x46, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x22, 0x17, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x11, 0x12, + 0x0f, 0x2f, 0x76, 0x31, 0x2f, 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x2f, 0x7b, 0x69, 0x64, 0x7d, + 0x32, 0xc1, 0x04, 0x0a, 0x0e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x12, 0x3f, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10, 0x2e, 0x76, 0x31, + 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x79, 0x49, 0x44, 0x1a, 0x0b, 0x2e, + 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x22, 0x18, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x12, 0x12, 0x10, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2f, + 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x4c, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, 0x76, + 0x31, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, + 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x13, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x0d, 0x12, 0x0b, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x12, 0x60, 0x0a, 0x08, 0x4c, 0x69, 0x66, 0x65, 0x73, 0x70, 0x61, 0x6e, 0x12, 0x13, + 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x66, 0x65, 0x73, 0x70, 0x61, 0x6e, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x24, + 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1e, 0x3a, 0x01, 0x2a, 0x22, 0x19, 0x2f, 0x76, 0x31, 0x2f, 0x63, + 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x2f, 0x6c, 0x69, 0x66, 0x65, + 0x73, 0x70, 0x61, 0x6e, 0x12, 0x4c, 0x0a, 0x06, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x18, + 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, + 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x79, 0x49, 0x44, 0x22, 0x16, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x10, 0x3a, 0x01, 0x2a, 0x22, 0x0b, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x12, 0x57, 0x0a, 0x09, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x12, + 0x10, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x79, 0x49, + 0x44, 0x1a, 0x14, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x41, 0x72, + 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x12, + 0x1a, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2f, 0x7b, 0x69, 0x64, + 0x7d, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x12, 0x4c, 0x0a, 0x06, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x10, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x42, 0x79, 0x49, 0x44, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, + 0x18, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x12, 0x2a, 0x10, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6c, 0x75, + 0x73, 0x74, 0x65, 0x72, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x49, 0x0a, 0x04, 0x4c, 0x6f, 0x67, + 0x73, 0x12, 0x10, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, + 0x79, 0x49, 0x44, 0x1a, 0x10, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x17, 0x12, 0x15, 0x2f, + 0x76, 0x31, 0x2f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x2f, + 0x6c, 0x6f, 0x67, 0x73, 0x32, 0x6d, 0x0a, 0x0a, 0x43, 0x6c, 0x69, 0x53, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x12, 0x5f, 0x0a, 0x07, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x12, 0x15, 0x2e, + 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x69, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x69, 0x55, 0x70, 0x67, + 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x23, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x1d, 0x12, 0x1b, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6c, 0x69, 0x2f, 0x7b, 0x6f, + 0x73, 0x7d, 0x2f, 0x7b, 0x61, 0x72, 0x63, 0x68, 0x7d, 0x2f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, + 0x65, 0x30, 0x01, 0x32, 0xed, 0x01, 0x0a, 0x12, 0x49, 0x6e, 0x66, 0x72, 0x61, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x48, 0x0a, 0x09, 0x47, 0x65, + 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, + 0x0f, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x66, 0x72, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x22, 0x12, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0c, 0x12, 0x0a, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x4a, 0x0a, 0x0b, 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x0f, 0x2e, 0x76, 0x31, + 0x2e, 0x49, 0x6e, 0x66, 0x72, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x12, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x0c, 0x2a, 0x0a, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x41, 0x0a, 0x09, 0x53, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0f, 0x2e, + 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x66, 0x72, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x1a, 0x0f, + 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x66, 0x72, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, + 0x12, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0c, 0x1a, 0x0a, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x42, 0x08, 0x5a, 0x06, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x31, 0x62, 0x06, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_service_proto_rawDescOnce sync.Once + file_service_proto_rawDescData = file_service_proto_rawDesc +) -func _InfraStatusService_SetStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(InfraStatus) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(InfraStatusServiceServer).SetStatus(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/v1.InfraStatusService/SetStatus", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(InfraStatusServiceServer).SetStatus(ctx, req.(*InfraStatus)) +func file_service_proto_rawDescGZIP() []byte { + file_service_proto_rawDescOnce.Do(func() { + file_service_proto_rawDescData = protoimpl.X.CompressGZIP(file_service_proto_rawDescData) + }) + return file_service_proto_rawDescData +} + +var file_service_proto_enumTypes = make([]protoimpl.EnumInfo, 3) +var file_service_proto_msgTypes = make([]protoimpl.MessageInfo, 27) +var file_service_proto_goTypes = []any{ + (Status)(0), // 0: v1.Status + (FlavorAvailability)(0), // 1: v1.Flavor.availability + (LifespanRequest_Method)(0), // 2: v1.LifespanRequest.Method + (*ResourceByID)(nil), // 3: v1.ResourceByID + (*Version)(nil), // 4: v1.Version + (*WhoamiResponse)(nil), // 5: v1.WhoamiResponse + (*User)(nil), // 6: v1.User + (*ServiceAccount)(nil), // 7: v1.ServiceAccount + (*TokenResponse)(nil), // 8: v1.TokenResponse + (*Parameter)(nil), // 9: v1.Parameter + (*FlavorArtifact)(nil), // 10: v1.FlavorArtifact + (*Flavor)(nil), // 11: v1.Flavor + (*FlavorListRequest)(nil), // 12: v1.FlavorListRequest + (*FlavorListResponse)(nil), // 13: v1.FlavorListResponse + (*Cluster)(nil), // 14: v1.Cluster + (*ClusterListRequest)(nil), // 15: v1.ClusterListRequest + (*ClusterListResponse)(nil), // 16: v1.ClusterListResponse + (*LifespanRequest)(nil), // 17: v1.LifespanRequest + (*CreateClusterRequest)(nil), // 18: v1.CreateClusterRequest + (*Artifact)(nil), // 19: v1.Artifact + (*ClusterArtifacts)(nil), // 20: v1.ClusterArtifacts + (*Log)(nil), // 21: v1.Log + (*LogsResponse)(nil), // 22: v1.LogsResponse + (*CliUpgradeRequest)(nil), // 23: v1.CliUpgradeRequest + (*CliUpgradeResponse)(nil), // 24: v1.CliUpgradeResponse + (*InfraStatus)(nil), // 25: v1.InfraStatus + nil, // 26: v1.FlavorArtifact.TagsEntry + nil, // 27: v1.Flavor.ParametersEntry + nil, // 28: v1.Flavor.ArtifactsEntry + nil, // 29: v1.CreateClusterRequest.ParametersEntry + (*timestamppb.Timestamp)(nil), // 30: google.protobuf.Timestamp + (*durationpb.Duration)(nil), // 31: google.protobuf.Duration + (*emptypb.Empty)(nil), // 32: google.protobuf.Empty +} +var file_service_proto_depIdxs = []int32{ + 30, // 0: v1.Version.BuildDate:type_name -> google.protobuf.Timestamp + 6, // 1: v1.WhoamiResponse.User:type_name -> v1.User + 7, // 2: v1.WhoamiResponse.ServiceAccount:type_name -> v1.ServiceAccount + 30, // 3: v1.User.Expiry:type_name -> google.protobuf.Timestamp + 7, // 4: v1.TokenResponse.Account:type_name -> v1.ServiceAccount + 26, // 5: v1.FlavorArtifact.Tags:type_name -> v1.FlavorArtifact.TagsEntry + 1, // 6: v1.Flavor.Availability:type_name -> v1.Flavor.availability + 27, // 7: v1.Flavor.Parameters:type_name -> v1.Flavor.ParametersEntry + 28, // 8: v1.Flavor.Artifacts:type_name -> v1.Flavor.ArtifactsEntry + 11, // 9: v1.FlavorListResponse.Flavors:type_name -> v1.Flavor + 0, // 10: v1.Cluster.Status:type_name -> v1.Status + 30, // 11: v1.Cluster.CreatedOn:type_name -> google.protobuf.Timestamp + 30, // 12: v1.Cluster.DestroyedOn:type_name -> google.protobuf.Timestamp + 31, // 13: v1.Cluster.Lifespan:type_name -> google.protobuf.Duration + 9, // 14: v1.Cluster.Parameters:type_name -> v1.Parameter + 14, // 15: v1.ClusterListResponse.Clusters:type_name -> v1.Cluster + 31, // 16: v1.LifespanRequest.Lifespan:type_name -> google.protobuf.Duration + 2, // 17: v1.LifespanRequest.method:type_name -> v1.LifespanRequest.Method + 31, // 18: v1.CreateClusterRequest.Lifespan:type_name -> google.protobuf.Duration + 29, // 19: v1.CreateClusterRequest.Parameters:type_name -> v1.CreateClusterRequest.ParametersEntry + 19, // 20: v1.ClusterArtifacts.Artifacts:type_name -> v1.Artifact + 30, // 21: v1.Log.Started:type_name -> google.protobuf.Timestamp + 21, // 22: v1.LogsResponse.Logs:type_name -> v1.Log + 32, // 23: v1.FlavorArtifact.TagsEntry.value:type_name -> google.protobuf.Empty + 9, // 24: v1.Flavor.ParametersEntry.value:type_name -> v1.Parameter + 10, // 25: v1.Flavor.ArtifactsEntry.value:type_name -> v1.FlavorArtifact + 32, // 26: v1.VersionService.GetVersion:input_type -> google.protobuf.Empty + 32, // 27: v1.UserService.Whoami:input_type -> google.protobuf.Empty + 7, // 28: v1.UserService.CreateToken:input_type -> v1.ServiceAccount + 32, // 29: v1.UserService.Token:input_type -> google.protobuf.Empty + 12, // 30: v1.FlavorService.List:input_type -> v1.FlavorListRequest + 3, // 31: v1.FlavorService.Info:input_type -> v1.ResourceByID + 3, // 32: v1.ClusterService.Info:input_type -> v1.ResourceByID + 15, // 33: v1.ClusterService.List:input_type -> v1.ClusterListRequest + 17, // 34: v1.ClusterService.Lifespan:input_type -> v1.LifespanRequest + 18, // 35: v1.ClusterService.Create:input_type -> v1.CreateClusterRequest + 3, // 36: v1.ClusterService.Artifacts:input_type -> v1.ResourceByID + 3, // 37: v1.ClusterService.Delete:input_type -> v1.ResourceByID + 3, // 38: v1.ClusterService.Logs:input_type -> v1.ResourceByID + 23, // 39: v1.CliService.Upgrade:input_type -> v1.CliUpgradeRequest + 32, // 40: v1.InfraStatusService.GetStatus:input_type -> google.protobuf.Empty + 32, // 41: v1.InfraStatusService.ResetStatus:input_type -> google.protobuf.Empty + 25, // 42: v1.InfraStatusService.SetStatus:input_type -> v1.InfraStatus + 4, // 43: v1.VersionService.GetVersion:output_type -> v1.Version + 5, // 44: v1.UserService.Whoami:output_type -> v1.WhoamiResponse + 8, // 45: v1.UserService.CreateToken:output_type -> v1.TokenResponse + 8, // 46: v1.UserService.Token:output_type -> v1.TokenResponse + 13, // 47: v1.FlavorService.List:output_type -> v1.FlavorListResponse + 11, // 48: v1.FlavorService.Info:output_type -> v1.Flavor + 14, // 49: v1.ClusterService.Info:output_type -> v1.Cluster + 16, // 50: v1.ClusterService.List:output_type -> v1.ClusterListResponse + 31, // 51: v1.ClusterService.Lifespan:output_type -> google.protobuf.Duration + 3, // 52: v1.ClusterService.Create:output_type -> v1.ResourceByID + 20, // 53: v1.ClusterService.Artifacts:output_type -> v1.ClusterArtifacts + 32, // 54: v1.ClusterService.Delete:output_type -> google.protobuf.Empty + 22, // 55: v1.ClusterService.Logs:output_type -> v1.LogsResponse + 24, // 56: v1.CliService.Upgrade:output_type -> v1.CliUpgradeResponse + 25, // 57: v1.InfraStatusService.GetStatus:output_type -> v1.InfraStatus + 25, // 58: v1.InfraStatusService.ResetStatus:output_type -> v1.InfraStatus + 25, // 59: v1.InfraStatusService.SetStatus:output_type -> v1.InfraStatus + 43, // [43:60] is the sub-list for method output_type + 26, // [26:43] is the sub-list for method input_type + 26, // [26:26] is the sub-list for extension type_name + 26, // [26:26] is the sub-list for extension extendee + 0, // [0:26] is the sub-list for field type_name +} + +func init() { file_service_proto_init() } +func file_service_proto_init() { + if File_service_proto != nil { + return + } + file_service_proto_msgTypes[2].OneofWrappers = []any{ + (*WhoamiResponse_User)(nil), + (*WhoamiResponse_ServiceAccount)(nil), } - return interceptor(ctx, in, info, handler) -} - -var _InfraStatusService_serviceDesc = grpc.ServiceDesc{ - ServiceName: "v1.InfraStatusService", - HandlerType: (*InfraStatusServiceServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "GetStatus", - Handler: _InfraStatusService_GetStatus_Handler, - }, - { - MethodName: "ResetStatus", - Handler: _InfraStatusService_ResetStatus_Handler, - }, - { - MethodName: "SetStatus", - Handler: _InfraStatusService_SetStatus_Handler, + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_service_proto_rawDesc, + NumEnums: 3, + NumMessages: 27, + NumExtensions: 0, + NumServices: 6, }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "service.proto", + GoTypes: file_service_proto_goTypes, + DependencyIndexes: file_service_proto_depIdxs, + EnumInfos: file_service_proto_enumTypes, + MessageInfos: file_service_proto_msgTypes, + }.Build() + File_service_proto = out.File + file_service_proto_rawDesc = nil + file_service_proto_goTypes = nil + file_service_proto_depIdxs = nil } diff --git a/generated/api/v1/service.pb.gw.go b/generated/api/v1/service.pb.gw.go index 9f92bd7ee..2283773a7 100644 --- a/generated/api/v1/service.pb.gw.go +++ b/generated/api/v1/service.pb.gw.go @@ -10,605 +10,448 @@ package v1 import ( "context" + "errors" "io" "net/http" - "github.com/golang/protobuf/descriptor" - "github.com/golang/protobuf/proto" - "github.com/grpc-ecosystem/grpc-gateway/runtime" - "github.com/grpc-ecosystem/grpc-gateway/utilities" + "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" + "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" "google.golang.org/grpc" "google.golang.org/grpc/codes" "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/metadata" "google.golang.org/grpc/status" + "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/emptypb" ) // Suppress "imported and not used" errors -var _ codes.Code -var _ io.Reader -var _ status.Status -var _ = runtime.String -var _ = utilities.NewDoubleArray -var _ = descriptor.ForMessage +var ( + _ codes.Code + _ io.Reader + _ status.Status + _ = errors.New + _ = runtime.String + _ = utilities.NewDoubleArray + _ = metadata.Join +) func request_VersionService_GetVersion_0(ctx context.Context, marshaler runtime.Marshaler, client VersionServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq emptypb.Empty - var metadata runtime.ServerMetadata - + var ( + protoReq emptypb.Empty + metadata runtime.ServerMetadata + ) msg, err := client.GetVersion(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err - } func local_request_VersionService_GetVersion_0(ctx context.Context, marshaler runtime.Marshaler, server VersionServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq emptypb.Empty - var metadata runtime.ServerMetadata - + var ( + protoReq emptypb.Empty + metadata runtime.ServerMetadata + ) msg, err := server.GetVersion(ctx, &protoReq) return msg, metadata, err - } func request_UserService_Whoami_0(ctx context.Context, marshaler runtime.Marshaler, client UserServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq emptypb.Empty - var metadata runtime.ServerMetadata - + var ( + protoReq emptypb.Empty + metadata runtime.ServerMetadata + ) msg, err := client.Whoami(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err - } func local_request_UserService_Whoami_0(ctx context.Context, marshaler runtime.Marshaler, server UserServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq emptypb.Empty - var metadata runtime.ServerMetadata - + var ( + protoReq emptypb.Empty + metadata runtime.ServerMetadata + ) msg, err := server.Whoami(ctx, &protoReq) return msg, metadata, err - } func request_UserService_CreateToken_0(ctx context.Context, marshaler runtime.Marshaler, client UserServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ServiceAccount - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + var ( + protoReq ServiceAccount + metadata runtime.ServerMetadata + ) + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && !errors.Is(err, io.EOF) { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.CreateToken(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err - } func local_request_UserService_CreateToken_0(ctx context.Context, marshaler runtime.Marshaler, server UserServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ServiceAccount - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + var ( + protoReq ServiceAccount + metadata runtime.ServerMetadata + ) + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && !errors.Is(err, io.EOF) { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := server.CreateToken(ctx, &protoReq) return msg, metadata, err - } func request_UserService_Token_0(ctx context.Context, marshaler runtime.Marshaler, client UserServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq emptypb.Empty - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + var ( + protoReq emptypb.Empty + metadata runtime.ServerMetadata + ) + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && !errors.Is(err, io.EOF) { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.Token(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err - } func local_request_UserService_Token_0(ctx context.Context, marshaler runtime.Marshaler, server UserServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq emptypb.Empty - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + var ( + protoReq emptypb.Empty + metadata runtime.ServerMetadata + ) + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && !errors.Is(err, io.EOF) { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := server.Token(ctx, &protoReq) return msg, metadata, err - } -var ( - filter_FlavorService_List_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} -) +var filter_FlavorService_List_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} func request_FlavorService_List_0(ctx context.Context, marshaler runtime.Marshaler, client FlavorServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq FlavorListRequest - var metadata runtime.ServerMetadata - + var ( + protoReq FlavorListRequest + metadata runtime.ServerMetadata + ) if err := req.ParseForm(); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_FlavorService_List_0); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.List(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err - } func local_request_FlavorService_List_0(ctx context.Context, marshaler runtime.Marshaler, server FlavorServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq FlavorListRequest - var metadata runtime.ServerMetadata - - if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_FlavorService_List_0); err != nil { + var ( + protoReq FlavorListRequest + metadata runtime.ServerMetadata + ) + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_FlavorService_List_0); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := server.List(ctx, &protoReq) return msg, metadata, err - } func request_FlavorService_Info_0(ctx context.Context, marshaler runtime.Marshaler, client FlavorServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ResourceByID - var metadata runtime.ServerMetadata - var ( - val string - ok bool - err error - _ = err + protoReq ResourceByID + metadata runtime.ServerMetadata + err error ) - - val, ok = pathParams["id"] + val, ok := pathParams["id"] if !ok { return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") } - protoReq.Id, err = runtime.String(val) - if err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) } - msg, err := client.Info(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err - } func local_request_FlavorService_Info_0(ctx context.Context, marshaler runtime.Marshaler, server FlavorServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ResourceByID - var metadata runtime.ServerMetadata - var ( - val string - ok bool - err error - _ = err + protoReq ResourceByID + metadata runtime.ServerMetadata + err error ) - - val, ok = pathParams["id"] + val, ok := pathParams["id"] if !ok { return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") } - protoReq.Id, err = runtime.String(val) - if err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) } - msg, err := server.Info(ctx, &protoReq) return msg, metadata, err - } func request_ClusterService_Info_0(ctx context.Context, marshaler runtime.Marshaler, client ClusterServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ResourceByID - var metadata runtime.ServerMetadata - var ( - val string - ok bool - err error - _ = err + protoReq ResourceByID + metadata runtime.ServerMetadata + err error ) - - val, ok = pathParams["id"] + val, ok := pathParams["id"] if !ok { return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") } - protoReq.Id, err = runtime.String(val) - if err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) } - msg, err := client.Info(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err - } func local_request_ClusterService_Info_0(ctx context.Context, marshaler runtime.Marshaler, server ClusterServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ResourceByID - var metadata runtime.ServerMetadata - var ( - val string - ok bool - err error - _ = err + protoReq ResourceByID + metadata runtime.ServerMetadata + err error ) - - val, ok = pathParams["id"] + val, ok := pathParams["id"] if !ok { return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") } - protoReq.Id, err = runtime.String(val) - if err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) } - msg, err := server.Info(ctx, &protoReq) return msg, metadata, err - } -var ( - filter_ClusterService_List_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} -) +var filter_ClusterService_List_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} func request_ClusterService_List_0(ctx context.Context, marshaler runtime.Marshaler, client ClusterServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ClusterListRequest - var metadata runtime.ServerMetadata - + var ( + protoReq ClusterListRequest + metadata runtime.ServerMetadata + ) if err := req.ParseForm(); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_ClusterService_List_0); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.List(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err - } func local_request_ClusterService_List_0(ctx context.Context, marshaler runtime.Marshaler, server ClusterServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ClusterListRequest - var metadata runtime.ServerMetadata - - if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_ClusterService_List_0); err != nil { + var ( + protoReq ClusterListRequest + metadata runtime.ServerMetadata + ) + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_ClusterService_List_0); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := server.List(ctx, &protoReq) return msg, metadata, err - } func request_ClusterService_Lifespan_0(ctx context.Context, marshaler runtime.Marshaler, client ClusterServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq LifespanRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - var ( - val string - ok bool - err error - _ = err + protoReq LifespanRequest + metadata runtime.ServerMetadata + err error ) - - val, ok = pathParams["id"] + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && !errors.Is(err, io.EOF) { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + val, ok := pathParams["id"] if !ok { return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") } - protoReq.Id, err = runtime.String(val) - if err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) } - msg, err := client.Lifespan(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err - } func local_request_ClusterService_Lifespan_0(ctx context.Context, marshaler runtime.Marshaler, server ClusterServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq LifespanRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - var ( - val string - ok bool - err error - _ = err + protoReq LifespanRequest + metadata runtime.ServerMetadata + err error ) - - val, ok = pathParams["id"] + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && !errors.Is(err, io.EOF) { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + val, ok := pathParams["id"] if !ok { return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") } - protoReq.Id, err = runtime.String(val) - if err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) } - msg, err := server.Lifespan(ctx, &protoReq) return msg, metadata, err - } func request_ClusterService_Create_0(ctx context.Context, marshaler runtime.Marshaler, client ClusterServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq CreateClusterRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + var ( + protoReq CreateClusterRequest + metadata runtime.ServerMetadata + ) + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && !errors.Is(err, io.EOF) { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.Create(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err - } func local_request_ClusterService_Create_0(ctx context.Context, marshaler runtime.Marshaler, server ClusterServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq CreateClusterRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + var ( + protoReq CreateClusterRequest + metadata runtime.ServerMetadata + ) + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && !errors.Is(err, io.EOF) { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := server.Create(ctx, &protoReq) return msg, metadata, err - } func request_ClusterService_Artifacts_0(ctx context.Context, marshaler runtime.Marshaler, client ClusterServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ResourceByID - var metadata runtime.ServerMetadata - var ( - val string - ok bool - err error - _ = err + protoReq ResourceByID + metadata runtime.ServerMetadata + err error ) - - val, ok = pathParams["id"] + val, ok := pathParams["id"] if !ok { return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") } - protoReq.Id, err = runtime.String(val) - if err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) } - msg, err := client.Artifacts(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err - } func local_request_ClusterService_Artifacts_0(ctx context.Context, marshaler runtime.Marshaler, server ClusterServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ResourceByID - var metadata runtime.ServerMetadata - var ( - val string - ok bool - err error - _ = err + protoReq ResourceByID + metadata runtime.ServerMetadata + err error ) - - val, ok = pathParams["id"] + val, ok := pathParams["id"] if !ok { return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") } - protoReq.Id, err = runtime.String(val) - if err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) } - msg, err := server.Artifacts(ctx, &protoReq) return msg, metadata, err - } func request_ClusterService_Delete_0(ctx context.Context, marshaler runtime.Marshaler, client ClusterServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ResourceByID - var metadata runtime.ServerMetadata - var ( - val string - ok bool - err error - _ = err + protoReq ResourceByID + metadata runtime.ServerMetadata + err error ) - - val, ok = pathParams["id"] + val, ok := pathParams["id"] if !ok { return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") } - protoReq.Id, err = runtime.String(val) - if err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) } - msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err - } func local_request_ClusterService_Delete_0(ctx context.Context, marshaler runtime.Marshaler, server ClusterServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ResourceByID - var metadata runtime.ServerMetadata - var ( - val string - ok bool - err error - _ = err + protoReq ResourceByID + metadata runtime.ServerMetadata + err error ) - - val, ok = pathParams["id"] + val, ok := pathParams["id"] if !ok { return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") } - protoReq.Id, err = runtime.String(val) - if err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) } - msg, err := server.Delete(ctx, &protoReq) return msg, metadata, err - } func request_ClusterService_Logs_0(ctx context.Context, marshaler runtime.Marshaler, client ClusterServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ResourceByID - var metadata runtime.ServerMetadata - var ( - val string - ok bool - err error - _ = err + protoReq ResourceByID + metadata runtime.ServerMetadata + err error ) - - val, ok = pathParams["id"] + val, ok := pathParams["id"] if !ok { return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") } - protoReq.Id, err = runtime.String(val) - if err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) } - msg, err := client.Logs(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err - } func local_request_ClusterService_Logs_0(ctx context.Context, marshaler runtime.Marshaler, server ClusterServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ResourceByID - var metadata runtime.ServerMetadata - var ( - val string - ok bool - err error - _ = err + protoReq ResourceByID + metadata runtime.ServerMetadata + err error ) - - val, ok = pathParams["id"] + val, ok := pathParams["id"] if !ok { return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") } - protoReq.Id, err = runtime.String(val) - if err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) } - msg, err := server.Logs(ctx, &protoReq) return msg, metadata, err - } func request_CliService_Upgrade_0(ctx context.Context, marshaler runtime.Marshaler, client CliServiceClient, req *http.Request, pathParams map[string]string) (CliService_UpgradeClient, runtime.ServerMetadata, error) { - var protoReq CliUpgradeRequest - var metadata runtime.ServerMetadata - var ( - val string - ok bool - err error - _ = err + protoReq CliUpgradeRequest + metadata runtime.ServerMetadata + err error ) - - val, ok = pathParams["os"] + val, ok := pathParams["os"] if !ok { return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "os") } - protoReq.Os, err = runtime.String(val) - if err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "os", err) } - val, ok = pathParams["arch"] if !ok { return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "arch") } - protoReq.Arch, err = runtime.String(val) - if err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "arch", err) } - stream, err := client.Upgrade(ctx, &protoReq) if err != nil { return nil, metadata, err @@ -619,101 +462,101 @@ func request_CliService_Upgrade_0(ctx context.Context, marshaler runtime.Marshal } metadata.HeaderMD = header return stream, metadata, nil - } func request_InfraStatusService_GetStatus_0(ctx context.Context, marshaler runtime.Marshaler, client InfraStatusServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq emptypb.Empty - var metadata runtime.ServerMetadata - + var ( + protoReq emptypb.Empty + metadata runtime.ServerMetadata + ) msg, err := client.GetStatus(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err - } func local_request_InfraStatusService_GetStatus_0(ctx context.Context, marshaler runtime.Marshaler, server InfraStatusServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq emptypb.Empty - var metadata runtime.ServerMetadata - + var ( + protoReq emptypb.Empty + metadata runtime.ServerMetadata + ) msg, err := server.GetStatus(ctx, &protoReq) return msg, metadata, err - } func request_InfraStatusService_ResetStatus_0(ctx context.Context, marshaler runtime.Marshaler, client InfraStatusServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq emptypb.Empty - var metadata runtime.ServerMetadata - + var ( + protoReq emptypb.Empty + metadata runtime.ServerMetadata + ) msg, err := client.ResetStatus(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err - } func local_request_InfraStatusService_ResetStatus_0(ctx context.Context, marshaler runtime.Marshaler, server InfraStatusServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq emptypb.Empty - var metadata runtime.ServerMetadata - + var ( + protoReq emptypb.Empty + metadata runtime.ServerMetadata + ) msg, err := server.ResetStatus(ctx, &protoReq) return msg, metadata, err - } -var ( - filter_InfraStatusService_SetStatus_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} -) +var filter_InfraStatusService_SetStatus_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} func request_InfraStatusService_SetStatus_0(ctx context.Context, marshaler runtime.Marshaler, client InfraStatusServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq InfraStatus - var metadata runtime.ServerMetadata - + var ( + protoReq InfraStatus + metadata runtime.ServerMetadata + ) if err := req.ParseForm(); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_InfraStatusService_SetStatus_0); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.SetStatus(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err - } func local_request_InfraStatusService_SetStatus_0(ctx context.Context, marshaler runtime.Marshaler, server InfraStatusServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq InfraStatus - var metadata runtime.ServerMetadata - - if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_InfraStatusService_SetStatus_0); err != nil { + var ( + protoReq InfraStatus + metadata runtime.ServerMetadata + ) + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_InfraStatusService_SetStatus_0); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := server.SetStatus(ctx, &protoReq) return msg, metadata, err - } // RegisterVersionServiceHandlerServer registers the http handlers for service VersionService to "mux". // UnaryRPC :call VersionServiceServer directly. // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterVersionServiceHandlerFromEndpoint instead. +// GRPC interceptors will not work for this type of registration. To use interceptors, you must use the "runtime.WithMiddlewares" option in the "runtime.NewServeMux" call. func RegisterVersionServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server VersionServiceServer) error { - - mux.Handle("GET", pattern_VersionService_GetVersion_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_VersionService_GetVersion_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/v1.VersionService/GetVersion", runtime.WithHTTPPathPattern("/v1/version")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_VersionService_GetVersion_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := local_request_VersionService_GetVersion_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_VersionService_GetVersion_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_VersionService_GetVersion_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) return nil @@ -722,66 +565,68 @@ func RegisterVersionServiceHandlerServer(ctx context.Context, mux *runtime.Serve // RegisterUserServiceHandlerServer registers the http handlers for service UserService to "mux". // UnaryRPC :call UserServiceServer directly. // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterUserServiceHandlerFromEndpoint instead. +// GRPC interceptors will not work for this type of registration. To use interceptors, you must use the "runtime.WithMiddlewares" option in the "runtime.NewServeMux" call. func RegisterUserServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server UserServiceServer) error { - - mux.Handle("GET", pattern_UserService_Whoami_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_UserService_Whoami_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/v1.UserService/Whoami", runtime.WithHTTPPathPattern("/v1/whoami")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_UserService_Whoami_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := local_request_UserService_Whoami_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_UserService_Whoami_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_UserService_Whoami_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("POST", pattern_UserService_CreateToken_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodPost, pattern_UserService_CreateToken_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/v1.UserService/CreateToken", runtime.WithHTTPPathPattern("/v1/token-create")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_UserService_CreateToken_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := local_request_UserService_CreateToken_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_UserService_CreateToken_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_UserService_CreateToken_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("POST", pattern_UserService_Token_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodPost, pattern_UserService_Token_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/v1.UserService/Token", runtime.WithHTTPPathPattern("/v1/token")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_UserService_Token_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := local_request_UserService_Token_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_UserService_Token_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_UserService_Token_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) return nil @@ -790,46 +635,48 @@ func RegisterUserServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux // RegisterFlavorServiceHandlerServer registers the http handlers for service FlavorService to "mux". // UnaryRPC :call FlavorServiceServer directly. // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterFlavorServiceHandlerFromEndpoint instead. +// GRPC interceptors will not work for this type of registration. To use interceptors, you must use the "runtime.WithMiddlewares" option in the "runtime.NewServeMux" call. func RegisterFlavorServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server FlavorServiceServer) error { - - mux.Handle("GET", pattern_FlavorService_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_FlavorService_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/v1.FlavorService/List", runtime.WithHTTPPathPattern("/v1/flavor")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_FlavorService_List_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := local_request_FlavorService_List_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_FlavorService_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_FlavorService_List_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("GET", pattern_FlavorService_Info_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_FlavorService_Info_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/v1.FlavorService/Info", runtime.WithHTTPPathPattern("/v1/flavor/{id}")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_FlavorService_Info_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := local_request_FlavorService_Info_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_FlavorService_Info_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_FlavorService_Info_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) return nil @@ -838,146 +685,148 @@ func RegisterFlavorServiceHandlerServer(ctx context.Context, mux *runtime.ServeM // RegisterClusterServiceHandlerServer registers the http handlers for service ClusterService to "mux". // UnaryRPC :call ClusterServiceServer directly. // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterClusterServiceHandlerFromEndpoint instead. +// GRPC interceptors will not work for this type of registration. To use interceptors, you must use the "runtime.WithMiddlewares" option in the "runtime.NewServeMux" call. func RegisterClusterServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server ClusterServiceServer) error { - - mux.Handle("GET", pattern_ClusterService_Info_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_ClusterService_Info_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/v1.ClusterService/Info", runtime.WithHTTPPathPattern("/v1/cluster/{id}")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_ClusterService_Info_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := local_request_ClusterService_Info_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_ClusterService_Info_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_ClusterService_Info_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("GET", pattern_ClusterService_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_ClusterService_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/v1.ClusterService/List", runtime.WithHTTPPathPattern("/v1/cluster")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_ClusterService_List_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := local_request_ClusterService_List_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_ClusterService_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_ClusterService_List_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("POST", pattern_ClusterService_Lifespan_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodPost, pattern_ClusterService_Lifespan_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/v1.ClusterService/Lifespan", runtime.WithHTTPPathPattern("/v1/cluster/{id}/lifespan")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_ClusterService_Lifespan_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := local_request_ClusterService_Lifespan_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_ClusterService_Lifespan_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_ClusterService_Lifespan_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("POST", pattern_ClusterService_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodPost, pattern_ClusterService_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/v1.ClusterService/Create", runtime.WithHTTPPathPattern("/v1/cluster")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_ClusterService_Create_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := local_request_ClusterService_Create_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_ClusterService_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_ClusterService_Create_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("GET", pattern_ClusterService_Artifacts_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_ClusterService_Artifacts_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/v1.ClusterService/Artifacts", runtime.WithHTTPPathPattern("/v1/cluster/{id}/artifacts")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_ClusterService_Artifacts_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := local_request_ClusterService_Artifacts_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_ClusterService_Artifacts_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_ClusterService_Artifacts_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("DELETE", pattern_ClusterService_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodDelete, pattern_ClusterService_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/v1.ClusterService/Delete", runtime.WithHTTPPathPattern("/v1/cluster/{id}")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_ClusterService_Delete_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := local_request_ClusterService_Delete_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_ClusterService_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_ClusterService_Delete_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("GET", pattern_ClusterService_Logs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_ClusterService_Logs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/v1.ClusterService/Logs", runtime.WithHTTPPathPattern("/v1/cluster/{id}/logs")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_ClusterService_Logs_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := local_request_ClusterService_Logs_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_ClusterService_Logs_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_ClusterService_Logs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) return nil @@ -986,9 +835,10 @@ func RegisterClusterServiceHandlerServer(ctx context.Context, mux *runtime.Serve // RegisterCliServiceHandlerServer registers the http handlers for service CliService to "mux". // UnaryRPC :call CliServiceServer directly. // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterCliServiceHandlerFromEndpoint instead. +// GRPC interceptors will not work for this type of registration. To use interceptors, you must use the "runtime.WithMiddlewares" option in the "runtime.NewServeMux" call. func RegisterCliServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server CliServiceServer) error { - - mux.Handle("GET", pattern_CliService_Upgrade_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_CliService_Upgrade_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) @@ -1001,66 +851,68 @@ func RegisterCliServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, // RegisterInfraStatusServiceHandlerServer registers the http handlers for service InfraStatusService to "mux". // UnaryRPC :call InfraStatusServiceServer directly. // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterInfraStatusServiceHandlerFromEndpoint instead. +// GRPC interceptors will not work for this type of registration. To use interceptors, you must use the "runtime.WithMiddlewares" option in the "runtime.NewServeMux" call. func RegisterInfraStatusServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server InfraStatusServiceServer) error { - - mux.Handle("GET", pattern_InfraStatusService_GetStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_InfraStatusService_GetStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/v1.InfraStatusService/GetStatus", runtime.WithHTTPPathPattern("/v1/status")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_InfraStatusService_GetStatus_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := local_request_InfraStatusService_GetStatus_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_InfraStatusService_GetStatus_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_InfraStatusService_GetStatus_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("DELETE", pattern_InfraStatusService_ResetStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodDelete, pattern_InfraStatusService_ResetStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/v1.InfraStatusService/ResetStatus", runtime.WithHTTPPathPattern("/v1/status")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_InfraStatusService_ResetStatus_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := local_request_InfraStatusService_ResetStatus_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_InfraStatusService_ResetStatus_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_InfraStatusService_ResetStatus_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("PUT", pattern_InfraStatusService_SetStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodPut, pattern_InfraStatusService_SetStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/v1.InfraStatusService/SetStatus", runtime.WithHTTPPathPattern("/v1/status")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_InfraStatusService_SetStatus_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := local_request_InfraStatusService_SetStatus_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_InfraStatusService_SetStatus_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_InfraStatusService_SetStatus_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) return nil @@ -1069,25 +921,24 @@ func RegisterInfraStatusServiceHandlerServer(ctx context.Context, mux *runtime.S // RegisterVersionServiceHandlerFromEndpoint is same as RegisterVersionServiceHandler but // automatically dials to "endpoint" and closes the connection when "ctx" gets done. func RegisterVersionServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) + conn, err := grpc.NewClient(endpoint, opts...) if err != nil { return err } defer func() { if err != nil { if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) } return } go func() { <-ctx.Done() if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) } }() }() - return RegisterVersionServiceHandler(ctx, mux, conn) } @@ -1101,34 +952,30 @@ func RegisterVersionServiceHandler(ctx context.Context, mux *runtime.ServeMux, c // to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "VersionServiceClient". // Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "VersionServiceClient" // doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "VersionServiceClient" to call the correct interceptors. +// "VersionServiceClient" to call the correct interceptors. This client ignores the HTTP middlewares. func RegisterVersionServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client VersionServiceClient) error { - - mux.Handle("GET", pattern_VersionService_GetVersion_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_VersionService_GetVersion_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/v1.VersionService/GetVersion", runtime.WithHTTPPathPattern("/v1/version")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_VersionService_GetVersion_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := request_VersionService_GetVersion_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_VersionService_GetVersion_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_VersionService_GetVersion_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - return nil } var ( - pattern_VersionService_GetVersion_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "version"}, "", runtime.AssumeColonVerbOpt(true))) + pattern_VersionService_GetVersion_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "version"}, "")) ) var ( @@ -1138,25 +985,24 @@ var ( // RegisterUserServiceHandlerFromEndpoint is same as RegisterUserServiceHandler but // automatically dials to "endpoint" and closes the connection when "ctx" gets done. func RegisterUserServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) + conn, err := grpc.NewClient(endpoint, opts...) if err != nil { return err } defer func() { if err != nil { if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) } return } go func() { <-ctx.Done() if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) } }() }() - return RegisterUserServiceHandler(ctx, mux, conn) } @@ -1170,110 +1016,95 @@ func RegisterUserServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn // to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "UserServiceClient". // Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "UserServiceClient" // doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "UserServiceClient" to call the correct interceptors. +// "UserServiceClient" to call the correct interceptors. This client ignores the HTTP middlewares. func RegisterUserServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client UserServiceClient) error { - - mux.Handle("GET", pattern_UserService_Whoami_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_UserService_Whoami_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/v1.UserService/Whoami", runtime.WithHTTPPathPattern("/v1/whoami")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_UserService_Whoami_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := request_UserService_Whoami_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_UserService_Whoami_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_UserService_Whoami_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("POST", pattern_UserService_CreateToken_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodPost, pattern_UserService_CreateToken_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/v1.UserService/CreateToken", runtime.WithHTTPPathPattern("/v1/token-create")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_UserService_CreateToken_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := request_UserService_CreateToken_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_UserService_CreateToken_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_UserService_CreateToken_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("POST", pattern_UserService_Token_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodPost, pattern_UserService_Token_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/v1.UserService/Token", runtime.WithHTTPPathPattern("/v1/token")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_UserService_Token_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := request_UserService_Token_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_UserService_Token_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_UserService_Token_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - return nil } var ( - pattern_UserService_Whoami_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "whoami"}, "", runtime.AssumeColonVerbOpt(true))) - - pattern_UserService_CreateToken_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "token-create"}, "", runtime.AssumeColonVerbOpt(true))) - - pattern_UserService_Token_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "token"}, "", runtime.AssumeColonVerbOpt(true))) + pattern_UserService_Whoami_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "whoami"}, "")) + pattern_UserService_CreateToken_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "token-create"}, "")) + pattern_UserService_Token_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "token"}, "")) ) var ( - forward_UserService_Whoami_0 = runtime.ForwardResponseMessage - + forward_UserService_Whoami_0 = runtime.ForwardResponseMessage forward_UserService_CreateToken_0 = runtime.ForwardResponseMessage - - forward_UserService_Token_0 = runtime.ForwardResponseMessage + forward_UserService_Token_0 = runtime.ForwardResponseMessage ) // RegisterFlavorServiceHandlerFromEndpoint is same as RegisterFlavorServiceHandler but // automatically dials to "endpoint" and closes the connection when "ctx" gets done. func RegisterFlavorServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) + conn, err := grpc.NewClient(endpoint, opts...) if err != nil { return err } defer func() { if err != nil { if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) } return } go func() { <-ctx.Done() if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) } }() }() - return RegisterFlavorServiceHandler(ctx, mux, conn) } @@ -1287,86 +1118,76 @@ func RegisterFlavorServiceHandler(ctx context.Context, mux *runtime.ServeMux, co // to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "FlavorServiceClient". // Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "FlavorServiceClient" // doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "FlavorServiceClient" to call the correct interceptors. +// "FlavorServiceClient" to call the correct interceptors. This client ignores the HTTP middlewares. func RegisterFlavorServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client FlavorServiceClient) error { - - mux.Handle("GET", pattern_FlavorService_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_FlavorService_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/v1.FlavorService/List", runtime.WithHTTPPathPattern("/v1/flavor")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_FlavorService_List_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := request_FlavorService_List_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_FlavorService_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_FlavorService_List_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("GET", pattern_FlavorService_Info_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_FlavorService_Info_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/v1.FlavorService/Info", runtime.WithHTTPPathPattern("/v1/flavor/{id}")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_FlavorService_Info_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := request_FlavorService_Info_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_FlavorService_Info_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_FlavorService_Info_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - return nil } var ( - pattern_FlavorService_List_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "flavor"}, "", runtime.AssumeColonVerbOpt(true))) - - pattern_FlavorService_Info_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"v1", "flavor", "id"}, "", runtime.AssumeColonVerbOpt(true))) + pattern_FlavorService_List_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "flavor"}, "")) + pattern_FlavorService_Info_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"v1", "flavor", "id"}, "")) ) var ( forward_FlavorService_List_0 = runtime.ForwardResponseMessage - forward_FlavorService_Info_0 = runtime.ForwardResponseMessage ) // RegisterClusterServiceHandlerFromEndpoint is same as RegisterClusterServiceHandler but // automatically dials to "endpoint" and closes the connection when "ctx" gets done. func RegisterClusterServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) + conn, err := grpc.NewClient(endpoint, opts...) if err != nil { return err } defer func() { if err != nil { if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) } return } go func() { <-ctx.Done() if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) } }() }() - return RegisterClusterServiceHandler(ctx, mux, conn) } @@ -1380,206 +1201,171 @@ func RegisterClusterServiceHandler(ctx context.Context, mux *runtime.ServeMux, c // to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "ClusterServiceClient". // Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "ClusterServiceClient" // doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "ClusterServiceClient" to call the correct interceptors. +// "ClusterServiceClient" to call the correct interceptors. This client ignores the HTTP middlewares. func RegisterClusterServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client ClusterServiceClient) error { - - mux.Handle("GET", pattern_ClusterService_Info_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_ClusterService_Info_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/v1.ClusterService/Info", runtime.WithHTTPPathPattern("/v1/cluster/{id}")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_ClusterService_Info_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := request_ClusterService_Info_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_ClusterService_Info_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_ClusterService_Info_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("GET", pattern_ClusterService_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_ClusterService_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/v1.ClusterService/List", runtime.WithHTTPPathPattern("/v1/cluster")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_ClusterService_List_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := request_ClusterService_List_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_ClusterService_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_ClusterService_List_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("POST", pattern_ClusterService_Lifespan_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodPost, pattern_ClusterService_Lifespan_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/v1.ClusterService/Lifespan", runtime.WithHTTPPathPattern("/v1/cluster/{id}/lifespan")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_ClusterService_Lifespan_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := request_ClusterService_Lifespan_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_ClusterService_Lifespan_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_ClusterService_Lifespan_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("POST", pattern_ClusterService_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodPost, pattern_ClusterService_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/v1.ClusterService/Create", runtime.WithHTTPPathPattern("/v1/cluster")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_ClusterService_Create_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := request_ClusterService_Create_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_ClusterService_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_ClusterService_Create_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("GET", pattern_ClusterService_Artifacts_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_ClusterService_Artifacts_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/v1.ClusterService/Artifacts", runtime.WithHTTPPathPattern("/v1/cluster/{id}/artifacts")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_ClusterService_Artifacts_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := request_ClusterService_Artifacts_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_ClusterService_Artifacts_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_ClusterService_Artifacts_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("DELETE", pattern_ClusterService_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodDelete, pattern_ClusterService_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/v1.ClusterService/Delete", runtime.WithHTTPPathPattern("/v1/cluster/{id}")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_ClusterService_Delete_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := request_ClusterService_Delete_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_ClusterService_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_ClusterService_Delete_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("GET", pattern_ClusterService_Logs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_ClusterService_Logs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/v1.ClusterService/Logs", runtime.WithHTTPPathPattern("/v1/cluster/{id}/logs")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_ClusterService_Logs_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := request_ClusterService_Logs_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_ClusterService_Logs_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_ClusterService_Logs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - return nil } var ( - pattern_ClusterService_Info_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"v1", "cluster", "id"}, "", runtime.AssumeColonVerbOpt(true))) - - pattern_ClusterService_List_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "cluster"}, "", runtime.AssumeColonVerbOpt(true))) - - pattern_ClusterService_Lifespan_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3}, []string{"v1", "cluster", "id", "lifespan"}, "", runtime.AssumeColonVerbOpt(true))) - - pattern_ClusterService_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "cluster"}, "", runtime.AssumeColonVerbOpt(true))) - - pattern_ClusterService_Artifacts_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3}, []string{"v1", "cluster", "id", "artifacts"}, "", runtime.AssumeColonVerbOpt(true))) - - pattern_ClusterService_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"v1", "cluster", "id"}, "", runtime.AssumeColonVerbOpt(true))) - - pattern_ClusterService_Logs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3}, []string{"v1", "cluster", "id", "logs"}, "", runtime.AssumeColonVerbOpt(true))) + pattern_ClusterService_Info_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"v1", "cluster", "id"}, "")) + pattern_ClusterService_List_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "cluster"}, "")) + pattern_ClusterService_Lifespan_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3}, []string{"v1", "cluster", "id", "lifespan"}, "")) + pattern_ClusterService_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "cluster"}, "")) + pattern_ClusterService_Artifacts_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3}, []string{"v1", "cluster", "id", "artifacts"}, "")) + pattern_ClusterService_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"v1", "cluster", "id"}, "")) + pattern_ClusterService_Logs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3}, []string{"v1", "cluster", "id", "logs"}, "")) ) var ( - forward_ClusterService_Info_0 = runtime.ForwardResponseMessage - - forward_ClusterService_List_0 = runtime.ForwardResponseMessage - - forward_ClusterService_Lifespan_0 = runtime.ForwardResponseMessage - - forward_ClusterService_Create_0 = runtime.ForwardResponseMessage - + forward_ClusterService_Info_0 = runtime.ForwardResponseMessage + forward_ClusterService_List_0 = runtime.ForwardResponseMessage + forward_ClusterService_Lifespan_0 = runtime.ForwardResponseMessage + forward_ClusterService_Create_0 = runtime.ForwardResponseMessage forward_ClusterService_Artifacts_0 = runtime.ForwardResponseMessage - - forward_ClusterService_Delete_0 = runtime.ForwardResponseMessage - - forward_ClusterService_Logs_0 = runtime.ForwardResponseMessage + forward_ClusterService_Delete_0 = runtime.ForwardResponseMessage + forward_ClusterService_Logs_0 = runtime.ForwardResponseMessage ) // RegisterCliServiceHandlerFromEndpoint is same as RegisterCliServiceHandler but // automatically dials to "endpoint" and closes the connection when "ctx" gets done. func RegisterCliServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) + conn, err := grpc.NewClient(endpoint, opts...) if err != nil { return err } defer func() { if err != nil { if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) } return } go func() { <-ctx.Done() if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) } }() }() - return RegisterCliServiceHandler(ctx, mux, conn) } @@ -1593,34 +1379,30 @@ func RegisterCliServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn // to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "CliServiceClient". // Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "CliServiceClient" // doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "CliServiceClient" to call the correct interceptors. +// "CliServiceClient" to call the correct interceptors. This client ignores the HTTP middlewares. func RegisterCliServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client CliServiceClient) error { - - mux.Handle("GET", pattern_CliService_Upgrade_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_CliService_Upgrade_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/v1.CliService/Upgrade", runtime.WithHTTPPathPattern("/v1/cli/{os}/{arch}/upgrade")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_CliService_Upgrade_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := request_CliService_Upgrade_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_CliService_Upgrade_0(ctx, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - + forward_CliService_Upgrade_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) }) - return nil } var ( - pattern_CliService_Upgrade_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 1, 0, 4, 1, 5, 3, 2, 4}, []string{"v1", "cli", "os", "arch", "upgrade"}, "", runtime.AssumeColonVerbOpt(true))) + pattern_CliService_Upgrade_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 1, 0, 4, 1, 5, 3, 2, 4}, []string{"v1", "cli", "os", "arch", "upgrade"}, "")) ) var ( @@ -1630,25 +1412,24 @@ var ( // RegisterInfraStatusServiceHandlerFromEndpoint is same as RegisterInfraStatusServiceHandler but // automatically dials to "endpoint" and closes the connection when "ctx" gets done. func RegisterInfraStatusServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) + conn, err := grpc.NewClient(endpoint, opts...) if err != nil { return err } defer func() { if err != nil { if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) } return } go func() { <-ctx.Done() if cerr := conn.Close(); cerr != nil { - grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + grpclog.Errorf("Failed to close conn to %s: %v", endpoint, cerr) } }() }() - return RegisterInfraStatusServiceHandler(ctx, mux, conn) } @@ -1662,84 +1443,70 @@ func RegisterInfraStatusServiceHandler(ctx context.Context, mux *runtime.ServeMu // to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "InfraStatusServiceClient". // Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "InfraStatusServiceClient" // doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "InfraStatusServiceClient" to call the correct interceptors. +// "InfraStatusServiceClient" to call the correct interceptors. This client ignores the HTTP middlewares. func RegisterInfraStatusServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client InfraStatusServiceClient) error { - - mux.Handle("GET", pattern_InfraStatusService_GetStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodGet, pattern_InfraStatusService_GetStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/v1.InfraStatusService/GetStatus", runtime.WithHTTPPathPattern("/v1/status")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_InfraStatusService_GetStatus_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := request_InfraStatusService_GetStatus_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_InfraStatusService_GetStatus_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_InfraStatusService_GetStatus_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("DELETE", pattern_InfraStatusService_ResetStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodDelete, pattern_InfraStatusService_ResetStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/v1.InfraStatusService/ResetStatus", runtime.WithHTTPPathPattern("/v1/status")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_InfraStatusService_ResetStatus_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := request_InfraStatusService_ResetStatus_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_InfraStatusService_ResetStatus_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_InfraStatusService_ResetStatus_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - - mux.Handle("PUT", pattern_InfraStatusService_SetStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle(http.MethodPut, pattern_InfraStatusService_SetStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) + annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/v1.InfraStatusService/SetStatus", runtime.WithHTTPPathPattern("/v1/status")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_InfraStatusService_SetStatus_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) + resp, md, err := request_InfraStatusService_SetStatus_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - - forward_InfraStatusService_SetStatus_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - + forward_InfraStatusService_SetStatus_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - return nil } var ( - pattern_InfraStatusService_GetStatus_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "status"}, "", runtime.AssumeColonVerbOpt(true))) - - pattern_InfraStatusService_ResetStatus_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "status"}, "", runtime.AssumeColonVerbOpt(true))) - - pattern_InfraStatusService_SetStatus_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "status"}, "", runtime.AssumeColonVerbOpt(true))) + pattern_InfraStatusService_GetStatus_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "status"}, "")) + pattern_InfraStatusService_ResetStatus_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "status"}, "")) + pattern_InfraStatusService_SetStatus_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "status"}, "")) ) var ( - forward_InfraStatusService_GetStatus_0 = runtime.ForwardResponseMessage - + forward_InfraStatusService_GetStatus_0 = runtime.ForwardResponseMessage forward_InfraStatusService_ResetStatus_0 = runtime.ForwardResponseMessage - - forward_InfraStatusService_SetStatus_0 = runtime.ForwardResponseMessage + forward_InfraStatusService_SetStatus_0 = runtime.ForwardResponseMessage ) diff --git a/generated/api/v1/service.swagger.json b/generated/api/v1/service.swagger.json index 8c6c456ff..19535fd52 100644 --- a/generated/api/v1/service.swagger.json +++ b/generated/api/v1/service.swagger.json @@ -4,6 +4,26 @@ "title": "service.proto", "version": "version not set" }, + "tags": [ + { + "name": "VersionService" + }, + { + "name": "UserService" + }, + { + "name": "FlavorService" + }, + { + "name": "ClusterService" + }, + { + "name": "CliService" + }, + { + "name": "InfraStatusService" + } + ], "consumes": [ "application/json" ], @@ -13,12 +33,28 @@ "paths": { "/v1/cli/{os}/{arch}/upgrade": { "get": { - "operationId": "Upgrade", + "summary": "Upgrade - gets an updated binary if it exists.", + "operationId": "CliService_Upgrade", "responses": { "200": { "description": "A successful response.(streaming responses)", "schema": { - "$ref": "#/x-stream-definitions/v1CliUpgradeResponse" + "type": "object", + "properties": { + "result": { + "$ref": "#/definitions/v1CliUpgradeResponse" + }, + "error": { + "$ref": "#/definitions/googlerpcStatus" + } + }, + "title": "Stream result of v1CliUpgradeResponse" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/googlerpcStatus" } } }, @@ -43,14 +79,20 @@ }, "/v1/cluster": { "get": { - "summary": "CreateToken generates an arbitrary service account token", - "operationId": "List", + "summary": "List provides information about the available clusters.", + "operationId": "ClusterService_List", "responses": { "200": { "description": "A successful response.", "schema": { "$ref": "#/definitions/v1ClusterListResponse" } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/googlerpcStatus" + } } }, "parameters": [ @@ -59,16 +101,14 @@ "description": "all indicates that all clusters should be returned, not just the ones\nowned by the user.", "in": "query", "required": false, - "type": "boolean", - "format": "boolean" + "type": "boolean" }, { "name": "expired", "description": "expired indicates that expired clusters should be returned, not just the\nones that are launching/ready.", "in": "query", "required": false, - "type": "boolean", - "format": "boolean" + "type": "boolean" }, { "name": "prefix", @@ -84,18 +124,25 @@ }, "post": { "summary": "Create launches a new cluster.", - "operationId": "Create", + "operationId": "ClusterService_Create", "responses": { "200": { "description": "A successful response.", "schema": { "$ref": "#/definitions/v1ResourceByID" } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/googlerpcStatus" + } } }, "parameters": [ { "name": "body", + "description": "CreateClusterRequest represents details for launching a new cluster.", "in": "body", "required": true, "schema": { @@ -110,13 +157,20 @@ }, "/v1/cluster/{id}": { "get": { - "operationId": "Info", + "summary": "Info provides information about a specific cluster.", + "operationId": "ClusterService_Info", "responses": { "200": { "description": "A successful response.", "schema": { "$ref": "#/definitions/v1Cluster" } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/googlerpcStatus" + } } }, "parameters": [ @@ -133,13 +187,20 @@ }, "delete": { "summary": "Delete deletes an existing cluster.", - "operationId": "Delete", + "operationId": "ClusterService_Delete", "responses": { "200": { "description": "A successful response.", "schema": { + "type": "object", "properties": {} } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/googlerpcStatus" + } } }, "parameters": [ @@ -158,13 +219,19 @@ "/v1/cluster/{id}/artifacts": { "get": { "summary": "Artifacts returns the artifacts for a specific cluster.", - "operationId": "Artifacts", + "operationId": "ClusterService_Artifacts", "responses": { "200": { "description": "A successful response.", "schema": { "$ref": "#/definitions/v1ClusterArtifacts" } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/googlerpcStatus" + } } }, "parameters": [ @@ -182,14 +249,20 @@ }, "/v1/cluster/{id}/lifespan": { "post": { - "summary": "Token generates a service account token for the current user.", - "operationId": "Lifespan", + "summary": "Lifespan updates the lifespan for a specific cluster.", + "operationId": "ClusterService_Lifespan", "responses": { "200": { "description": "A successful response.", "schema": { "type": "string" } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/googlerpcStatus" + } } }, "parameters": [ @@ -205,7 +278,7 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/v1LifespanRequest" + "$ref": "#/definitions/ClusterServiceLifespanBody" } } ], @@ -217,13 +290,19 @@ "/v1/cluster/{id}/logs": { "get": { "summary": "Logs returns the logs for a specific cluster.", - "operationId": "Logs", + "operationId": "ClusterService_Logs", "responses": { "200": { "description": "A successful response.", "schema": { "$ref": "#/definitions/v1LogsResponse" } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/googlerpcStatus" + } } }, "parameters": [ @@ -241,13 +320,20 @@ }, "/v1/flavor": { "get": { - "operationId": "List", + "summary": "List provides information about the available flavors.", + "operationId": "FlavorService_List", "responses": { "200": { "description": "A successful response.", "schema": { "$ref": "#/definitions/v1FlavorListResponse" } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/googlerpcStatus" + } } }, "parameters": [ @@ -256,8 +342,7 @@ "description": "all indicates that all flavors should be returned, by default\navailability alpha clusters are excluded.", "in": "query", "required": false, - "type": "boolean", - "format": "boolean" + "type": "boolean" } ], "tags": [ @@ -267,14 +352,20 @@ }, "/v1/flavor/{id}": { "get": { - "summary": "CreateToken generates an arbitrary service account token", - "operationId": "Info", + "summary": "Info provides information about a specific flavor.", + "operationId": "FlavorService_Info", "responses": { "200": { "description": "A successful response.", "schema": { "$ref": "#/definitions/v1Flavor" } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/googlerpcStatus" + } } }, "parameters": [ @@ -292,13 +383,20 @@ }, "/v1/status": { "get": { - "operationId": "GetStatus", + "summary": "GetStatus gets the maintenance", + "operationId": "InfraStatusService_GetStatus", "responses": { "200": { "description": "A successful response.", "schema": { "$ref": "#/definitions/v1InfraStatus" } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/googlerpcStatus" + } } }, "tags": [ @@ -306,14 +404,20 @@ ] }, "delete": { - "summary": "CreateToken generates an arbitrary service account token", - "operationId": "ResetStatus", + "summary": "ResetStatus resets the maintenance", + "operationId": "InfraStatusService_ResetStatus", "responses": { "200": { "description": "A successful response.", "schema": { "$ref": "#/definitions/v1InfraStatus" } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/googlerpcStatus" + } } }, "tags": [ @@ -321,16 +425,38 @@ ] }, "put": { - "summary": "Token generates a service account token for the current user.", - "operationId": "SetStatus", + "summary": "SetStatus sets the maintenance", + "operationId": "InfraStatusService_SetStatus", "responses": { "200": { "description": "A successful response.", "schema": { "$ref": "#/definitions/v1InfraStatus" } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/googlerpcStatus" + } } }, + "parameters": [ + { + "name": "MaintenanceActive", + "description": "MaintenanceActive is an indicator whether a maintenance is ongoing.", + "in": "query", + "required": false, + "type": "boolean" + }, + { + "name": "Maintainer", + "description": "Maintainer is the email of the person currently doing maintenance.", + "in": "query", + "required": false, + "type": "string" + } + ], "tags": [ "InfraStatusService" ] @@ -339,13 +465,19 @@ "/v1/token": { "post": { "summary": "Token generates a service account token for the current user.", - "operationId": "Token", + "operationId": "UserService_Token", "responses": { "200": { "description": "A successful response.", "schema": { "$ref": "#/definitions/v1TokenResponse" } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/googlerpcStatus" + } } }, "parameters": [ @@ -354,6 +486,7 @@ "in": "body", "required": true, "schema": { + "type": "object", "properties": {} } } @@ -366,18 +499,25 @@ "/v1/token-create": { "post": { "summary": "CreateToken generates an arbitrary service account token", - "operationId": "CreateToken", + "operationId": "UserService_CreateToken", "responses": { "200": { "description": "A successful response.", "schema": { "$ref": "#/definitions/v1TokenResponse" } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/googlerpcStatus" + } } }, "parameters": [ { "name": "body", + "description": "ServiceAccount represents an authenticated service account (robot) principal.", "in": "body", "required": true, "schema": { @@ -392,13 +532,19 @@ }, "/v1/version": { "get": { - "operationId": "GetVersion", + "operationId": "VersionService_GetVersion", "responses": { "200": { "description": "A successful response.", "schema": { "$ref": "#/definitions/v1Version" } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/googlerpcStatus" + } } }, "tags": [ @@ -408,13 +554,20 @@ }, "/v1/whoami": { "get": { - "operationId": "Whoami", + "summary": "Whoami provides information about the currently authenticated principal.", + "operationId": "UserService_Whoami", "responses": { "200": { "description": "A successful response.", "schema": { "$ref": "#/definitions/v1WhoamiResponse" } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/googlerpcStatus" + } } }, "tags": [ @@ -424,6 +577,18 @@ } }, "definitions": { + "ClusterServiceLifespanBody": { + "type": "object", + "properties": { + "Lifespan": { + "type": "string", + "description": "Lifespan is the new lifespan." + }, + "method": { + "$ref": "#/definitions/LifespanRequestMethod" + } + } + }, "Flavoravailability": { "type": "string", "enum": [ @@ -445,43 +610,34 @@ "default": "REPLACE", "description": "method represents the various lifespan operations.\n\n - REPLACE: REPLACE indicates that the given lifespan should replace the current\nlifespan.\n - ADD: ADD indicates that the given lifespan should be added to the current\nlifespan.\n - SUBTRACT: SUBTRACT indicates that the given lifespan should be subtracted from\nthe current lifespan." }, - "protobufAny": { - "type": "object", - "properties": { - "type_url": { - "type": "string" - }, - "value": { - "type": "string", - "format": "byte" - } - } - }, - "runtimeStreamError": { + "googlerpcStatus": { "type": "object", "properties": { - "grpc_code": { - "type": "integer", - "format": "int32" - }, - "http_code": { + "code": { "type": "integer", "format": "int32" }, "message": { "type": "string" }, - "http_status": { - "type": "string" - }, "details": { "type": "array", "items": { + "type": "object", "$ref": "#/definitions/protobufAny" } } } }, + "protobufAny": { + "type": "object", + "properties": { + "@type": { + "type": "string" + } + }, + "additionalProperties": {} + }, "v1Artifact": { "type": "object", "properties": { @@ -557,6 +713,7 @@ "Parameters": { "type": "array", "items": { + "type": "object", "$ref": "#/definitions/v1Parameter" }, "description": "Parameters is a list of options to configure the cluster creation." @@ -570,6 +727,7 @@ "Artifacts": { "type": "array", "items": { + "type": "object", "$ref": "#/definitions/v1Artifact" } } @@ -581,6 +739,7 @@ "Clusters": { "type": "array", "items": { + "type": "object", "$ref": "#/definitions/v1Cluster" }, "description": "Clusters is a list of all clusters." @@ -612,12 +771,10 @@ }, "NoSlack": { "type": "boolean", - "format": "boolean", "description": "NoSlack is used to skip sending Slack messages for cluster lifecycle\nevents." }, "SlackDM": { "type": "boolean", - "format": "boolean", "description": "SlackDM is used to choose direct messages for cluster lifecycle\nevents." } }, @@ -680,6 +837,7 @@ "Tags": { "type": "object", "additionalProperties": { + "type": "object", "properties": {} }, "description": "Tags is a set of artifact tags." @@ -697,6 +855,7 @@ "Flavors": { "type": "array", "items": { + "type": "object", "$ref": "#/definitions/v1Flavor" }, "description": "Flavors is a list of all available cluster flavors." @@ -709,7 +868,6 @@ "properties": { "MaintenanceActive": { "type": "boolean", - "format": "boolean", "description": "MaintenanceActive is an indicator whether a maintenance is ongoing." }, "Maintainer": { @@ -718,22 +876,6 @@ } } }, - "v1LifespanRequest": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID is the unique ID for the cluster." - }, - "Lifespan": { - "type": "string", - "description": "Lifespan is the new lifespan." - }, - "method": { - "$ref": "#/definitions/LifespanRequestMethod" - } - } - }, "v1Log": { "type": "object", "properties": { @@ -764,6 +906,7 @@ "Logs": { "type": "array", "items": { + "type": "object", "$ref": "#/definitions/v1Log" }, "description": "Logs are all of the logs from a cluster." @@ -788,12 +931,10 @@ }, "Optional": { "type": "boolean", - "format": "boolean", "description": "Optional indicates that this parameter can be optionally provided by a\nuser. If the user does not provide a value, then Value serves as a\ndefault." }, "Internal": { "type": "boolean", - "format": "boolean", "description": "Internal indicates that this parameter should not be provided by a user,\nbut rather treats Value as a hardcoded constant." }, "Order": { @@ -806,7 +947,6 @@ }, "FromFile": { "type": "boolean", - "format": "boolean", "description": "Indicates that the value for this parameter can be provided from the\ncontents of a file." } }, @@ -940,19 +1080,5 @@ }, "description": "WhoamiResponse represents details about the current authenticated principal." } - }, - "x-stream-definitions": { - "v1CliUpgradeResponse": { - "type": "object", - "properties": { - "result": { - "$ref": "#/definitions/v1CliUpgradeResponse" - }, - "error": { - "$ref": "#/definitions/runtimeStreamError" - } - }, - "title": "Stream result of v1CliUpgradeResponse" - } } } diff --git a/generated/api/v1/service_grpc.pb.go b/generated/api/v1/service_grpc.pb.go new file mode 100644 index 000000000..cc8f87952 --- /dev/null +++ b/generated/api/v1/service_grpc.pb.go @@ -0,0 +1,1102 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.5.1 +// - protoc v5.29.2 +// source: service.proto + +package v1 + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + durationpb "google.golang.org/protobuf/types/known/durationpb" + emptypb "google.golang.org/protobuf/types/known/emptypb" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.64.0 or later. +const _ = grpc.SupportPackageIsVersion9 + +const ( + VersionService_GetVersion_FullMethodName = "/v1.VersionService/GetVersion" +) + +// VersionServiceClient is the client API for VersionService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type VersionServiceClient interface { + GetVersion(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*Version, error) +} + +type versionServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewVersionServiceClient(cc grpc.ClientConnInterface) VersionServiceClient { + return &versionServiceClient{cc} +} + +func (c *versionServiceClient) GetVersion(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*Version, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(Version) + err := c.cc.Invoke(ctx, VersionService_GetVersion_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +// VersionServiceServer is the server API for VersionService service. +// All implementations must embed UnimplementedVersionServiceServer +// for forward compatibility. +type VersionServiceServer interface { + GetVersion(context.Context, *emptypb.Empty) (*Version, error) + mustEmbedUnimplementedVersionServiceServer() +} + +// UnimplementedVersionServiceServer must be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedVersionServiceServer struct{} + +func (UnimplementedVersionServiceServer) GetVersion(context.Context, *emptypb.Empty) (*Version, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetVersion not implemented") +} +func (UnimplementedVersionServiceServer) mustEmbedUnimplementedVersionServiceServer() {} +func (UnimplementedVersionServiceServer) testEmbeddedByValue() {} + +// UnsafeVersionServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to VersionServiceServer will +// result in compilation errors. +type UnsafeVersionServiceServer interface { + mustEmbedUnimplementedVersionServiceServer() +} + +func RegisterVersionServiceServer(s grpc.ServiceRegistrar, srv VersionServiceServer) { + // If the following call pancis, it indicates UnimplementedVersionServiceServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } + s.RegisterService(&VersionService_ServiceDesc, srv) +} + +func _VersionService_GetVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(emptypb.Empty) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(VersionServiceServer).GetVersion(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: VersionService_GetVersion_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(VersionServiceServer).GetVersion(ctx, req.(*emptypb.Empty)) + } + return interceptor(ctx, in, info, handler) +} + +// VersionService_ServiceDesc is the grpc.ServiceDesc for VersionService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var VersionService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "v1.VersionService", + HandlerType: (*VersionServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "GetVersion", + Handler: _VersionService_GetVersion_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "service.proto", +} + +const ( + UserService_Whoami_FullMethodName = "/v1.UserService/Whoami" + UserService_CreateToken_FullMethodName = "/v1.UserService/CreateToken" + UserService_Token_FullMethodName = "/v1.UserService/Token" +) + +// UserServiceClient is the client API for UserService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type UserServiceClient interface { + // Whoami provides information about the currently authenticated principal. + Whoami(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*WhoamiResponse, error) + // CreateToken generates an arbitrary service account token + CreateToken(ctx context.Context, in *ServiceAccount, opts ...grpc.CallOption) (*TokenResponse, error) + // Token generates a service account token for the current user. + Token(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*TokenResponse, error) +} + +type userServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewUserServiceClient(cc grpc.ClientConnInterface) UserServiceClient { + return &userServiceClient{cc} +} + +func (c *userServiceClient) Whoami(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*WhoamiResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(WhoamiResponse) + err := c.cc.Invoke(ctx, UserService_Whoami_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *userServiceClient) CreateToken(ctx context.Context, in *ServiceAccount, opts ...grpc.CallOption) (*TokenResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(TokenResponse) + err := c.cc.Invoke(ctx, UserService_CreateToken_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *userServiceClient) Token(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*TokenResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(TokenResponse) + err := c.cc.Invoke(ctx, UserService_Token_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +// UserServiceServer is the server API for UserService service. +// All implementations must embed UnimplementedUserServiceServer +// for forward compatibility. +type UserServiceServer interface { + // Whoami provides information about the currently authenticated principal. + Whoami(context.Context, *emptypb.Empty) (*WhoamiResponse, error) + // CreateToken generates an arbitrary service account token + CreateToken(context.Context, *ServiceAccount) (*TokenResponse, error) + // Token generates a service account token for the current user. + Token(context.Context, *emptypb.Empty) (*TokenResponse, error) + mustEmbedUnimplementedUserServiceServer() +} + +// UnimplementedUserServiceServer must be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedUserServiceServer struct{} + +func (UnimplementedUserServiceServer) Whoami(context.Context, *emptypb.Empty) (*WhoamiResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Whoami not implemented") +} +func (UnimplementedUserServiceServer) CreateToken(context.Context, *ServiceAccount) (*TokenResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method CreateToken not implemented") +} +func (UnimplementedUserServiceServer) Token(context.Context, *emptypb.Empty) (*TokenResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Token not implemented") +} +func (UnimplementedUserServiceServer) mustEmbedUnimplementedUserServiceServer() {} +func (UnimplementedUserServiceServer) testEmbeddedByValue() {} + +// UnsafeUserServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to UserServiceServer will +// result in compilation errors. +type UnsafeUserServiceServer interface { + mustEmbedUnimplementedUserServiceServer() +} + +func RegisterUserServiceServer(s grpc.ServiceRegistrar, srv UserServiceServer) { + // If the following call pancis, it indicates UnimplementedUserServiceServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } + s.RegisterService(&UserService_ServiceDesc, srv) +} + +func _UserService_Whoami_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(emptypb.Empty) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(UserServiceServer).Whoami(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: UserService_Whoami_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(UserServiceServer).Whoami(ctx, req.(*emptypb.Empty)) + } + return interceptor(ctx, in, info, handler) +} + +func _UserService_CreateToken_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ServiceAccount) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(UserServiceServer).CreateToken(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: UserService_CreateToken_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(UserServiceServer).CreateToken(ctx, req.(*ServiceAccount)) + } + return interceptor(ctx, in, info, handler) +} + +func _UserService_Token_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(emptypb.Empty) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(UserServiceServer).Token(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: UserService_Token_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(UserServiceServer).Token(ctx, req.(*emptypb.Empty)) + } + return interceptor(ctx, in, info, handler) +} + +// UserService_ServiceDesc is the grpc.ServiceDesc for UserService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var UserService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "v1.UserService", + HandlerType: (*UserServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Whoami", + Handler: _UserService_Whoami_Handler, + }, + { + MethodName: "CreateToken", + Handler: _UserService_CreateToken_Handler, + }, + { + MethodName: "Token", + Handler: _UserService_Token_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "service.proto", +} + +const ( + FlavorService_List_FullMethodName = "/v1.FlavorService/List" + FlavorService_Info_FullMethodName = "/v1.FlavorService/Info" +) + +// FlavorServiceClient is the client API for FlavorService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +// +// FlavorService provides flavor based functionality. +type FlavorServiceClient interface { + // List provides information about the available flavors. + List(ctx context.Context, in *FlavorListRequest, opts ...grpc.CallOption) (*FlavorListResponse, error) + // Info provides information about a specific flavor. + Info(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*Flavor, error) +} + +type flavorServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewFlavorServiceClient(cc grpc.ClientConnInterface) FlavorServiceClient { + return &flavorServiceClient{cc} +} + +func (c *flavorServiceClient) List(ctx context.Context, in *FlavorListRequest, opts ...grpc.CallOption) (*FlavorListResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(FlavorListResponse) + err := c.cc.Invoke(ctx, FlavorService_List_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *flavorServiceClient) Info(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*Flavor, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(Flavor) + err := c.cc.Invoke(ctx, FlavorService_Info_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +// FlavorServiceServer is the server API for FlavorService service. +// All implementations must embed UnimplementedFlavorServiceServer +// for forward compatibility. +// +// FlavorService provides flavor based functionality. +type FlavorServiceServer interface { + // List provides information about the available flavors. + List(context.Context, *FlavorListRequest) (*FlavorListResponse, error) + // Info provides information about a specific flavor. + Info(context.Context, *ResourceByID) (*Flavor, error) + mustEmbedUnimplementedFlavorServiceServer() +} + +// UnimplementedFlavorServiceServer must be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedFlavorServiceServer struct{} + +func (UnimplementedFlavorServiceServer) List(context.Context, *FlavorListRequest) (*FlavorListResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method List not implemented") +} +func (UnimplementedFlavorServiceServer) Info(context.Context, *ResourceByID) (*Flavor, error) { + return nil, status.Errorf(codes.Unimplemented, "method Info not implemented") +} +func (UnimplementedFlavorServiceServer) mustEmbedUnimplementedFlavorServiceServer() {} +func (UnimplementedFlavorServiceServer) testEmbeddedByValue() {} + +// UnsafeFlavorServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to FlavorServiceServer will +// result in compilation errors. +type UnsafeFlavorServiceServer interface { + mustEmbedUnimplementedFlavorServiceServer() +} + +func RegisterFlavorServiceServer(s grpc.ServiceRegistrar, srv FlavorServiceServer) { + // If the following call pancis, it indicates UnimplementedFlavorServiceServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } + s.RegisterService(&FlavorService_ServiceDesc, srv) +} + +func _FlavorService_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(FlavorListRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(FlavorServiceServer).List(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: FlavorService_List_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(FlavorServiceServer).List(ctx, req.(*FlavorListRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _FlavorService_Info_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ResourceByID) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(FlavorServiceServer).Info(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: FlavorService_Info_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(FlavorServiceServer).Info(ctx, req.(*ResourceByID)) + } + return interceptor(ctx, in, info, handler) +} + +// FlavorService_ServiceDesc is the grpc.ServiceDesc for FlavorService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var FlavorService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "v1.FlavorService", + HandlerType: (*FlavorServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "List", + Handler: _FlavorService_List_Handler, + }, + { + MethodName: "Info", + Handler: _FlavorService_Info_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "service.proto", +} + +const ( + ClusterService_Info_FullMethodName = "/v1.ClusterService/Info" + ClusterService_List_FullMethodName = "/v1.ClusterService/List" + ClusterService_Lifespan_FullMethodName = "/v1.ClusterService/Lifespan" + ClusterService_Create_FullMethodName = "/v1.ClusterService/Create" + ClusterService_Artifacts_FullMethodName = "/v1.ClusterService/Artifacts" + ClusterService_Delete_FullMethodName = "/v1.ClusterService/Delete" + ClusterService_Logs_FullMethodName = "/v1.ClusterService/Logs" +) + +// ClusterServiceClient is the client API for ClusterService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +// +// FlavorService provides flavor based functionality. +type ClusterServiceClient interface { + // Info provides information about a specific cluster. + Info(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*Cluster, error) + // List provides information about the available clusters. + List(ctx context.Context, in *ClusterListRequest, opts ...grpc.CallOption) (*ClusterListResponse, error) + // Lifespan updates the lifespan for a specific cluster. + Lifespan(ctx context.Context, in *LifespanRequest, opts ...grpc.CallOption) (*durationpb.Duration, error) + // Create launches a new cluster. + Create(ctx context.Context, in *CreateClusterRequest, opts ...grpc.CallOption) (*ResourceByID, error) + // Artifacts returns the artifacts for a specific cluster. + Artifacts(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*ClusterArtifacts, error) + // Delete deletes an existing cluster. + Delete(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*emptypb.Empty, error) + // Logs returns the logs for a specific cluster. + Logs(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*LogsResponse, error) +} + +type clusterServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewClusterServiceClient(cc grpc.ClientConnInterface) ClusterServiceClient { + return &clusterServiceClient{cc} +} + +func (c *clusterServiceClient) Info(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*Cluster, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(Cluster) + err := c.cc.Invoke(ctx, ClusterService_Info_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *clusterServiceClient) List(ctx context.Context, in *ClusterListRequest, opts ...grpc.CallOption) (*ClusterListResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(ClusterListResponse) + err := c.cc.Invoke(ctx, ClusterService_List_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *clusterServiceClient) Lifespan(ctx context.Context, in *LifespanRequest, opts ...grpc.CallOption) (*durationpb.Duration, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(durationpb.Duration) + err := c.cc.Invoke(ctx, ClusterService_Lifespan_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *clusterServiceClient) Create(ctx context.Context, in *CreateClusterRequest, opts ...grpc.CallOption) (*ResourceByID, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(ResourceByID) + err := c.cc.Invoke(ctx, ClusterService_Create_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *clusterServiceClient) Artifacts(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*ClusterArtifacts, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(ClusterArtifacts) + err := c.cc.Invoke(ctx, ClusterService_Artifacts_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *clusterServiceClient) Delete(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*emptypb.Empty, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(emptypb.Empty) + err := c.cc.Invoke(ctx, ClusterService_Delete_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *clusterServiceClient) Logs(ctx context.Context, in *ResourceByID, opts ...grpc.CallOption) (*LogsResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(LogsResponse) + err := c.cc.Invoke(ctx, ClusterService_Logs_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +// ClusterServiceServer is the server API for ClusterService service. +// All implementations must embed UnimplementedClusterServiceServer +// for forward compatibility. +// +// FlavorService provides flavor based functionality. +type ClusterServiceServer interface { + // Info provides information about a specific cluster. + Info(context.Context, *ResourceByID) (*Cluster, error) + // List provides information about the available clusters. + List(context.Context, *ClusterListRequest) (*ClusterListResponse, error) + // Lifespan updates the lifespan for a specific cluster. + Lifespan(context.Context, *LifespanRequest) (*durationpb.Duration, error) + // Create launches a new cluster. + Create(context.Context, *CreateClusterRequest) (*ResourceByID, error) + // Artifacts returns the artifacts for a specific cluster. + Artifacts(context.Context, *ResourceByID) (*ClusterArtifacts, error) + // Delete deletes an existing cluster. + Delete(context.Context, *ResourceByID) (*emptypb.Empty, error) + // Logs returns the logs for a specific cluster. + Logs(context.Context, *ResourceByID) (*LogsResponse, error) + mustEmbedUnimplementedClusterServiceServer() +} + +// UnimplementedClusterServiceServer must be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedClusterServiceServer struct{} + +func (UnimplementedClusterServiceServer) Info(context.Context, *ResourceByID) (*Cluster, error) { + return nil, status.Errorf(codes.Unimplemented, "method Info not implemented") +} +func (UnimplementedClusterServiceServer) List(context.Context, *ClusterListRequest) (*ClusterListResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method List not implemented") +} +func (UnimplementedClusterServiceServer) Lifespan(context.Context, *LifespanRequest) (*durationpb.Duration, error) { + return nil, status.Errorf(codes.Unimplemented, "method Lifespan not implemented") +} +func (UnimplementedClusterServiceServer) Create(context.Context, *CreateClusterRequest) (*ResourceByID, error) { + return nil, status.Errorf(codes.Unimplemented, "method Create not implemented") +} +func (UnimplementedClusterServiceServer) Artifacts(context.Context, *ResourceByID) (*ClusterArtifacts, error) { + return nil, status.Errorf(codes.Unimplemented, "method Artifacts not implemented") +} +func (UnimplementedClusterServiceServer) Delete(context.Context, *ResourceByID) (*emptypb.Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented") +} +func (UnimplementedClusterServiceServer) Logs(context.Context, *ResourceByID) (*LogsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Logs not implemented") +} +func (UnimplementedClusterServiceServer) mustEmbedUnimplementedClusterServiceServer() {} +func (UnimplementedClusterServiceServer) testEmbeddedByValue() {} + +// UnsafeClusterServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to ClusterServiceServer will +// result in compilation errors. +type UnsafeClusterServiceServer interface { + mustEmbedUnimplementedClusterServiceServer() +} + +func RegisterClusterServiceServer(s grpc.ServiceRegistrar, srv ClusterServiceServer) { + // If the following call pancis, it indicates UnimplementedClusterServiceServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } + s.RegisterService(&ClusterService_ServiceDesc, srv) +} + +func _ClusterService_Info_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ResourceByID) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ClusterServiceServer).Info(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ClusterService_Info_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ClusterServiceServer).Info(ctx, req.(*ResourceByID)) + } + return interceptor(ctx, in, info, handler) +} + +func _ClusterService_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ClusterListRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ClusterServiceServer).List(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ClusterService_List_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ClusterServiceServer).List(ctx, req.(*ClusterListRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ClusterService_Lifespan_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(LifespanRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ClusterServiceServer).Lifespan(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ClusterService_Lifespan_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ClusterServiceServer).Lifespan(ctx, req.(*LifespanRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ClusterService_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateClusterRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ClusterServiceServer).Create(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ClusterService_Create_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ClusterServiceServer).Create(ctx, req.(*CreateClusterRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ClusterService_Artifacts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ResourceByID) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ClusterServiceServer).Artifacts(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ClusterService_Artifacts_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ClusterServiceServer).Artifacts(ctx, req.(*ResourceByID)) + } + return interceptor(ctx, in, info, handler) +} + +func _ClusterService_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ResourceByID) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ClusterServiceServer).Delete(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ClusterService_Delete_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ClusterServiceServer).Delete(ctx, req.(*ResourceByID)) + } + return interceptor(ctx, in, info, handler) +} + +func _ClusterService_Logs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ResourceByID) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ClusterServiceServer).Logs(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ClusterService_Logs_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ClusterServiceServer).Logs(ctx, req.(*ResourceByID)) + } + return interceptor(ctx, in, info, handler) +} + +// ClusterService_ServiceDesc is the grpc.ServiceDesc for ClusterService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var ClusterService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "v1.ClusterService", + HandlerType: (*ClusterServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Info", + Handler: _ClusterService_Info_Handler, + }, + { + MethodName: "List", + Handler: _ClusterService_List_Handler, + }, + { + MethodName: "Lifespan", + Handler: _ClusterService_Lifespan_Handler, + }, + { + MethodName: "Create", + Handler: _ClusterService_Create_Handler, + }, + { + MethodName: "Artifacts", + Handler: _ClusterService_Artifacts_Handler, + }, + { + MethodName: "Delete", + Handler: _ClusterService_Delete_Handler, + }, + { + MethodName: "Logs", + Handler: _ClusterService_Logs_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "service.proto", +} + +const ( + CliService_Upgrade_FullMethodName = "/v1.CliService/Upgrade" +) + +// CliServiceClient is the client API for CliService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +// +// CliService provides an upgrade path for the command line interface. +type CliServiceClient interface { + // Upgrade - gets an updated binary if it exists. + Upgrade(ctx context.Context, in *CliUpgradeRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[CliUpgradeResponse], error) +} + +type cliServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewCliServiceClient(cc grpc.ClientConnInterface) CliServiceClient { + return &cliServiceClient{cc} +} + +func (c *cliServiceClient) Upgrade(ctx context.Context, in *CliUpgradeRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[CliUpgradeResponse], error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + stream, err := c.cc.NewStream(ctx, &CliService_ServiceDesc.Streams[0], CliService_Upgrade_FullMethodName, cOpts...) + if err != nil { + return nil, err + } + x := &grpc.GenericClientStream[CliUpgradeRequest, CliUpgradeResponse]{ClientStream: stream} + if err := x.ClientStream.SendMsg(in); err != nil { + return nil, err + } + if err := x.ClientStream.CloseSend(); err != nil { + return nil, err + } + return x, nil +} + +// This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name. +type CliService_UpgradeClient = grpc.ServerStreamingClient[CliUpgradeResponse] + +// CliServiceServer is the server API for CliService service. +// All implementations must embed UnimplementedCliServiceServer +// for forward compatibility. +// +// CliService provides an upgrade path for the command line interface. +type CliServiceServer interface { + // Upgrade - gets an updated binary if it exists. + Upgrade(*CliUpgradeRequest, grpc.ServerStreamingServer[CliUpgradeResponse]) error + mustEmbedUnimplementedCliServiceServer() +} + +// UnimplementedCliServiceServer must be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedCliServiceServer struct{} + +func (UnimplementedCliServiceServer) Upgrade(*CliUpgradeRequest, grpc.ServerStreamingServer[CliUpgradeResponse]) error { + return status.Errorf(codes.Unimplemented, "method Upgrade not implemented") +} +func (UnimplementedCliServiceServer) mustEmbedUnimplementedCliServiceServer() {} +func (UnimplementedCliServiceServer) testEmbeddedByValue() {} + +// UnsafeCliServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to CliServiceServer will +// result in compilation errors. +type UnsafeCliServiceServer interface { + mustEmbedUnimplementedCliServiceServer() +} + +func RegisterCliServiceServer(s grpc.ServiceRegistrar, srv CliServiceServer) { + // If the following call pancis, it indicates UnimplementedCliServiceServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } + s.RegisterService(&CliService_ServiceDesc, srv) +} + +func _CliService_Upgrade_Handler(srv interface{}, stream grpc.ServerStream) error { + m := new(CliUpgradeRequest) + if err := stream.RecvMsg(m); err != nil { + return err + } + return srv.(CliServiceServer).Upgrade(m, &grpc.GenericServerStream[CliUpgradeRequest, CliUpgradeResponse]{ServerStream: stream}) +} + +// This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name. +type CliService_UpgradeServer = grpc.ServerStreamingServer[CliUpgradeResponse] + +// CliService_ServiceDesc is the grpc.ServiceDesc for CliService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var CliService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "v1.CliService", + HandlerType: (*CliServiceServer)(nil), + Methods: []grpc.MethodDesc{}, + Streams: []grpc.StreamDesc{ + { + StreamName: "Upgrade", + Handler: _CliService_Upgrade_Handler, + ServerStreams: true, + }, + }, + Metadata: "service.proto", +} + +const ( + InfraStatusService_GetStatus_FullMethodName = "/v1.InfraStatusService/GetStatus" + InfraStatusService_ResetStatus_FullMethodName = "/v1.InfraStatusService/ResetStatus" + InfraStatusService_SetStatus_FullMethodName = "/v1.InfraStatusService/SetStatus" +) + +// InfraStatusServiceClient is the client API for InfraStatusService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +// +// InfraStatusService provides information on the status of the server. +type InfraStatusServiceClient interface { + // GetStatus gets the maintenance + GetStatus(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*InfraStatus, error) + // ResetStatus resets the maintenance + ResetStatus(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*InfraStatus, error) + // SetStatus sets the maintenance + SetStatus(ctx context.Context, in *InfraStatus, opts ...grpc.CallOption) (*InfraStatus, error) +} + +type infraStatusServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewInfraStatusServiceClient(cc grpc.ClientConnInterface) InfraStatusServiceClient { + return &infraStatusServiceClient{cc} +} + +func (c *infraStatusServiceClient) GetStatus(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*InfraStatus, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(InfraStatus) + err := c.cc.Invoke(ctx, InfraStatusService_GetStatus_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *infraStatusServiceClient) ResetStatus(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*InfraStatus, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(InfraStatus) + err := c.cc.Invoke(ctx, InfraStatusService_ResetStatus_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *infraStatusServiceClient) SetStatus(ctx context.Context, in *InfraStatus, opts ...grpc.CallOption) (*InfraStatus, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(InfraStatus) + err := c.cc.Invoke(ctx, InfraStatusService_SetStatus_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +// InfraStatusServiceServer is the server API for InfraStatusService service. +// All implementations must embed UnimplementedInfraStatusServiceServer +// for forward compatibility. +// +// InfraStatusService provides information on the status of the server. +type InfraStatusServiceServer interface { + // GetStatus gets the maintenance + GetStatus(context.Context, *emptypb.Empty) (*InfraStatus, error) + // ResetStatus resets the maintenance + ResetStatus(context.Context, *emptypb.Empty) (*InfraStatus, error) + // SetStatus sets the maintenance + SetStatus(context.Context, *InfraStatus) (*InfraStatus, error) + mustEmbedUnimplementedInfraStatusServiceServer() +} + +// UnimplementedInfraStatusServiceServer must be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedInfraStatusServiceServer struct{} + +func (UnimplementedInfraStatusServiceServer) GetStatus(context.Context, *emptypb.Empty) (*InfraStatus, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetStatus not implemented") +} +func (UnimplementedInfraStatusServiceServer) ResetStatus(context.Context, *emptypb.Empty) (*InfraStatus, error) { + return nil, status.Errorf(codes.Unimplemented, "method ResetStatus not implemented") +} +func (UnimplementedInfraStatusServiceServer) SetStatus(context.Context, *InfraStatus) (*InfraStatus, error) { + return nil, status.Errorf(codes.Unimplemented, "method SetStatus not implemented") +} +func (UnimplementedInfraStatusServiceServer) mustEmbedUnimplementedInfraStatusServiceServer() {} +func (UnimplementedInfraStatusServiceServer) testEmbeddedByValue() {} + +// UnsafeInfraStatusServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to InfraStatusServiceServer will +// result in compilation errors. +type UnsafeInfraStatusServiceServer interface { + mustEmbedUnimplementedInfraStatusServiceServer() +} + +func RegisterInfraStatusServiceServer(s grpc.ServiceRegistrar, srv InfraStatusServiceServer) { + // If the following call pancis, it indicates UnimplementedInfraStatusServiceServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } + s.RegisterService(&InfraStatusService_ServiceDesc, srv) +} + +func _InfraStatusService_GetStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(emptypb.Empty) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(InfraStatusServiceServer).GetStatus(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: InfraStatusService_GetStatus_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(InfraStatusServiceServer).GetStatus(ctx, req.(*emptypb.Empty)) + } + return interceptor(ctx, in, info, handler) +} + +func _InfraStatusService_ResetStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(emptypb.Empty) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(InfraStatusServiceServer).ResetStatus(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: InfraStatusService_ResetStatus_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(InfraStatusServiceServer).ResetStatus(ctx, req.(*emptypb.Empty)) + } + return interceptor(ctx, in, info, handler) +} + +func _InfraStatusService_SetStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(InfraStatus) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(InfraStatusServiceServer).SetStatus(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: InfraStatusService_SetStatus_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(InfraStatusServiceServer).SetStatus(ctx, req.(*InfraStatus)) + } + return interceptor(ctx, in, info, handler) +} + +// InfraStatusService_ServiceDesc is the grpc.ServiceDesc for InfraStatusService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var InfraStatusService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "v1.InfraStatusService", + HandlerType: (*InfraStatusServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "GetStatus", + Handler: _InfraStatusService_GetStatus_Handler, + }, + { + MethodName: "ResetStatus", + Handler: _InfraStatusService_ResetStatus_Handler, + }, + { + MethodName: "SetStatus", + Handler: _InfraStatusService_SetStatus_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "service.proto", +} diff --git a/go.mod b/go.mod index 212dfc347..bbe05a187 100644 --- a/go.mod +++ b/go.mod @@ -14,7 +14,7 @@ require ( github.com/golang/protobuf v1.5.4 github.com/grpc-ecosystem/go-grpc-middleware v1.4.0 github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 - github.com/grpc-ecosystem/grpc-gateway v1.16.0 + github.com/grpc-ecosystem/grpc-gateway/v2 v2.19.0 github.com/jeremywohl/flatten/v2 v2.0.0-20211013061545-07e4a09fb8e4 github.com/pkg/errors v0.9.1 github.com/prometheus/client_golang v1.20.5 @@ -26,9 +26,9 @@ require ( golang.org/x/net v0.33.0 golang.org/x/oauth2 v0.23.0 google.golang.org/api v0.172.0 - google.golang.org/genproto/googleapis/api v0.0.0-20240314234333-6e1732d8331c - google.golang.org/grpc v1.62.1 - google.golang.org/protobuf v1.34.2 + google.golang.org/genproto/googleapis/api v0.0.0-20241015192408-796eee8c2d53 + google.golang.org/grpc v1.69.2 + google.golang.org/protobuf v1.35.1 k8s.io/api v0.30.3 k8s.io/apimachinery v0.30.3 k8s.io/client-go v0.30.3 @@ -36,7 +36,7 @@ require ( require ( cloud.google.com/go v0.112.1 // indirect - cloud.google.com/go/compute/metadata v0.3.0 // indirect + cloud.google.com/go/compute/metadata v0.5.2 // indirect cloud.google.com/go/iam v1.1.7 // indirect github.com/Masterminds/goutils v1.1.1 // indirect github.com/Masterminds/semver/v3 v3.2.0 // indirect @@ -56,7 +56,7 @@ require ( github.com/expr-lang/expr v1.16.9 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect github.com/go-jose/go-jose/v3 v3.0.3 // indirect - github.com/go-logr/logr v1.4.1 // indirect + github.com/go-logr/logr v1.4.2 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/go-openapi/jsonpointer v0.20.2 // indirect github.com/go-openapi/jsonreference v0.20.4 // indirect @@ -73,7 +73,7 @@ require ( github.com/googleapis/enterprise-certificate-proxy v0.3.2 // indirect github.com/googleapis/gax-go/v2 v2.12.3 // indirect github.com/gorilla/websocket v1.5.1 // indirect - github.com/grpc-ecosystem/grpc-gateway/v2 v2.19.0 // indirect + github.com/grpc-ecosystem/grpc-gateway v1.16.0 // indirect github.com/hashicorp/go-uuid v1.0.3 // indirect github.com/huandu/xstrings v1.3.3 // indirect github.com/imdario/mergo v0.3.15 // indirect @@ -128,13 +128,13 @@ require ( go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 // indirect go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 // indirect go.opentelemetry.io/contrib/instrumentation/runtime v0.48.0 // indirect - go.opentelemetry.io/otel v1.24.0 // indirect + go.opentelemetry.io/otel v1.31.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.23.0 // indirect go.opentelemetry.io/otel/exporters/prometheus v0.45.1 // indirect - go.opentelemetry.io/otel/metric v1.24.0 // indirect - go.opentelemetry.io/otel/sdk v1.23.0 // indirect - go.opentelemetry.io/otel/sdk/metric v1.23.0 // indirect - go.opentelemetry.io/otel/trace v1.24.0 // indirect + go.opentelemetry.io/otel/metric v1.31.0 // indirect + go.opentelemetry.io/otel/sdk v1.31.0 // indirect + go.opentelemetry.io/otel/sdk/metric v1.31.0 // indirect + go.opentelemetry.io/otel/trace v1.31.0 // indirect go.opentelemetry.io/proto/otlp v1.1.0 // indirect go.uber.org/multierr v1.11.0 // indirect golang.org/x/crypto v0.31.0 // indirect @@ -148,7 +148,7 @@ require ( golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d // indirect golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect google.golang.org/genproto v0.0.0-20240213162025-012b6fc9bca9 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20240318140521-94a12d6c2237 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20241015192408-796eee8c2d53 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect diff --git a/go.sum b/go.sum index 194340ae8..05f5dafec 100644 --- a/go.sum +++ b/go.sum @@ -5,8 +5,8 @@ cloud.google.com/go v0.112.1 h1:uJSeirPke5UNZHIb4SxfZklVSiWWVqW4oXlETwZziwM= cloud.google.com/go v0.112.1/go.mod h1:+Vbu+Y1UU+I1rjmzeMOb/8RfkKJK2Gyxi1X6jJCZLo4= cloud.google.com/go/bigquery v1.60.0 h1:kA96WfgvCbkqfLnr7xI5uEfJ4h4FrnkdEb0yty0KSZo= cloud.google.com/go/bigquery v1.60.0/go.mod h1:Clwk2OeC0ZU5G5LDg7mo+h8U7KlAa5v06z5rptKdM3g= -cloud.google.com/go/compute/metadata v0.3.0 h1:Tz+eQXMEqDIKRsmY3cHTL6FVaynIjX2QxYC4trgAKZc= -cloud.google.com/go/compute/metadata v0.3.0/go.mod h1:zFmK7XCadkQkj6TtorcaGlCW1hT1fIilQDwofLpJ20k= +cloud.google.com/go/compute/metadata v0.5.2 h1:UxK4uu/Tn+I3p2dYWTfiX4wva7aYlKixAHn3fyqngqo= +cloud.google.com/go/compute/metadata v0.5.2/go.mod h1:C66sj2AluDcIqakBq/M8lw8/ybHgOZqin2obFxa/E5k= cloud.google.com/go/datacatalog v1.20.0 h1:BGDsEjqpAo0Ka+b9yDLXnE5k+jU3lXGMh//NsEeDMIg= cloud.google.com/go/datacatalog v1.20.0/go.mod h1:fSHaKjIroFpmRrYlwz9XBB2gJBpXufpnxyAKaT4w6L0= cloud.google.com/go/iam v1.1.7 h1:z4VHOhwKLF/+UYXAJDFwGtNF0b6gjsW1Pk9Ml0U/IoM= @@ -130,8 +130,8 @@ github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas= github.com/go-logr/logr v0.4.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ= -github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= +github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= +github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= github.com/go-openapi/jsonpointer v0.0.0-20160704185906-46af16f9f7b1/go.mod h1:+35s3my2LFTysnkMfxsJBAMHj/DoqoB9knIWoYG/Vk0= @@ -510,20 +510,20 @@ go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 h1:jq9TW8u go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0/go.mod h1:p8pYQP+m5XfbZm9fxtSKAbM6oIllS7s2AfxrChvc7iw= go.opentelemetry.io/contrib/instrumentation/runtime v0.48.0 h1:dJlCKeq+zmO5Og4kgxqPvvJrzuD/mygs1g/NYM9dAsU= go.opentelemetry.io/contrib/instrumentation/runtime v0.48.0/go.mod h1:p+hpBCpLHpuUrR0lHgnHbUnbCBll1IhrcMIlycC+xYs= -go.opentelemetry.io/otel v1.24.0 h1:0LAOdjNmQeSTzGBzduGe/rU4tZhMwL5rWgtp9Ku5Jfo= -go.opentelemetry.io/otel v1.24.0/go.mod h1:W7b9Ozg4nkF5tWI5zsXkaKKDjdVjpD4oAt9Qi/MArHo= +go.opentelemetry.io/otel v1.31.0 h1:NsJcKPIW0D0H3NgzPDHmo0WW6SptzPdqg/L1zsIm2hY= +go.opentelemetry.io/otel v1.31.0/go.mod h1:O0C14Yl9FgkjqcCZAsE053C13OaddMYr/hz6clDkEJE= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.23.0 h1:97CpJflo7dJK4A4SLMNoP2loDEAiG0ifF6MnLhtSHUY= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.23.0/go.mod h1:YzC+4JHcK24PylBTZ78U0XJSYbhHY0uHYNqr+OlcLCs= go.opentelemetry.io/otel/exporters/prometheus v0.45.1 h1:R/bW3afad6q6VGU+MFYpnEdo0stEARMCdhWu6+JI6aI= go.opentelemetry.io/otel/exporters/prometheus v0.45.1/go.mod h1:wnHAfKRav5Dfp4iZhyWZ7SzQfT+rDZpEpYG7To+qJ1k= -go.opentelemetry.io/otel/metric v1.24.0 h1:6EhoGWWK28x1fbpA4tYTOWBkPefTDQnb8WSGXlc88kI= -go.opentelemetry.io/otel/metric v1.24.0/go.mod h1:VYhLe1rFfxuTXLgj4CBiyz+9WYBA8pNGJgDcSFRKBco= -go.opentelemetry.io/otel/sdk v1.23.0 h1:0KM9Zl2esnl+WSukEmlaAEjVY5HDZANOHferLq36BPc= -go.opentelemetry.io/otel/sdk v1.23.0/go.mod h1:wUscup7byToqyKJSilEtMf34FgdCAsFpFOjXnAwFfO0= -go.opentelemetry.io/otel/sdk/metric v1.23.0 h1:u81lMvmK6GMgN4Fty7K7S6cSKOZhMKJMK2TB+KaTs0I= -go.opentelemetry.io/otel/sdk/metric v1.23.0/go.mod h1:2LUOToN/FdX6wtfpHybOnCZjoZ6ViYajJYMiJ1LKDtQ= -go.opentelemetry.io/otel/trace v1.24.0 h1:CsKnnL4dUAr/0llH9FKuc698G04IrpWV0MQA/Y1YELI= -go.opentelemetry.io/otel/trace v1.24.0/go.mod h1:HPc3Xr/cOApsBI154IU0OI0HJexz+aw5uPdbs3UCjNU= +go.opentelemetry.io/otel/metric v1.31.0 h1:FSErL0ATQAmYHUIzSezZibnyVlft1ybhy4ozRPcF2fE= +go.opentelemetry.io/otel/metric v1.31.0/go.mod h1:C3dEloVbLuYoX41KpmAhOqNriGbA+qqH6PQ5E5mUfnY= +go.opentelemetry.io/otel/sdk v1.31.0 h1:xLY3abVHYZ5HSfOg3l2E5LUj2Cwva5Y7yGxnSW9H5Gk= +go.opentelemetry.io/otel/sdk v1.31.0/go.mod h1:TfRbMdhvxIIr/B2N2LQW2S5v9m3gOQ/08KsbbO5BPT0= +go.opentelemetry.io/otel/sdk/metric v1.31.0 h1:i9hxxLJF/9kkvfHppyLL55aW7iIJz4JjxTeYusH7zMc= +go.opentelemetry.io/otel/sdk/metric v1.31.0/go.mod h1:CRInTMVvNhUKgSAMbKyTMxqOBC0zgyxzW55lZzX43Y8= +go.opentelemetry.io/otel/trace v1.31.0 h1:ffjsj1aRouKewfr85U2aGagJ46+MvodynlQ1HYdmJys= +go.opentelemetry.io/otel/trace v1.31.0/go.mod h1:TXZkRk7SM2ZQLtR6eoAWQFIHPvzQ06FJAsO1tJg480A= go.opentelemetry.io/proto/otlp v1.1.0 h1:2Di21piLrCqJ3U3eXGCTPHE9R8Nh+0uglSnOyxikMeI= go.opentelemetry.io/proto/otlp v1.1.0/go.mod h1:GpBHCBWiqvVLDqmHZsoMM3C5ySeKTC7ej/RNTae6MdY= go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= @@ -764,10 +764,10 @@ google.golang.org/genproto v0.0.0-20200513103714-09dca8ec2884/go.mod h1:55QSHmfG google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= google.golang.org/genproto v0.0.0-20240213162025-012b6fc9bca9 h1:9+tzLLstTlPTRyJTh+ah5wIMsBW5c4tQwGTN3thOW9Y= google.golang.org/genproto v0.0.0-20240213162025-012b6fc9bca9/go.mod h1:mqHbVIp48Muh7Ywss/AD6I5kNVKZMmAa/QEW58Gxp2s= -google.golang.org/genproto/googleapis/api v0.0.0-20240314234333-6e1732d8331c h1:kaI7oewGK5YnVwj+Y+EJBO/YN1ht8iTL9XkFHtVZLsc= -google.golang.org/genproto/googleapis/api v0.0.0-20240314234333-6e1732d8331c/go.mod h1:VQW3tUculP/D4B+xVCo+VgSq8As6wA9ZjHl//pmk+6s= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240318140521-94a12d6c2237 h1:NnYq6UN9ReLM9/Y01KWNOWyI5xQ9kbIms5GGJVwS/Yc= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240318140521-94a12d6c2237/go.mod h1:WtryC6hu0hhx87FDGxWCDptyssuo68sk10vYjF+T9fY= +google.golang.org/genproto/googleapis/api v0.0.0-20241015192408-796eee8c2d53 h1:fVoAXEKA4+yufmbdVYv+SE73+cPZbbbe8paLsHfkK+U= +google.golang.org/genproto/googleapis/api v0.0.0-20241015192408-796eee8c2d53/go.mod h1:riSXTwQ4+nqmPGtobMFyW5FqVAmIs0St6VPp4Ug7CE4= +google.golang.org/genproto/googleapis/rpc v0.0.0-20241015192408-796eee8c2d53 h1:X58yt85/IXCx0Y3ZwN6sEIKZzQtDEYaBWrDvErdXrRE= +google.golang.org/genproto/googleapis/rpc v0.0.0-20241015192408-796eee8c2d53/go.mod h1:GX3210XPVPUjJbTUbvwI8f2IpZDMZuPJWDzDuebbviI= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= @@ -775,8 +775,8 @@ google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8 google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk= google.golang.org/grpc v1.33.1/go.mod h1:fr5YgcSWrqhRRxogOsw7RzIpsmvOZ6IcH4kBYTpR3n0= google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= -google.golang.org/grpc v1.62.1 h1:B4n+nfKzOICUXMgyrNd19h/I9oH0L1pizfk1d4zSgTk= -google.golang.org/grpc v1.62.1/go.mod h1:IWTG0VlJLCh1SkC58F7np9ka9mx/WNkjl4PGJaiq+QE= +google.golang.org/grpc v1.69.2 h1:U3S9QEtbXC0bYNvRtcoklF3xGtLViumSYxWykJS+7AU= +google.golang.org/grpc v1.69.2/go.mod h1:vyjdE6jLBI76dgpDojsFGNaHlxdjXN9ghpnd2o7JGZ4= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= @@ -786,8 +786,8 @@ google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2 google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= -google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= -google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= +google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA= +google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= diff --git a/proto/api/v1/service.proto b/proto/api/v1/service.proto index 24208b320..1b2029865 100644 --- a/proto/api/v1/service.proto +++ b/proto/api/v1/service.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option go_package = "v1"; +option go_package = "api/v1"; import "google/api/annotations.proto"; import "google/protobuf/duration.proto"; diff --git a/server/server.go b/server/server.go index a90f67922..748c9096b 100644 --- a/server/server.go +++ b/server/server.go @@ -14,7 +14,7 @@ import ( "github.com/prometheus/client_golang/prometheus/promhttp" grpc_middleware "github.com/grpc-ecosystem/go-grpc-middleware" - "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" "github.com/pkg/errors" "github.com/stackrox/infra/auth" "github.com/stackrox/infra/config" @@ -24,6 +24,7 @@ import ( "golang.org/x/net/http2/h2c" "google.golang.org/grpc" "google.golang.org/grpc/credentials" + "google.golang.org/protobuf/encoding/protojson" ) var log = logging.CreateProductionLogger() @@ -137,7 +138,7 @@ func (s *server) RunServer() (<-chan error, error) { } gwMux := runtime.NewServeMux( - runtime.WithMarshalerOption("*", &runtime.JSONPb{Indent: " "}), + runtime.WithMarshalerOption("*", &runtime.JSONPb{MarshalOptions: protojson.MarshalOptions{Indent: " "}}), ) // Register each service diff --git a/service/cli.go b/service/cli.go index 2823e6d4b..40fdf7371 100644 --- a/service/cli.go +++ b/service/cli.go @@ -5,7 +5,7 @@ import ( "io" "os" - "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" v1 "github.com/stackrox/infra/generated/api/v1" "github.com/stackrox/infra/pkg/logging" "github.com/stackrox/infra/pkg/platform" @@ -16,6 +16,8 @@ import ( const bufferSize = 1000 * 1024 type cliImpl struct { + v1.UnimplementedCliServiceServer + staticDir string } diff --git a/service/cluster/cluster.go b/service/cluster/cluster.go index d18fad23f..2c2cd5db0 100644 --- a/service/cluster/cluster.go +++ b/service/cluster/cluster.go @@ -22,7 +22,7 @@ import ( "github.com/golang/protobuf/ptypes" "github.com/golang/protobuf/ptypes/duration" "github.com/golang/protobuf/ptypes/empty" - "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" "github.com/stackrox/infra/bqutil" "github.com/stackrox/infra/cmd/infractl/common" "github.com/stackrox/infra/flavor" @@ -70,6 +70,8 @@ const ( ) type clusterImpl struct { + v1.UnimplementedClusterServiceServer + k8sWorkflowsClient workflowv1.WorkflowInterface k8sPodsClient k8sv1.PodInterface registry *flavor.Registry diff --git a/service/cluster/helpers.go b/service/cluster/helpers.go index 84154a267..6e5d402ee 100644 --- a/service/cluster/helpers.go +++ b/service/cluster/helpers.go @@ -11,6 +11,7 @@ import ( v1 "github.com/stackrox/infra/generated/api/v1" "github.com/stackrox/infra/pkg/logging" "github.com/stackrox/infra/slack" + "google.golang.org/protobuf/types/known/timestamppb" ) func getClusterIDFromWorkflow(workflow *v1alpha1.Workflow) string { @@ -33,10 +34,10 @@ func clusterFromWorkflow(workflow v1alpha1.Workflow) *v1.Cluster { Description: GetDescription(&workflow), } - cluster.CreatedOn, _ = ptypes.TimestampProto(workflow.Status.StartedAt.Time.UTC()) + cluster.CreatedOn = timestamppb.New(workflow.Status.StartedAt.Time.UTC()) if !workflow.Status.FinishedAt.Time.IsZero() { - cluster.DestroyedOn, _ = ptypes.TimestampProto(workflow.Status.FinishedAt.Time.UTC()) + cluster.DestroyedOn = timestamppb.New(workflow.Status.FinishedAt.Time.UTC()) } return cluster @@ -50,8 +51,12 @@ func isWorkflowExpired(workflow v1alpha1.Workflow) bool { } func isNearingExpiry(workflow v1alpha1.Workflow) bool { - lifespan, _ := ptypes.Duration(GetLifespan(&workflow)) + dur := GetLifespan(&workflow) + if !dur.IsValid() { + return false + } + lifespan := dur.AsDuration() workflowExpiryTime := workflow.Status.StartedAt.Time.Add(lifespan) return time.Now().Add(nearExpiry).After(workflowExpiryTime) } diff --git a/service/flavor.go b/service/flavor.go index 20bafb848..7cfec8c75 100644 --- a/service/flavor.go +++ b/service/flavor.go @@ -3,7 +3,7 @@ package service import ( "context" - "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" "github.com/stackrox/infra/flavor" v1 "github.com/stackrox/infra/generated/api/v1" "github.com/stackrox/infra/service/middleware" @@ -13,6 +13,8 @@ import ( ) type flavorImpl struct { + v1.UnimplementedFlavorServiceServer + registry *flavor.Registry } diff --git a/service/middleware/service.go b/service/middleware/service.go index 4a6e96e7d..bd655e7c1 100644 --- a/service/middleware/service.go +++ b/service/middleware/service.go @@ -3,7 +3,7 @@ package middleware import ( "context" - "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" "google.golang.org/grpc" ) diff --git a/service/status.go b/service/status.go index 1ae63b7e0..308d0fe0b 100644 --- a/service/status.go +++ b/service/status.go @@ -5,7 +5,7 @@ import ( "strconv" "github.com/golang/protobuf/ptypes/empty" - "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" v1 "github.com/stackrox/infra/generated/api/v1" "github.com/stackrox/infra/pkg/kube" "github.com/stackrox/infra/pkg/logging" @@ -19,6 +19,8 @@ import ( ) type statusImpl struct { + v1.UnimplementedInfraStatusServiceServer + k8sConfigMapClient k8sv1.ConfigMapInterface infraNamespace string infraStatusName string diff --git a/service/user.go b/service/user.go index c06ba4c39..4c0b7f024 100644 --- a/service/user.go +++ b/service/user.go @@ -4,7 +4,7 @@ import ( "context" "github.com/golang/protobuf/ptypes/empty" - "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" "github.com/pkg/errors" v1 "github.com/stackrox/infra/generated/api/v1" "github.com/stackrox/infra/service/middleware" @@ -12,6 +12,8 @@ import ( ) type userImpl struct { + v1.UnimplementedUserServiceServer + generate func(v1.ServiceAccount) (string, error) } diff --git a/service/version.go b/service/version.go index e6aa47ee0..bedf3c04b 100644 --- a/service/version.go +++ b/service/version.go @@ -4,14 +4,16 @@ import ( "context" "github.com/golang/protobuf/ptypes/empty" - "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" v1 "github.com/stackrox/infra/generated/api/v1" "github.com/stackrox/infra/pkg/buildinfo" "github.com/stackrox/infra/service/middleware" "google.golang.org/grpc" ) -type versionImpl struct{} +type versionImpl struct { + v1.UnimplementedVersionServiceServer +} var ( _ middleware.APIService = (*versionImpl)(nil) diff --git a/test/e2e/cluster/list_test.go b/test/e2e/cluster/list_test.go index 78c1db6a2..2b698e463 100644 --- a/test/e2e/cluster/list_test.go +++ b/test/e2e/cluster/list_test.go @@ -1,5 +1,5 @@ -//go:build e2e -// +build e2e +//go:build e2e2 +// +build e2e2 package cluster_test diff --git a/test/e2e/cluster/status_test.go b/test/e2e/cluster/status_test.go index 872c2fa6a..0b44500ed 100644 --- a/test/e2e/cluster/status_test.go +++ b/test/e2e/cluster/status_test.go @@ -1,5 +1,5 @@ -//go:build e2e -// +build e2e +//go:build e2e2 +// +build e2e2 package cluster_test