diff --git a/go/svc/project/v1/projectv1connect/service.connect.go b/go/svc/project/v1/projectv1connect/service.connect.go index bc2456b..3083098 100644 --- a/go/svc/project/v1/projectv1connect/service.connect.go +++ b/go/svc/project/v1/projectv1connect/service.connect.go @@ -36,6 +36,9 @@ const ( // ProjectServiceCreateProjectProcedure is the fully-qualified name of the ProjectService's // CreateProject RPC. ProjectServiceCreateProjectProcedure = "/svc.project.v1.ProjectService/CreateProject" + // ProjectServiceValidateProjectProcedure is the fully-qualified name of the ProjectService's + // ValidateProject RPC. + ProjectServiceValidateProjectProcedure = "/svc.project.v1.ProjectService/ValidateProject" // ProjectServiceGetProjectProcedure is the fully-qualified name of the ProjectService's GetProject // RPC. ProjectServiceGetProjectProcedure = "/svc.project.v1.ProjectService/GetProject" @@ -56,6 +59,7 @@ const ( // ProjectServiceClient is a client for the svc.project.v1.ProjectService service. type ProjectServiceClient interface { CreateProject(context.Context, *connect.Request[v1.CreateProjectRequest]) (*connect.Response[v1.CreateProjectResponse], error) + ValidateProject(context.Context, *connect.Request[v1.ValidateProjectRequest]) (*connect.Response[v1.ValidateProjectResponse], error) GetProject(context.Context, *connect.Request[v1.GetProjectRequest]) (*connect.Response[v1.GetProjectResponse], error) UpdateProject(context.Context, *connect.Request[v1.UpdateProjectRequest]) (*connect.Response[v1.UpdateProjectResponse], error) DeleteProject(context.Context, *connect.Request[v1.DeleteProjectRequest]) (*connect.Response[v1.DeleteProjectResponse], error) @@ -82,6 +86,12 @@ func NewProjectServiceClient(httpClient connect.HTTPClient, baseURL string, opts connect.WithSchema(projectServiceMethods.ByName("CreateProject")), connect.WithClientOptions(opts...), ), + validateProject: connect.NewClient[v1.ValidateProjectRequest, v1.ValidateProjectResponse]( + httpClient, + baseURL+ProjectServiceValidateProjectProcedure, + connect.WithSchema(projectServiceMethods.ByName("ValidateProject")), + connect.WithClientOptions(opts...), + ), getProject: connect.NewClient[v1.GetProjectRequest, v1.GetProjectResponse]( httpClient, baseURL+ProjectServiceGetProjectProcedure, @@ -117,12 +127,13 @@ func NewProjectServiceClient(httpClient connect.HTTPClient, baseURL string, opts // projectServiceClient implements ProjectServiceClient. type projectServiceClient struct { - createProject *connect.Client[v1.CreateProjectRequest, v1.CreateProjectResponse] - getProject *connect.Client[v1.GetProjectRequest, v1.GetProjectResponse] - updateProject *connect.Client[v1.UpdateProjectRequest, v1.UpdateProjectResponse] - deleteProject *connect.Client[v1.DeleteProjectRequest, v1.DeleteProjectResponse] - listProject *connect.Client[v1.ListProjectRequest, v1.ListProjectResponse] - syncProject *connect.Client[v1.SyncProjectRequest, v1.SyncProjectResponse] + createProject *connect.Client[v1.CreateProjectRequest, v1.CreateProjectResponse] + validateProject *connect.Client[v1.ValidateProjectRequest, v1.ValidateProjectResponse] + getProject *connect.Client[v1.GetProjectRequest, v1.GetProjectResponse] + updateProject *connect.Client[v1.UpdateProjectRequest, v1.UpdateProjectResponse] + deleteProject *connect.Client[v1.DeleteProjectRequest, v1.DeleteProjectResponse] + listProject *connect.Client[v1.ListProjectRequest, v1.ListProjectResponse] + syncProject *connect.Client[v1.SyncProjectRequest, v1.SyncProjectResponse] } // CreateProject calls svc.project.v1.ProjectService.CreateProject. @@ -130,6 +141,11 @@ func (c *projectServiceClient) CreateProject(ctx context.Context, req *connect.R return c.createProject.CallUnary(ctx, req) } +// ValidateProject calls svc.project.v1.ProjectService.ValidateProject. +func (c *projectServiceClient) ValidateProject(ctx context.Context, req *connect.Request[v1.ValidateProjectRequest]) (*connect.Response[v1.ValidateProjectResponse], error) { + return c.validateProject.CallUnary(ctx, req) +} + // GetProject calls svc.project.v1.ProjectService.GetProject. func (c *projectServiceClient) GetProject(ctx context.Context, req *connect.Request[v1.GetProjectRequest]) (*connect.Response[v1.GetProjectResponse], error) { return c.getProject.CallUnary(ctx, req) @@ -158,6 +174,7 @@ func (c *projectServiceClient) SyncProject(ctx context.Context, req *connect.Req // ProjectServiceHandler is an implementation of the svc.project.v1.ProjectService service. type ProjectServiceHandler interface { CreateProject(context.Context, *connect.Request[v1.CreateProjectRequest]) (*connect.Response[v1.CreateProjectResponse], error) + ValidateProject(context.Context, *connect.Request[v1.ValidateProjectRequest]) (*connect.Response[v1.ValidateProjectResponse], error) GetProject(context.Context, *connect.Request[v1.GetProjectRequest]) (*connect.Response[v1.GetProjectResponse], error) UpdateProject(context.Context, *connect.Request[v1.UpdateProjectRequest]) (*connect.Response[v1.UpdateProjectResponse], error) DeleteProject(context.Context, *connect.Request[v1.DeleteProjectRequest]) (*connect.Response[v1.DeleteProjectResponse], error) @@ -180,6 +197,12 @@ func NewProjectServiceHandler(svc ProjectServiceHandler, opts ...connect.Handler connect.WithSchema(projectServiceMethods.ByName("CreateProject")), connect.WithHandlerOptions(opts...), ) + projectServiceValidateProjectHandler := connect.NewUnaryHandler( + ProjectServiceValidateProjectProcedure, + svc.ValidateProject, + connect.WithSchema(projectServiceMethods.ByName("ValidateProject")), + connect.WithHandlerOptions(opts...), + ) projectServiceGetProjectHandler := connect.NewUnaryHandler( ProjectServiceGetProjectProcedure, svc.GetProject, @@ -214,6 +237,8 @@ func NewProjectServiceHandler(svc ProjectServiceHandler, opts ...connect.Handler switch r.URL.Path { case ProjectServiceCreateProjectProcedure: projectServiceCreateProjectHandler.ServeHTTP(w, r) + case ProjectServiceValidateProjectProcedure: + projectServiceValidateProjectHandler.ServeHTTP(w, r) case ProjectServiceGetProjectProcedure: projectServiceGetProjectHandler.ServeHTTP(w, r) case ProjectServiceUpdateProjectProcedure: @@ -237,6 +262,10 @@ func (UnimplementedProjectServiceHandler) CreateProject(context.Context, *connec return nil, connect.NewError(connect.CodeUnimplemented, errors.New("svc.project.v1.ProjectService.CreateProject is not implemented")) } +func (UnimplementedProjectServiceHandler) ValidateProject(context.Context, *connect.Request[v1.ValidateProjectRequest]) (*connect.Response[v1.ValidateProjectResponse], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("svc.project.v1.ProjectService.ValidateProject is not implemented")) +} + func (UnimplementedProjectServiceHandler) GetProject(context.Context, *connect.Request[v1.GetProjectRequest]) (*connect.Response[v1.GetProjectResponse], error) { return nil, connect.NewError(connect.CodeUnimplemented, errors.New("svc.project.v1.ProjectService.GetProject is not implemented")) } diff --git a/go/svc/project/v1/service.pb.go b/go/svc/project/v1/service.pb.go index e60b081..9300140 100644 --- a/go/svc/project/v1/service.pb.go +++ b/go/svc/project/v1/service.pb.go @@ -119,6 +119,102 @@ func (x *CreateProjectResponse) GetProject() *v1.Project { return nil } +type ValidateProjectRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + EnvironmentId int64 `protobuf:"varint,101,opt,name=environment_id,json=environmentId,proto3" json:"environment_id,omitempty"` + Spec *v1.ProjectSpec `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ValidateProjectRequest) Reset() { + *x = ValidateProjectRequest{} + mi := &file_svc_project_v1_service_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ValidateProjectRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ValidateProjectRequest) ProtoMessage() {} + +func (x *ValidateProjectRequest) ProtoReflect() protoreflect.Message { + mi := &file_svc_project_v1_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) +} + +// Deprecated: Use ValidateProjectRequest.ProtoReflect.Descriptor instead. +func (*ValidateProjectRequest) Descriptor() ([]byte, []int) { + return file_svc_project_v1_service_proto_rawDescGZIP(), []int{2} +} + +func (x *ValidateProjectRequest) GetEnvironmentId() int64 { + if x != nil { + return x.EnvironmentId + } + return 0 +} + +func (x *ValidateProjectRequest) GetSpec() *v1.ProjectSpec { + if x != nil { + return x.Spec + } + return nil +} + +type ValidateProjectResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + Warnings []string `protobuf:"bytes,1,rep,name=warnings,proto3" json:"warnings,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ValidateProjectResponse) Reset() { + *x = ValidateProjectResponse{} + mi := &file_svc_project_v1_service_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ValidateProjectResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ValidateProjectResponse) ProtoMessage() {} + +func (x *ValidateProjectResponse) ProtoReflect() protoreflect.Message { + mi := &file_svc_project_v1_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) +} + +// Deprecated: Use ValidateProjectResponse.ProtoReflect.Descriptor instead. +func (*ValidateProjectResponse) Descriptor() ([]byte, []int) { + return file_svc_project_v1_service_proto_rawDescGZIP(), []int{3} +} + +func (x *ValidateProjectResponse) GetWarnings() []string { + if x != nil { + return x.Warnings + } + return nil +} + type GetProjectRequest struct { state protoimpl.MessageState `protogen:"open.v1"` EnvironmentId int64 `protobuf:"varint,101,opt,name=environment_id,json=environmentId,proto3" json:"environment_id,omitempty"` @@ -129,7 +225,7 @@ type GetProjectRequest struct { func (x *GetProjectRequest) Reset() { *x = GetProjectRequest{} - mi := &file_svc_project_v1_service_proto_msgTypes[2] + mi := &file_svc_project_v1_service_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -141,7 +237,7 @@ func (x *GetProjectRequest) String() string { func (*GetProjectRequest) ProtoMessage() {} func (x *GetProjectRequest) ProtoReflect() protoreflect.Message { - mi := &file_svc_project_v1_service_proto_msgTypes[2] + mi := &file_svc_project_v1_service_proto_msgTypes[4] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -154,7 +250,7 @@ func (x *GetProjectRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetProjectRequest.ProtoReflect.Descriptor instead. func (*GetProjectRequest) Descriptor() ([]byte, []int) { - return file_svc_project_v1_service_proto_rawDescGZIP(), []int{2} + return file_svc_project_v1_service_proto_rawDescGZIP(), []int{4} } func (x *GetProjectRequest) GetEnvironmentId() int64 { @@ -182,7 +278,7 @@ type GetProjectResponse struct { func (x *GetProjectResponse) Reset() { *x = GetProjectResponse{} - mi := &file_svc_project_v1_service_proto_msgTypes[3] + mi := &file_svc_project_v1_service_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -194,7 +290,7 @@ func (x *GetProjectResponse) String() string { func (*GetProjectResponse) ProtoMessage() {} func (x *GetProjectResponse) ProtoReflect() protoreflect.Message { - mi := &file_svc_project_v1_service_proto_msgTypes[3] + mi := &file_svc_project_v1_service_proto_msgTypes[5] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -207,7 +303,7 @@ func (x *GetProjectResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetProjectResponse.ProtoReflect.Descriptor instead. func (*GetProjectResponse) Descriptor() ([]byte, []int) { - return file_svc_project_v1_service_proto_rawDescGZIP(), []int{3} + return file_svc_project_v1_service_proto_rawDescGZIP(), []int{5} } func (x *GetProjectResponse) GetProject() *v1.Project { @@ -242,7 +338,7 @@ type UpdateProjectRequest struct { func (x *UpdateProjectRequest) Reset() { *x = UpdateProjectRequest{} - mi := &file_svc_project_v1_service_proto_msgTypes[4] + mi := &file_svc_project_v1_service_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -254,7 +350,7 @@ func (x *UpdateProjectRequest) String() string { func (*UpdateProjectRequest) ProtoMessage() {} func (x *UpdateProjectRequest) ProtoReflect() protoreflect.Message { - mi := &file_svc_project_v1_service_proto_msgTypes[4] + mi := &file_svc_project_v1_service_proto_msgTypes[6] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -267,7 +363,7 @@ func (x *UpdateProjectRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateProjectRequest.ProtoReflect.Descriptor instead. func (*UpdateProjectRequest) Descriptor() ([]byte, []int) { - return file_svc_project_v1_service_proto_rawDescGZIP(), []int{4} + return file_svc_project_v1_service_proto_rawDescGZIP(), []int{6} } func (x *UpdateProjectRequest) GetEnvironmentId() int64 { @@ -300,7 +396,7 @@ type UpdateProjectResponse struct { func (x *UpdateProjectResponse) Reset() { *x = UpdateProjectResponse{} - mi := &file_svc_project_v1_service_proto_msgTypes[5] + mi := &file_svc_project_v1_service_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -312,7 +408,7 @@ func (x *UpdateProjectResponse) String() string { func (*UpdateProjectResponse) ProtoMessage() {} func (x *UpdateProjectResponse) ProtoReflect() protoreflect.Message { - mi := &file_svc_project_v1_service_proto_msgTypes[5] + mi := &file_svc_project_v1_service_proto_msgTypes[7] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -325,7 +421,7 @@ func (x *UpdateProjectResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateProjectResponse.ProtoReflect.Descriptor instead. func (*UpdateProjectResponse) Descriptor() ([]byte, []int) { - return file_svc_project_v1_service_proto_rawDescGZIP(), []int{5} + return file_svc_project_v1_service_proto_rawDescGZIP(), []int{7} } func (x *UpdateProjectResponse) GetProject() *v1.Project { @@ -345,7 +441,7 @@ type DeleteProjectRequest struct { func (x *DeleteProjectRequest) Reset() { *x = DeleteProjectRequest{} - mi := &file_svc_project_v1_service_proto_msgTypes[6] + mi := &file_svc_project_v1_service_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -357,7 +453,7 @@ func (x *DeleteProjectRequest) String() string { func (*DeleteProjectRequest) ProtoMessage() {} func (x *DeleteProjectRequest) ProtoReflect() protoreflect.Message { - mi := &file_svc_project_v1_service_proto_msgTypes[6] + mi := &file_svc_project_v1_service_proto_msgTypes[8] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -370,7 +466,7 @@ func (x *DeleteProjectRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteProjectRequest.ProtoReflect.Descriptor instead. func (*DeleteProjectRequest) Descriptor() ([]byte, []int) { - return file_svc_project_v1_service_proto_rawDescGZIP(), []int{6} + return file_svc_project_v1_service_proto_rawDescGZIP(), []int{8} } func (x *DeleteProjectRequest) GetEnvironmentId() int64 { @@ -395,7 +491,7 @@ type DeleteProjectResponse struct { func (x *DeleteProjectResponse) Reset() { *x = DeleteProjectResponse{} - mi := &file_svc_project_v1_service_proto_msgTypes[7] + mi := &file_svc_project_v1_service_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -407,7 +503,7 @@ func (x *DeleteProjectResponse) String() string { func (*DeleteProjectResponse) ProtoMessage() {} func (x *DeleteProjectResponse) ProtoReflect() protoreflect.Message { - mi := &file_svc_project_v1_service_proto_msgTypes[7] + mi := &file_svc_project_v1_service_proto_msgTypes[9] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -420,7 +516,7 @@ func (x *DeleteProjectResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteProjectResponse.ProtoReflect.Descriptor instead. func (*DeleteProjectResponse) Descriptor() ([]byte, []int) { - return file_svc_project_v1_service_proto_rawDescGZIP(), []int{7} + return file_svc_project_v1_service_proto_rawDescGZIP(), []int{9} } type ListProjectRequest struct { @@ -434,7 +530,7 @@ type ListProjectRequest struct { func (x *ListProjectRequest) Reset() { *x = ListProjectRequest{} - mi := &file_svc_project_v1_service_proto_msgTypes[8] + mi := &file_svc_project_v1_service_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -446,7 +542,7 @@ func (x *ListProjectRequest) String() string { func (*ListProjectRequest) ProtoMessage() {} func (x *ListProjectRequest) ProtoReflect() protoreflect.Message { - mi := &file_svc_project_v1_service_proto_msgTypes[8] + mi := &file_svc_project_v1_service_proto_msgTypes[10] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -459,7 +555,7 @@ func (x *ListProjectRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListProjectRequest.ProtoReflect.Descriptor instead. func (*ListProjectRequest) Descriptor() ([]byte, []int) { - return file_svc_project_v1_service_proto_rawDescGZIP(), []int{8} + return file_svc_project_v1_service_proto_rawDescGZIP(), []int{10} } func (x *ListProjectRequest) GetEnvironmentId() int64 { @@ -493,7 +589,7 @@ type ListProjectResponse struct { func (x *ListProjectResponse) Reset() { *x = ListProjectResponse{} - mi := &file_svc_project_v1_service_proto_msgTypes[9] + mi := &file_svc_project_v1_service_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -505,7 +601,7 @@ func (x *ListProjectResponse) String() string { func (*ListProjectResponse) ProtoMessage() {} func (x *ListProjectResponse) ProtoReflect() protoreflect.Message { - mi := &file_svc_project_v1_service_proto_msgTypes[9] + mi := &file_svc_project_v1_service_proto_msgTypes[11] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -518,7 +614,7 @@ func (x *ListProjectResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListProjectResponse.ProtoReflect.Descriptor instead. func (*ListProjectResponse) Descriptor() ([]byte, []int) { - return file_svc_project_v1_service_proto_rawDescGZIP(), []int{9} + return file_svc_project_v1_service_proto_rawDescGZIP(), []int{11} } func (x *ListProjectResponse) GetNext() *v1.Cursor { @@ -545,7 +641,7 @@ type SyncProjectRequest struct { func (x *SyncProjectRequest) Reset() { *x = SyncProjectRequest{} - mi := &file_svc_project_v1_service_proto_msgTypes[10] + mi := &file_svc_project_v1_service_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -557,7 +653,7 @@ func (x *SyncProjectRequest) String() string { func (*SyncProjectRequest) ProtoMessage() {} func (x *SyncProjectRequest) ProtoReflect() protoreflect.Message { - mi := &file_svc_project_v1_service_proto_msgTypes[10] + mi := &file_svc_project_v1_service_proto_msgTypes[12] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -570,7 +666,7 @@ func (x *SyncProjectRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use SyncProjectRequest.ProtoReflect.Descriptor instead. func (*SyncProjectRequest) Descriptor() ([]byte, []int) { - return file_svc_project_v1_service_proto_rawDescGZIP(), []int{10} + return file_svc_project_v1_service_proto_rawDescGZIP(), []int{12} } func (x *SyncProjectRequest) GetEnvironmentId() int64 { @@ -596,7 +692,7 @@ type SyncProjectResponse struct { func (x *SyncProjectResponse) Reset() { *x = SyncProjectResponse{} - mi := &file_svc_project_v1_service_proto_msgTypes[11] + mi := &file_svc_project_v1_service_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -608,7 +704,7 @@ func (x *SyncProjectResponse) String() string { func (*SyncProjectResponse) ProtoMessage() {} func (x *SyncProjectResponse) ProtoReflect() protoreflect.Message { - mi := &file_svc_project_v1_service_proto_msgTypes[11] + mi := &file_svc_project_v1_service_proto_msgTypes[13] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -621,7 +717,7 @@ func (x *SyncProjectResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use SyncProjectResponse.ProtoReflect.Descriptor instead. func (*SyncProjectResponse) Descriptor() ([]byte, []int) { - return file_svc_project_v1_service_proto_rawDescGZIP(), []int{11} + return file_svc_project_v1_service_proto_rawDescGZIP(), []int{13} } func (x *SyncProjectResponse) GetProject() *v1.Project { @@ -640,7 +736,7 @@ type ListProjectResponse_ListItem struct { func (x *ListProjectResponse_ListItem) Reset() { *x = ListProjectResponse_ListItem{} - mi := &file_svc_project_v1_service_proto_msgTypes[12] + mi := &file_svc_project_v1_service_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -652,7 +748,7 @@ func (x *ListProjectResponse_ListItem) String() string { func (*ListProjectResponse_ListItem) ProtoMessage() {} func (x *ListProjectResponse_ListItem) ProtoReflect() protoreflect.Message { - mi := &file_svc_project_v1_service_proto_msgTypes[12] + mi := &file_svc_project_v1_service_proto_msgTypes[14] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -665,7 +761,7 @@ func (x *ListProjectResponse_ListItem) ProtoReflect() protoreflect.Message { // Deprecated: Use ListProjectResponse_ListItem.ProtoReflect.Descriptor instead. func (*ListProjectResponse_ListItem) Descriptor() ([]byte, []int) { - return file_svc_project_v1_service_proto_rawDescGZIP(), []int{9, 0} + return file_svc_project_v1_service_proto_rawDescGZIP(), []int{11, 0} } func (x *ListProjectResponse_ListItem) GetProject() *v1.Project { @@ -684,7 +780,12 @@ const file_svc_project_v1_service_proto_rawDesc = "" + "\x0eenvironment_id\x18e \x01(\x03R\renvironmentId\x121\n" + "\x04spec\x18\x01 \x01(\v2\x15.types.v1.ProjectSpecB\x06\xbaH\x03\xc8\x01\x01R\x04spec\"D\n" + "\x15CreateProjectResponse\x12+\n" + - "\aproject\x18\x01 \x01(\v2\x11.types.v1.ProjectR\aproject\"V\n" + + "\aproject\x18\x01 \x01(\v2\x11.types.v1.ProjectR\aproject\"r\n" + + "\x16ValidateProjectRequest\x12%\n" + + "\x0eenvironment_id\x18e \x01(\x03R\renvironmentId\x121\n" + + "\x04spec\x18\x01 \x01(\v2\x15.types.v1.ProjectSpecB\x06\xbaH\x03\xc8\x01\x01R\x04spec\"5\n" + + "\x17ValidateProjectResponse\x12\x1a\n" + + "\bwarnings\x18\x01 \x03(\tR\bwarnings\"V\n" + "\x11GetProjectRequest\x12%\n" + "\x0eenvironment_id\x18e \x01(\x03R\renvironmentId\x12\x1a\n" + "\x04name\x18\x01 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\x04name\"\xaf\x01\n" + @@ -717,9 +818,10 @@ const file_svc_project_v1_service_proto_rawDesc = "" + "\x0eenvironment_id\x18e \x01(\x03R\renvironmentId\x12\x1a\n" + "\x04name\x18\x01 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\x04name\"B\n" + "\x13SyncProjectResponse\x12+\n" + - "\aproject\x18\x01 \x01(\v2\x11.types.v1.ProjectR\aproject2\xaf\x04\n" + + "\aproject\x18\x01 \x01(\v2\x11.types.v1.ProjectR\aproject2\x93\x05\n" + "\x0eProjectService\x12\\\n" + - "\rCreateProject\x12$.svc.project.v1.CreateProjectRequest\x1a%.svc.project.v1.CreateProjectResponse\x12S\n" + + "\rCreateProject\x12$.svc.project.v1.CreateProjectRequest\x1a%.svc.project.v1.CreateProjectResponse\x12b\n" + + "\x0fValidateProject\x12&.svc.project.v1.ValidateProjectRequest\x1a'.svc.project.v1.ValidateProjectResponse\x12S\n" + "\n" + "GetProject\x12!.svc.project.v1.GetProjectRequest\x1a\".svc.project.v1.GetProjectResponse\x12\\\n" + "\rUpdateProject\x12$.svc.project.v1.UpdateProjectRequest\x1a%.svc.project.v1.UpdateProjectResponse\x12\\\n" + @@ -740,57 +842,62 @@ func file_svc_project_v1_service_proto_rawDescGZIP() []byte { return file_svc_project_v1_service_proto_rawDescData } -var file_svc_project_v1_service_proto_msgTypes = make([]protoimpl.MessageInfo, 13) +var file_svc_project_v1_service_proto_msgTypes = make([]protoimpl.MessageInfo, 15) var file_svc_project_v1_service_proto_goTypes = []any{ (*CreateProjectRequest)(nil), // 0: svc.project.v1.CreateProjectRequest (*CreateProjectResponse)(nil), // 1: svc.project.v1.CreateProjectResponse - (*GetProjectRequest)(nil), // 2: svc.project.v1.GetProjectRequest - (*GetProjectResponse)(nil), // 3: svc.project.v1.GetProjectResponse - (*UpdateProjectRequest)(nil), // 4: svc.project.v1.UpdateProjectRequest - (*UpdateProjectResponse)(nil), // 5: svc.project.v1.UpdateProjectResponse - (*DeleteProjectRequest)(nil), // 6: svc.project.v1.DeleteProjectRequest - (*DeleteProjectResponse)(nil), // 7: svc.project.v1.DeleteProjectResponse - (*ListProjectRequest)(nil), // 8: svc.project.v1.ListProjectRequest - (*ListProjectResponse)(nil), // 9: svc.project.v1.ListProjectResponse - (*SyncProjectRequest)(nil), // 10: svc.project.v1.SyncProjectRequest - (*SyncProjectResponse)(nil), // 11: svc.project.v1.SyncProjectResponse - (*ListProjectResponse_ListItem)(nil), // 12: svc.project.v1.ListProjectResponse.ListItem - (*v1.ProjectSpec)(nil), // 13: types.v1.ProjectSpec - (*v1.Project)(nil), // 14: types.v1.Project - (*v1.Dashboard)(nil), // 15: types.v1.Dashboard - (*v1.AlertGroup)(nil), // 16: types.v1.AlertGroup - (*v1.Cursor)(nil), // 17: types.v1.Cursor + (*ValidateProjectRequest)(nil), // 2: svc.project.v1.ValidateProjectRequest + (*ValidateProjectResponse)(nil), // 3: svc.project.v1.ValidateProjectResponse + (*GetProjectRequest)(nil), // 4: svc.project.v1.GetProjectRequest + (*GetProjectResponse)(nil), // 5: svc.project.v1.GetProjectResponse + (*UpdateProjectRequest)(nil), // 6: svc.project.v1.UpdateProjectRequest + (*UpdateProjectResponse)(nil), // 7: svc.project.v1.UpdateProjectResponse + (*DeleteProjectRequest)(nil), // 8: svc.project.v1.DeleteProjectRequest + (*DeleteProjectResponse)(nil), // 9: svc.project.v1.DeleteProjectResponse + (*ListProjectRequest)(nil), // 10: svc.project.v1.ListProjectRequest + (*ListProjectResponse)(nil), // 11: svc.project.v1.ListProjectResponse + (*SyncProjectRequest)(nil), // 12: svc.project.v1.SyncProjectRequest + (*SyncProjectResponse)(nil), // 13: svc.project.v1.SyncProjectResponse + (*ListProjectResponse_ListItem)(nil), // 14: svc.project.v1.ListProjectResponse.ListItem + (*v1.ProjectSpec)(nil), // 15: types.v1.ProjectSpec + (*v1.Project)(nil), // 16: types.v1.Project + (*v1.Dashboard)(nil), // 17: types.v1.Dashboard + (*v1.AlertGroup)(nil), // 18: types.v1.AlertGroup + (*v1.Cursor)(nil), // 19: types.v1.Cursor } var file_svc_project_v1_service_proto_depIdxs = []int32{ - 13, // 0: svc.project.v1.CreateProjectRequest.spec:type_name -> types.v1.ProjectSpec - 14, // 1: svc.project.v1.CreateProjectResponse.project:type_name -> types.v1.Project - 14, // 2: svc.project.v1.GetProjectResponse.project:type_name -> types.v1.Project - 15, // 3: svc.project.v1.GetProjectResponse.dashboards:type_name -> types.v1.Dashboard - 16, // 4: svc.project.v1.GetProjectResponse.alert_groups:type_name -> types.v1.AlertGroup - 13, // 5: svc.project.v1.UpdateProjectRequest.spec:type_name -> types.v1.ProjectSpec - 14, // 6: svc.project.v1.UpdateProjectResponse.project:type_name -> types.v1.Project - 17, // 7: svc.project.v1.ListProjectRequest.cursor:type_name -> types.v1.Cursor - 17, // 8: svc.project.v1.ListProjectResponse.next:type_name -> types.v1.Cursor - 12, // 9: svc.project.v1.ListProjectResponse.items:type_name -> svc.project.v1.ListProjectResponse.ListItem - 14, // 10: svc.project.v1.SyncProjectResponse.project:type_name -> types.v1.Project - 14, // 11: svc.project.v1.ListProjectResponse.ListItem.project:type_name -> types.v1.Project - 0, // 12: svc.project.v1.ProjectService.CreateProject:input_type -> svc.project.v1.CreateProjectRequest - 2, // 13: svc.project.v1.ProjectService.GetProject:input_type -> svc.project.v1.GetProjectRequest - 4, // 14: svc.project.v1.ProjectService.UpdateProject:input_type -> svc.project.v1.UpdateProjectRequest - 6, // 15: svc.project.v1.ProjectService.DeleteProject:input_type -> svc.project.v1.DeleteProjectRequest - 8, // 16: svc.project.v1.ProjectService.ListProject:input_type -> svc.project.v1.ListProjectRequest - 10, // 17: svc.project.v1.ProjectService.SyncProject:input_type -> svc.project.v1.SyncProjectRequest - 1, // 18: svc.project.v1.ProjectService.CreateProject:output_type -> svc.project.v1.CreateProjectResponse - 3, // 19: svc.project.v1.ProjectService.GetProject:output_type -> svc.project.v1.GetProjectResponse - 5, // 20: svc.project.v1.ProjectService.UpdateProject:output_type -> svc.project.v1.UpdateProjectResponse - 7, // 21: svc.project.v1.ProjectService.DeleteProject:output_type -> svc.project.v1.DeleteProjectResponse - 9, // 22: svc.project.v1.ProjectService.ListProject:output_type -> svc.project.v1.ListProjectResponse - 11, // 23: svc.project.v1.ProjectService.SyncProject:output_type -> svc.project.v1.SyncProjectResponse - 18, // [18:24] is the sub-list for method output_type - 12, // [12:18] is the sub-list for method input_type - 12, // [12:12] is the sub-list for extension type_name - 12, // [12:12] is the sub-list for extension extendee - 0, // [0:12] is the sub-list for field type_name + 15, // 0: svc.project.v1.CreateProjectRequest.spec:type_name -> types.v1.ProjectSpec + 16, // 1: svc.project.v1.CreateProjectResponse.project:type_name -> types.v1.Project + 15, // 2: svc.project.v1.ValidateProjectRequest.spec:type_name -> types.v1.ProjectSpec + 16, // 3: svc.project.v1.GetProjectResponse.project:type_name -> types.v1.Project + 17, // 4: svc.project.v1.GetProjectResponse.dashboards:type_name -> types.v1.Dashboard + 18, // 5: svc.project.v1.GetProjectResponse.alert_groups:type_name -> types.v1.AlertGroup + 15, // 6: svc.project.v1.UpdateProjectRequest.spec:type_name -> types.v1.ProjectSpec + 16, // 7: svc.project.v1.UpdateProjectResponse.project:type_name -> types.v1.Project + 19, // 8: svc.project.v1.ListProjectRequest.cursor:type_name -> types.v1.Cursor + 19, // 9: svc.project.v1.ListProjectResponse.next:type_name -> types.v1.Cursor + 14, // 10: svc.project.v1.ListProjectResponse.items:type_name -> svc.project.v1.ListProjectResponse.ListItem + 16, // 11: svc.project.v1.SyncProjectResponse.project:type_name -> types.v1.Project + 16, // 12: svc.project.v1.ListProjectResponse.ListItem.project:type_name -> types.v1.Project + 0, // 13: svc.project.v1.ProjectService.CreateProject:input_type -> svc.project.v1.CreateProjectRequest + 2, // 14: svc.project.v1.ProjectService.ValidateProject:input_type -> svc.project.v1.ValidateProjectRequest + 4, // 15: svc.project.v1.ProjectService.GetProject:input_type -> svc.project.v1.GetProjectRequest + 6, // 16: svc.project.v1.ProjectService.UpdateProject:input_type -> svc.project.v1.UpdateProjectRequest + 8, // 17: svc.project.v1.ProjectService.DeleteProject:input_type -> svc.project.v1.DeleteProjectRequest + 10, // 18: svc.project.v1.ProjectService.ListProject:input_type -> svc.project.v1.ListProjectRequest + 12, // 19: svc.project.v1.ProjectService.SyncProject:input_type -> svc.project.v1.SyncProjectRequest + 1, // 20: svc.project.v1.ProjectService.CreateProject:output_type -> svc.project.v1.CreateProjectResponse + 3, // 21: svc.project.v1.ProjectService.ValidateProject:output_type -> svc.project.v1.ValidateProjectResponse + 5, // 22: svc.project.v1.ProjectService.GetProject:output_type -> svc.project.v1.GetProjectResponse + 7, // 23: svc.project.v1.ProjectService.UpdateProject:output_type -> svc.project.v1.UpdateProjectResponse + 9, // 24: svc.project.v1.ProjectService.DeleteProject:output_type -> svc.project.v1.DeleteProjectResponse + 11, // 25: svc.project.v1.ProjectService.ListProject:output_type -> svc.project.v1.ListProjectResponse + 13, // 26: svc.project.v1.ProjectService.SyncProject:output_type -> svc.project.v1.SyncProjectResponse + 20, // [20:27] is the sub-list for method output_type + 13, // [13:20] is the sub-list for method input_type + 13, // [13:13] is the sub-list for extension type_name + 13, // [13:13] is the sub-list for extension extendee + 0, // [0:13] is the sub-list for field type_name } func init() { file_svc_project_v1_service_proto_init() } @@ -804,7 +911,7 @@ func file_svc_project_v1_service_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: unsafe.Slice(unsafe.StringData(file_svc_project_v1_service_proto_rawDesc), len(file_svc_project_v1_service_proto_rawDesc)), NumEnums: 0, - NumMessages: 13, + NumMessages: 15, NumExtensions: 0, NumServices: 1, }, diff --git a/js/svc/project/v1/service-ProjectService_connectquery.ts b/js/svc/project/v1/service-ProjectService_connectquery.ts index 0f4da50..4d055d5 100644 --- a/js/svc/project/v1/service-ProjectService_connectquery.ts +++ b/js/svc/project/v1/service-ProjectService_connectquery.ts @@ -9,6 +9,11 @@ import { ProjectService } from "./service_pb"; */ export const createProject = ProjectService.method.createProject; +/** + * @generated from rpc svc.project.v1.ProjectService.ValidateProject + */ +export const validateProject = ProjectService.method.validateProject; + /** * @generated from rpc svc.project.v1.ProjectService.GetProject */ diff --git a/js/svc/project/v1/service_pb.ts b/js/svc/project/v1/service_pb.ts index da79891..2a339f5 100644 --- a/js/svc/project/v1/service_pb.ts +++ b/js/svc/project/v1/service_pb.ts @@ -19,7 +19,7 @@ import type { Message } from "@bufbuild/protobuf"; * Describes the file svc/project/v1/service.proto. */ export const file_svc_project_v1_service: GenFile = /*@__PURE__*/ - fileDesc("ChxzdmMvcHJvamVjdC92MS9zZXJ2aWNlLnByb3RvEg5zdmMucHJvamVjdC52MSJbChRDcmVhdGVQcm9qZWN0UmVxdWVzdBIWCg5lbnZpcm9ubWVudF9pZBhlIAEoAxIrCgRzcGVjGAEgASgLMhUudHlwZXMudjEuUHJvamVjdFNwZWNCBrpIA8gBASI7ChVDcmVhdGVQcm9qZWN0UmVzcG9uc2USIgoHcHJvamVjdBgBIAEoCzIRLnR5cGVzLnYxLlByb2plY3QiQQoRR2V0UHJvamVjdFJlcXVlc3QSFgoOZW52aXJvbm1lbnRfaWQYZSABKAMSFAoEbmFtZRgBIAEoCUIGukgDyAEBIo0BChJHZXRQcm9qZWN0UmVzcG9uc2USIgoHcHJvamVjdBgBIAEoCzIRLnR5cGVzLnYxLlByb2plY3QSJwoKZGFzaGJvYXJkcxgCIAMoCzITLnR5cGVzLnYxLkRhc2hib2FyZBIqCgxhbGVydF9ncm91cHMYAyADKAsyFC50eXBlcy52MS5BbGVydEdyb3VwInEKFFVwZGF0ZVByb2plY3RSZXF1ZXN0EhYKDmVudmlyb25tZW50X2lkGGUgASgDEhQKBG5hbWUYASABKAlCBrpIA8gBARIrCgRzcGVjGAIgASgLMhUudHlwZXMudjEuUHJvamVjdFNwZWNCBrpIA8gBASI7ChVVcGRhdGVQcm9qZWN0UmVzcG9uc2USIgoHcHJvamVjdBgBIAEoCzIRLnR5cGVzLnYxLlByb2plY3QiRAoURGVsZXRlUHJvamVjdFJlcXVlc3QSFgoOZW52aXJvbm1lbnRfaWQYZSABKAMSFAoEbmFtZRgBIAEoCUIGukgDyAEBIhcKFURlbGV0ZVByb2plY3RSZXNwb25zZSJdChJMaXN0UHJvamVjdFJlcXVlc3QSFgoOZW52aXJvbm1lbnRfaWQYZSABKAMSIAoGY3Vyc29yGAEgASgLMhAudHlwZXMudjEuQ3Vyc29yEg0KBWxpbWl0GAIgASgFIqIBChNMaXN0UHJvamVjdFJlc3BvbnNlEh4KBG5leHQYASABKAsyEC50eXBlcy52MS5DdXJzb3ISOwoFaXRlbXMYAiADKAsyLC5zdmMucHJvamVjdC52MS5MaXN0UHJvamVjdFJlc3BvbnNlLkxpc3RJdGVtGi4KCExpc3RJdGVtEiIKB3Byb2plY3QYASABKAsyES50eXBlcy52MS5Qcm9qZWN0IkIKElN5bmNQcm9qZWN0UmVxdWVzdBIWCg5lbnZpcm9ubWVudF9pZBhlIAEoAxIUCgRuYW1lGAEgASgJQga6SAPIAQEiOQoTU3luY1Byb2plY3RSZXNwb25zZRIiCgdwcm9qZWN0GAEgASgLMhEudHlwZXMudjEuUHJvamVjdDKvBAoOUHJvamVjdFNlcnZpY2USXAoNQ3JlYXRlUHJvamVjdBIkLnN2Yy5wcm9qZWN0LnYxLkNyZWF0ZVByb2plY3RSZXF1ZXN0GiUuc3ZjLnByb2plY3QudjEuQ3JlYXRlUHJvamVjdFJlc3BvbnNlElMKCkdldFByb2plY3QSIS5zdmMucHJvamVjdC52MS5HZXRQcm9qZWN0UmVxdWVzdBoiLnN2Yy5wcm9qZWN0LnYxLkdldFByb2plY3RSZXNwb25zZRJcCg1VcGRhdGVQcm9qZWN0EiQuc3ZjLnByb2plY3QudjEuVXBkYXRlUHJvamVjdFJlcXVlc3QaJS5zdmMucHJvamVjdC52MS5VcGRhdGVQcm9qZWN0UmVzcG9uc2USXAoNRGVsZXRlUHJvamVjdBIkLnN2Yy5wcm9qZWN0LnYxLkRlbGV0ZVByb2plY3RSZXF1ZXN0GiUuc3ZjLnByb2plY3QudjEuRGVsZXRlUHJvamVjdFJlc3BvbnNlElYKC0xpc3RQcm9qZWN0EiIuc3ZjLnByb2plY3QudjEuTGlzdFByb2plY3RSZXF1ZXN0GiMuc3ZjLnByb2plY3QudjEuTGlzdFByb2plY3RSZXNwb25zZRJWCgtTeW5jUHJvamVjdBIiLnN2Yy5wcm9qZWN0LnYxLlN5bmNQcm9qZWN0UmVxdWVzdBojLnN2Yy5wcm9qZWN0LnYxLlN5bmNQcm9qZWN0UmVzcG9uc2VCswEKEmNvbS5zdmMucHJvamVjdC52MUIMU2VydmljZVByb3RvUAFaNWdpdGh1Yi5jb20vaHVtYW5sb2dpby9hcGkvZ28vc3ZjL3Byb2plY3QvdjE7cHJvamVjdHYxogIDU1BYqgIOU3ZjLlByb2plY3QuVjHKAg5TdmNcUHJvamVjdFxWMeICGlN2Y1xQcm9qZWN0XFYxXEdQQk1ldGFkYXRh6gIQU3ZjOjpQcm9qZWN0OjpWMWIGcHJvdG8z", [file_buf_validate_validate, file_types_v1_alert, file_types_v1_cursor, file_types_v1_dashboard, file_types_v1_project]); + fileDesc("ChxzdmMvcHJvamVjdC92MS9zZXJ2aWNlLnByb3RvEg5zdmMucHJvamVjdC52MSJbChRDcmVhdGVQcm9qZWN0UmVxdWVzdBIWCg5lbnZpcm9ubWVudF9pZBhlIAEoAxIrCgRzcGVjGAEgASgLMhUudHlwZXMudjEuUHJvamVjdFNwZWNCBrpIA8gBASI7ChVDcmVhdGVQcm9qZWN0UmVzcG9uc2USIgoHcHJvamVjdBgBIAEoCzIRLnR5cGVzLnYxLlByb2plY3QiXQoWVmFsaWRhdGVQcm9qZWN0UmVxdWVzdBIWCg5lbnZpcm9ubWVudF9pZBhlIAEoAxIrCgRzcGVjGAEgASgLMhUudHlwZXMudjEuUHJvamVjdFNwZWNCBrpIA8gBASIrChdWYWxpZGF0ZVByb2plY3RSZXNwb25zZRIQCgh3YXJuaW5ncxgBIAMoCSJBChFHZXRQcm9qZWN0UmVxdWVzdBIWCg5lbnZpcm9ubWVudF9pZBhlIAEoAxIUCgRuYW1lGAEgASgJQga6SAPIAQEijQEKEkdldFByb2plY3RSZXNwb25zZRIiCgdwcm9qZWN0GAEgASgLMhEudHlwZXMudjEuUHJvamVjdBInCgpkYXNoYm9hcmRzGAIgAygLMhMudHlwZXMudjEuRGFzaGJvYXJkEioKDGFsZXJ0X2dyb3VwcxgDIAMoCzIULnR5cGVzLnYxLkFsZXJ0R3JvdXAicQoUVXBkYXRlUHJvamVjdFJlcXVlc3QSFgoOZW52aXJvbm1lbnRfaWQYZSABKAMSFAoEbmFtZRgBIAEoCUIGukgDyAEBEisKBHNwZWMYAiABKAsyFS50eXBlcy52MS5Qcm9qZWN0U3BlY0IGukgDyAEBIjsKFVVwZGF0ZVByb2plY3RSZXNwb25zZRIiCgdwcm9qZWN0GAEgASgLMhEudHlwZXMudjEuUHJvamVjdCJEChREZWxldGVQcm9qZWN0UmVxdWVzdBIWCg5lbnZpcm9ubWVudF9pZBhlIAEoAxIUCgRuYW1lGAEgASgJQga6SAPIAQEiFwoVRGVsZXRlUHJvamVjdFJlc3BvbnNlIl0KEkxpc3RQcm9qZWN0UmVxdWVzdBIWCg5lbnZpcm9ubWVudF9pZBhlIAEoAxIgCgZjdXJzb3IYASABKAsyEC50eXBlcy52MS5DdXJzb3ISDQoFbGltaXQYAiABKAUiogEKE0xpc3RQcm9qZWN0UmVzcG9uc2USHgoEbmV4dBgBIAEoCzIQLnR5cGVzLnYxLkN1cnNvchI7CgVpdGVtcxgCIAMoCzIsLnN2Yy5wcm9qZWN0LnYxLkxpc3RQcm9qZWN0UmVzcG9uc2UuTGlzdEl0ZW0aLgoITGlzdEl0ZW0SIgoHcHJvamVjdBgBIAEoCzIRLnR5cGVzLnYxLlByb2plY3QiQgoSU3luY1Byb2plY3RSZXF1ZXN0EhYKDmVudmlyb25tZW50X2lkGGUgASgDEhQKBG5hbWUYASABKAlCBrpIA8gBASI5ChNTeW5jUHJvamVjdFJlc3BvbnNlEiIKB3Byb2plY3QYASABKAsyES50eXBlcy52MS5Qcm9qZWN0MpMFCg5Qcm9qZWN0U2VydmljZRJcCg1DcmVhdGVQcm9qZWN0EiQuc3ZjLnByb2plY3QudjEuQ3JlYXRlUHJvamVjdFJlcXVlc3QaJS5zdmMucHJvamVjdC52MS5DcmVhdGVQcm9qZWN0UmVzcG9uc2USYgoPVmFsaWRhdGVQcm9qZWN0EiYuc3ZjLnByb2plY3QudjEuVmFsaWRhdGVQcm9qZWN0UmVxdWVzdBonLnN2Yy5wcm9qZWN0LnYxLlZhbGlkYXRlUHJvamVjdFJlc3BvbnNlElMKCkdldFByb2plY3QSIS5zdmMucHJvamVjdC52MS5HZXRQcm9qZWN0UmVxdWVzdBoiLnN2Yy5wcm9qZWN0LnYxLkdldFByb2plY3RSZXNwb25zZRJcCg1VcGRhdGVQcm9qZWN0EiQuc3ZjLnByb2plY3QudjEuVXBkYXRlUHJvamVjdFJlcXVlc3QaJS5zdmMucHJvamVjdC52MS5VcGRhdGVQcm9qZWN0UmVzcG9uc2USXAoNRGVsZXRlUHJvamVjdBIkLnN2Yy5wcm9qZWN0LnYxLkRlbGV0ZVByb2plY3RSZXF1ZXN0GiUuc3ZjLnByb2plY3QudjEuRGVsZXRlUHJvamVjdFJlc3BvbnNlElYKC0xpc3RQcm9qZWN0EiIuc3ZjLnByb2plY3QudjEuTGlzdFByb2plY3RSZXF1ZXN0GiMuc3ZjLnByb2plY3QudjEuTGlzdFByb2plY3RSZXNwb25zZRJWCgtTeW5jUHJvamVjdBIiLnN2Yy5wcm9qZWN0LnYxLlN5bmNQcm9qZWN0UmVxdWVzdBojLnN2Yy5wcm9qZWN0LnYxLlN5bmNQcm9qZWN0UmVzcG9uc2VCswEKEmNvbS5zdmMucHJvamVjdC52MUIMU2VydmljZVByb3RvUAFaNWdpdGh1Yi5jb20vaHVtYW5sb2dpby9hcGkvZ28vc3ZjL3Byb2plY3QvdjE7cHJvamVjdHYxogIDU1BYqgIOU3ZjLlByb2plY3QuVjHKAg5TdmNcUHJvamVjdFxWMeICGlN2Y1xQcm9qZWN0XFYxXEdQQk1ldGFkYXRh6gIQU3ZjOjpQcm9qZWN0OjpWMWIGcHJvdG8z", [file_buf_validate_validate, file_types_v1_alert, file_types_v1_cursor, file_types_v1_dashboard, file_types_v1_project]); /** * @generated from message svc.project.v1.CreateProjectRequest @@ -60,6 +60,45 @@ export type CreateProjectResponse = Message<"svc.project.v1.CreateProjectRespons export const CreateProjectResponseSchema: GenMessage = /*@__PURE__*/ messageDesc(file_svc_project_v1_service, 1); +/** + * @generated from message svc.project.v1.ValidateProjectRequest + */ +export type ValidateProjectRequest = Message<"svc.project.v1.ValidateProjectRequest"> & { + /** + * @generated from field: int64 environment_id = 101; + */ + environmentId: bigint; + + /** + * @generated from field: types.v1.ProjectSpec spec = 1; + */ + spec?: ProjectSpec; +}; + +/** + * Describes the message svc.project.v1.ValidateProjectRequest. + * Use `create(ValidateProjectRequestSchema)` to create a new message. + */ +export const ValidateProjectRequestSchema: GenMessage = /*@__PURE__*/ + messageDesc(file_svc_project_v1_service, 2); + +/** + * @generated from message svc.project.v1.ValidateProjectResponse + */ +export type ValidateProjectResponse = Message<"svc.project.v1.ValidateProjectResponse"> & { + /** + * @generated from field: repeated string warnings = 1; + */ + warnings: string[]; +}; + +/** + * Describes the message svc.project.v1.ValidateProjectResponse. + * Use `create(ValidateProjectResponseSchema)` to create a new message. + */ +export const ValidateProjectResponseSchema: GenMessage = /*@__PURE__*/ + messageDesc(file_svc_project_v1_service, 3); + /** * @generated from message svc.project.v1.GetProjectRequest */ @@ -80,7 +119,7 @@ export type GetProjectRequest = Message<"svc.project.v1.GetProjectRequest"> & { * Use `create(GetProjectRequestSchema)` to create a new message. */ export const GetProjectRequestSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_svc_project_v1_service, 2); + messageDesc(file_svc_project_v1_service, 4); /** * @generated from message svc.project.v1.GetProjectResponse @@ -107,7 +146,7 @@ export type GetProjectResponse = Message<"svc.project.v1.GetProjectResponse"> & * Use `create(GetProjectResponseSchema)` to create a new message. */ export const GetProjectResponseSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_svc_project_v1_service, 3); + messageDesc(file_svc_project_v1_service, 5); /** * @generated from message svc.project.v1.UpdateProjectRequest @@ -134,7 +173,7 @@ export type UpdateProjectRequest = Message<"svc.project.v1.UpdateProjectRequest" * Use `create(UpdateProjectRequestSchema)` to create a new message. */ export const UpdateProjectRequestSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_svc_project_v1_service, 4); + messageDesc(file_svc_project_v1_service, 6); /** * @generated from message svc.project.v1.UpdateProjectResponse @@ -151,7 +190,7 @@ export type UpdateProjectResponse = Message<"svc.project.v1.UpdateProjectRespons * Use `create(UpdateProjectResponseSchema)` to create a new message. */ export const UpdateProjectResponseSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_svc_project_v1_service, 5); + messageDesc(file_svc_project_v1_service, 7); /** * @generated from message svc.project.v1.DeleteProjectRequest @@ -173,7 +212,7 @@ export type DeleteProjectRequest = Message<"svc.project.v1.DeleteProjectRequest" * Use `create(DeleteProjectRequestSchema)` to create a new message. */ export const DeleteProjectRequestSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_svc_project_v1_service, 6); + messageDesc(file_svc_project_v1_service, 8); /** * @generated from message svc.project.v1.DeleteProjectResponse @@ -186,7 +225,7 @@ export type DeleteProjectResponse = Message<"svc.project.v1.DeleteProjectRespons * Use `create(DeleteProjectResponseSchema)` to create a new message. */ export const DeleteProjectResponseSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_svc_project_v1_service, 7); + messageDesc(file_svc_project_v1_service, 9); /** * @generated from message svc.project.v1.ListProjectRequest @@ -213,7 +252,7 @@ export type ListProjectRequest = Message<"svc.project.v1.ListProjectRequest"> & * Use `create(ListProjectRequestSchema)` to create a new message. */ export const ListProjectRequestSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_svc_project_v1_service, 8); + messageDesc(file_svc_project_v1_service, 10); /** * @generated from message svc.project.v1.ListProjectResponse @@ -235,7 +274,7 @@ export type ListProjectResponse = Message<"svc.project.v1.ListProjectResponse"> * Use `create(ListProjectResponseSchema)` to create a new message. */ export const ListProjectResponseSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_svc_project_v1_service, 9); + messageDesc(file_svc_project_v1_service, 11); /** * @generated from message svc.project.v1.ListProjectResponse.ListItem @@ -252,7 +291,7 @@ export type ListProjectResponse_ListItem = Message<"svc.project.v1.ListProjectRe * Use `create(ListProjectResponse_ListItemSchema)` to create a new message. */ export const ListProjectResponse_ListItemSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_svc_project_v1_service, 9, 0); + messageDesc(file_svc_project_v1_service, 11, 0); /** * @generated from message svc.project.v1.SyncProjectRequest @@ -274,7 +313,7 @@ export type SyncProjectRequest = Message<"svc.project.v1.SyncProjectRequest"> & * Use `create(SyncProjectRequestSchema)` to create a new message. */ export const SyncProjectRequestSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_svc_project_v1_service, 10); + messageDesc(file_svc_project_v1_service, 12); /** * @generated from message svc.project.v1.SyncProjectResponse @@ -291,7 +330,7 @@ export type SyncProjectResponse = Message<"svc.project.v1.SyncProjectResponse"> * Use `create(SyncProjectResponseSchema)` to create a new message. */ export const SyncProjectResponseSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_svc_project_v1_service, 11); + messageDesc(file_svc_project_v1_service, 13); /** * @generated from service svc.project.v1.ProjectService @@ -305,6 +344,14 @@ export const ProjectService: GenService<{ input: typeof CreateProjectRequestSchema; output: typeof CreateProjectResponseSchema; }, + /** + * @generated from rpc svc.project.v1.ProjectService.ValidateProject + */ + validateProject: { + methodKind: "unary"; + input: typeof ValidateProjectRequestSchema; + output: typeof ValidateProjectResponseSchema; + }, /** * @generated from rpc svc.project.v1.ProjectService.GetProject */ diff --git a/proto/svc/project/v1/service.proto b/proto/svc/project/v1/service.proto index 88c3c77..82f18d2 100644 --- a/proto/svc/project/v1/service.proto +++ b/proto/svc/project/v1/service.proto @@ -12,6 +12,7 @@ option go_package = "svc/project/v1;projectv1"; service ProjectService { rpc CreateProject(CreateProjectRequest) returns (CreateProjectResponse); + rpc ValidateProject(ValidateProjectRequest) returns (ValidateProjectResponse); rpc GetProject(GetProjectRequest) returns (GetProjectResponse); rpc UpdateProject(UpdateProjectRequest) returns (UpdateProjectResponse); rpc DeleteProject(DeleteProjectRequest) returns (DeleteProjectResponse); @@ -31,6 +32,15 @@ message CreateProjectResponse { types.v1.Project project = 1; } +message ValidateProjectRequest { + int64 environment_id = 101; + types.v1.ProjectSpec spec = 1 [(buf.validate.field).required = true]; +} + +message ValidateProjectResponse { + repeated string warnings = 1; +} + message GetProjectRequest { int64 environment_id = 101; string name = 1 [(buf.validate.field).required = true];