From 5bb455e56a7dff343538584079127ce1884a8ae6 Mon Sep 17 00:00:00 2001 From: Stefan Majer Date: Tue, 26 May 2026 17:40:10 +0200 Subject: [PATCH] FSL Match and Try is a admin endpoint --- doc/index.html | 280 ++++++------ .../v2/adminv2connect/filesystem.connect.go | 34 ++ go/metalstack/admin/v2/filesystem.pb.go | 340 ++++++++++++-- .../api/v2/apiv2connect/filesystem.connect.go | 38 +- go/metalstack/api/v2/filesystem.pb.go | 419 ++++-------------- go/permissions/servicepermissions.go | 8 +- .../adminv2connect/FilesystemServiceClient.go | 68 +++ .../FilesystemServiceHandler.go | 68 +++ .../isFilesystemServiceMatchRequest_Match.go | 2 +- .../apiv2connect/FilesystemServiceClient.go | 68 --- .../apiv2connect/FilesystemServiceHandler.go | 68 --- js/metalstack/admin/v2/filesystem_pb.d.ts | 114 +++++ js/metalstack/admin/v2/filesystem_pb.js | 22 +- js/metalstack/admin/v2/filesystem_pb.ts | 127 +++++- js/metalstack/api/v2/filesystem_pb.d.ts | 114 ----- js/metalstack/api/v2/filesystem_pb.js | 38 +- js/metalstack/api/v2/filesystem_pb.ts | 143 +----- proto/metalstack/admin/v2/filesystem.proto | 42 ++ proto/metalstack/api/v2/filesystem.proto | 41 -- .../metalstack/admin/v2/filesystem_connect.py | 65 +++ python/metalstack/admin/v2/filesystem_pb2.py | 26 +- python/metalstack/admin/v2/filesystem_pb2.pyi | 30 ++ .../metalstack/api/v2/filesystem_connect.py | 65 --- python/metalstack/api/v2/filesystem_pb2.py | 78 ++-- python/metalstack/api/v2/filesystem_pb2.pyi | 30 -- 25 files changed, 1166 insertions(+), 1162 deletions(-) rename go/tests/mocks/metalstack/{api => admin}/v2/isFilesystemServiceMatchRequest_Match.go (99%) diff --git a/doc/index.html b/doc/index.html index 4a82891c..46502018 100644 --- a/doc/index.html +++ b/doc/index.html @@ -658,26 +658,10 @@

Table of Contents

MFilesystemServiceListResponse -
  • - MFilesystemServiceMatchRequest -
  • - -
  • - MFilesystemServiceMatchResponse -
  • -
  • MLogicalVolume
  • -
  • - MMatchImageAndSize -
  • - -
  • - MMatchMachineAndFilesystemLayout -
  • -
  • MRaid
  • @@ -733,6 +717,14 @@

    Table of Contents

    MFilesystemServiceDeleteResponse +
  • + MFilesystemServiceMatchRequest +
  • + +
  • + MFilesystemServiceMatchResponse +
  • +
  • MFilesystemServiceUpdateRequest
  • @@ -741,6 +733,14 @@

    Table of Contents

    MFilesystemServiceUpdateResponse +
  • + MMatchImageAndSize +
  • + +
  • + MMatchMachineAndFilesystemLayout +
  • + @@ -5650,61 +5650,6 @@

    FilesystemServiceListRe -

    FilesystemServiceMatchRequest

    -

    FilesystemServiceMatchRequest

    - - - - - - - - - - - - - - - - - - - - - - - -
    FieldTypeLabelDescription
    size_and_imageMatchImageAndSize

    SizeAndImage

    machine_and_filesystemlayoutMatchMachineAndFilesystemLayout

    MachineAndFilesystemlayout

    - - - - - -

    FilesystemServiceMatchResponse

    -

    FilesystemServiceMatchResponse

    - - - - - - - - - - - - - - - - -
    FieldTypeLabelDescription
    filesystem_layoutFilesystemLayout

    FilesystemLayout the filesystemlayout

    - - - - -

    LogicalVolume

    LogicalVolume

    @@ -5750,68 +5695,6 @@

    LogicalVolume

    -

    MatchImageAndSize

    -

    MatchImageAndSize

    - - - - - - - - - - - - - - - - - - - - - - - -
    FieldTypeLabelDescription
    sizestring

    Size, machine size to try

    imagestring

    Image machine image to try

    - - - - - -

    MatchMachineAndFilesystemLayout

    -

    MatchMachineAndFilesystemLayout

    - - - - - - - - - - - - - - - - - - - - - - - -
    FieldTypeLabelDescription
    machinestring

    Machine to check

    filesystem_layoutstring

    FilesystemLayout to check

    - - - - -

    Raid

    Raid

    @@ -6088,13 +5971,6 @@

    FilesystemService

    Returns the list of all filesystems.

    - - Match - FilesystemServiceMatchRequest - FilesystemServiceMatchResponse -

    Matches a filesystem to a size and image or machine.

    - - @@ -6203,6 +6079,61 @@

    FilesystemServiceDe +

    FilesystemServiceMatchRequest

    +

    FilesystemServiceMatchRequest

    + + + + + + + + + + + + + + + + + + + + + + + +
    FieldTypeLabelDescription
    size_and_imageMatchImageAndSize

    SizeAndImage

    machine_and_filesystemlayoutMatchMachineAndFilesystemLayout

    MachineAndFilesystemlayout

    + + + + + +

    FilesystemServiceMatchResponse

    +

    FilesystemServiceMatchResponse

    + + + + + + + + + + + + + + + + +
    FieldTypeLabelDescription
    filesystem_layoutmetalstack.api.v2.FilesystemLayout

    FilesystemLayout the filesystemlayout

    + + + + +

    FilesystemServiceUpdateRequest

    FilesystemServiceUpdateRequest is the request payload for updating a filesystem.

    @@ -6314,6 +6245,68 @@

    FilesystemServiceUp +

    MatchImageAndSize

    +

    MatchImageAndSize

    + + + + + + + + + + + + + + + + + + + + + + + +
    FieldTypeLabelDescription
    sizestring

    Size, machine size to try

    imagestring

    Image machine image to try

    + + + + + +

    MatchMachineAndFilesystemLayout

    +

    MatchMachineAndFilesystemLayout

    + + + + + + + + + + + + + + + + + + + + + + + +
    FieldTypeLabelDescription
    machinestring

    Machine to check

    filesystem_layoutstring

    FilesystemLayout to check

    + + + + + @@ -6349,6 +6342,13 @@

    FilesystemService

    Deletes a filesystem.

    + + Match + FilesystemServiceMatchRequest + FilesystemServiceMatchResponse +

    Matches a filesystem to a size and image or machine.

    + + diff --git a/go/metalstack/admin/v2/adminv2connect/filesystem.connect.go b/go/metalstack/admin/v2/adminv2connect/filesystem.connect.go index da067030..939c6d00 100644 --- a/go/metalstack/admin/v2/adminv2connect/filesystem.connect.go +++ b/go/metalstack/admin/v2/adminv2connect/filesystem.connect.go @@ -42,6 +42,8 @@ const ( // FilesystemServiceDeleteProcedure is the fully-qualified name of the FilesystemService's Delete // RPC. FilesystemServiceDeleteProcedure = "/metalstack.admin.v2.FilesystemService/Delete" + // FilesystemServiceMatchProcedure is the fully-qualified name of the FilesystemService's Match RPC. + FilesystemServiceMatchProcedure = "/metalstack.admin.v2.FilesystemService/Match" ) // FilesystemServiceClient is a client for the metalstack.admin.v2.FilesystemService service. @@ -52,6 +54,8 @@ type FilesystemServiceClient interface { Update(context.Context, *v2.FilesystemServiceUpdateRequest) (*v2.FilesystemServiceUpdateResponse, error) // Deletes a filesystem. Delete(context.Context, *v2.FilesystemServiceDeleteRequest) (*v2.FilesystemServiceDeleteResponse, error) + // Matches a filesystem to a size and image or machine. + Match(context.Context, *v2.FilesystemServiceMatchRequest) (*v2.FilesystemServiceMatchResponse, error) } // NewFilesystemServiceClient constructs a client for the metalstack.admin.v2.FilesystemService @@ -83,6 +87,12 @@ func NewFilesystemServiceClient(httpClient connect.HTTPClient, baseURL string, o connect.WithSchema(filesystemServiceMethods.ByName("Delete")), connect.WithClientOptions(opts...), ), + match: connect.NewClient[v2.FilesystemServiceMatchRequest, v2.FilesystemServiceMatchResponse]( + httpClient, + baseURL+FilesystemServiceMatchProcedure, + connect.WithSchema(filesystemServiceMethods.ByName("Match")), + connect.WithClientOptions(opts...), + ), } } @@ -91,6 +101,7 @@ type filesystemServiceClient struct { create *connect.Client[v2.FilesystemServiceCreateRequest, v2.FilesystemServiceCreateResponse] update *connect.Client[v2.FilesystemServiceUpdateRequest, v2.FilesystemServiceUpdateResponse] delete *connect.Client[v2.FilesystemServiceDeleteRequest, v2.FilesystemServiceDeleteResponse] + match *connect.Client[v2.FilesystemServiceMatchRequest, v2.FilesystemServiceMatchResponse] } // Create calls metalstack.admin.v2.FilesystemService.Create. @@ -120,6 +131,15 @@ func (c *filesystemServiceClient) Delete(ctx context.Context, req *v2.Filesystem return nil, err } +// Match calls metalstack.admin.v2.FilesystemService.Match. +func (c *filesystemServiceClient) Match(ctx context.Context, req *v2.FilesystemServiceMatchRequest) (*v2.FilesystemServiceMatchResponse, error) { + response, err := c.match.CallUnary(ctx, connect.NewRequest(req)) + if response != nil { + return response.Msg, err + } + return nil, err +} + // FilesystemServiceHandler is an implementation of the metalstack.admin.v2.FilesystemService // service. type FilesystemServiceHandler interface { @@ -129,6 +149,8 @@ type FilesystemServiceHandler interface { Update(context.Context, *v2.FilesystemServiceUpdateRequest) (*v2.FilesystemServiceUpdateResponse, error) // Deletes a filesystem. Delete(context.Context, *v2.FilesystemServiceDeleteRequest) (*v2.FilesystemServiceDeleteResponse, error) + // Matches a filesystem to a size and image or machine. + Match(context.Context, *v2.FilesystemServiceMatchRequest) (*v2.FilesystemServiceMatchResponse, error) } // NewFilesystemServiceHandler builds an HTTP handler from the service implementation. It returns @@ -156,6 +178,12 @@ func NewFilesystemServiceHandler(svc FilesystemServiceHandler, opts ...connect.H connect.WithSchema(filesystemServiceMethods.ByName("Delete")), connect.WithHandlerOptions(opts...), ) + filesystemServiceMatchHandler := connect.NewUnaryHandlerSimple( + FilesystemServiceMatchProcedure, + svc.Match, + connect.WithSchema(filesystemServiceMethods.ByName("Match")), + connect.WithHandlerOptions(opts...), + ) return "/metalstack.admin.v2.FilesystemService/", http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { switch r.URL.Path { case FilesystemServiceCreateProcedure: @@ -164,6 +192,8 @@ func NewFilesystemServiceHandler(svc FilesystemServiceHandler, opts ...connect.H filesystemServiceUpdateHandler.ServeHTTP(w, r) case FilesystemServiceDeleteProcedure: filesystemServiceDeleteHandler.ServeHTTP(w, r) + case FilesystemServiceMatchProcedure: + filesystemServiceMatchHandler.ServeHTTP(w, r) default: http.NotFound(w, r) } @@ -184,3 +214,7 @@ func (UnimplementedFilesystemServiceHandler) Update(context.Context, *v2.Filesys func (UnimplementedFilesystemServiceHandler) Delete(context.Context, *v2.FilesystemServiceDeleteRequest) (*v2.FilesystemServiceDeleteResponse, error) { return nil, connect.NewError(connect.CodeUnimplemented, errors.New("metalstack.admin.v2.FilesystemService.Delete is not implemented")) } + +func (UnimplementedFilesystemServiceHandler) Match(context.Context, *v2.FilesystemServiceMatchRequest) (*v2.FilesystemServiceMatchResponse, error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("metalstack.admin.v2.FilesystemService.Match is not implemented")) +} diff --git a/go/metalstack/admin/v2/filesystem.pb.go b/go/metalstack/admin/v2/filesystem.pb.go index 85eada55..76384149 100644 --- a/go/metalstack/admin/v2/filesystem.pb.go +++ b/go/metalstack/admin/v2/filesystem.pb.go @@ -380,6 +380,251 @@ func (x *FilesystemServiceDeleteResponse) GetFilesystemLayout() *v2.FilesystemLa return nil } +// FilesystemServiceMatchRequest +type FilesystemServiceMatchRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + // Match either size and image to a filesystemlayout + // or if a machine matches to a filesystemlayout + // + // Types that are valid to be assigned to Match: + // + // *FilesystemServiceMatchRequest_SizeAndImage + // *FilesystemServiceMatchRequest_MachineAndFilesystemlayout + Match isFilesystemServiceMatchRequest_Match `protobuf_oneof:"match"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *FilesystemServiceMatchRequest) Reset() { + *x = FilesystemServiceMatchRequest{} + mi := &file_metalstack_admin_v2_filesystem_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *FilesystemServiceMatchRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*FilesystemServiceMatchRequest) ProtoMessage() {} + +func (x *FilesystemServiceMatchRequest) ProtoReflect() protoreflect.Message { + mi := &file_metalstack_admin_v2_filesystem_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) +} + +// Deprecated: Use FilesystemServiceMatchRequest.ProtoReflect.Descriptor instead. +func (*FilesystemServiceMatchRequest) Descriptor() ([]byte, []int) { + return file_metalstack_admin_v2_filesystem_proto_rawDescGZIP(), []int{6} +} + +func (x *FilesystemServiceMatchRequest) GetMatch() isFilesystemServiceMatchRequest_Match { + if x != nil { + return x.Match + } + return nil +} + +func (x *FilesystemServiceMatchRequest) GetSizeAndImage() *MatchImageAndSize { + if x != nil { + if x, ok := x.Match.(*FilesystemServiceMatchRequest_SizeAndImage); ok { + return x.SizeAndImage + } + } + return nil +} + +func (x *FilesystemServiceMatchRequest) GetMachineAndFilesystemlayout() *MatchMachineAndFilesystemLayout { + if x != nil { + if x, ok := x.Match.(*FilesystemServiceMatchRequest_MachineAndFilesystemlayout); ok { + return x.MachineAndFilesystemlayout + } + } + return nil +} + +type isFilesystemServiceMatchRequest_Match interface { + isFilesystemServiceMatchRequest_Match() +} + +type FilesystemServiceMatchRequest_SizeAndImage struct { + // SizeAndImage + SizeAndImage *MatchImageAndSize `protobuf:"bytes,1,opt,name=size_and_image,json=sizeAndImage,proto3,oneof"` +} + +type FilesystemServiceMatchRequest_MachineAndFilesystemlayout struct { + // MachineAndFilesystemlayout + MachineAndFilesystemlayout *MatchMachineAndFilesystemLayout `protobuf:"bytes,2,opt,name=machine_and_filesystemlayout,json=machineAndFilesystemlayout,proto3,oneof"` +} + +func (*FilesystemServiceMatchRequest_SizeAndImage) isFilesystemServiceMatchRequest_Match() {} + +func (*FilesystemServiceMatchRequest_MachineAndFilesystemlayout) isFilesystemServiceMatchRequest_Match() { +} + +// MatchImageAndSize +type MatchImageAndSize struct { + state protoimpl.MessageState `protogen:"open.v1"` + // Size, machine size to try + Size string `protobuf:"bytes,1,opt,name=size,proto3" json:"size,omitempty"` + // Image machine image to try + Image string `protobuf:"bytes,2,opt,name=image,proto3" json:"image,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *MatchImageAndSize) Reset() { + *x = MatchImageAndSize{} + mi := &file_metalstack_admin_v2_filesystem_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *MatchImageAndSize) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MatchImageAndSize) ProtoMessage() {} + +func (x *MatchImageAndSize) ProtoReflect() protoreflect.Message { + mi := &file_metalstack_admin_v2_filesystem_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) +} + +// Deprecated: Use MatchImageAndSize.ProtoReflect.Descriptor instead. +func (*MatchImageAndSize) Descriptor() ([]byte, []int) { + return file_metalstack_admin_v2_filesystem_proto_rawDescGZIP(), []int{7} +} + +func (x *MatchImageAndSize) GetSize() string { + if x != nil { + return x.Size + } + return "" +} + +func (x *MatchImageAndSize) GetImage() string { + if x != nil { + return x.Image + } + return "" +} + +// MatchMachineAndFilesystemLayout +type MatchMachineAndFilesystemLayout struct { + state protoimpl.MessageState `protogen:"open.v1"` + // Machine to check + Machine string `protobuf:"bytes,1,opt,name=machine,proto3" json:"machine,omitempty"` + // FilesystemLayout to check + FilesystemLayout string `protobuf:"bytes,2,opt,name=filesystem_layout,json=filesystemLayout,proto3" json:"filesystem_layout,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *MatchMachineAndFilesystemLayout) Reset() { + *x = MatchMachineAndFilesystemLayout{} + mi := &file_metalstack_admin_v2_filesystem_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *MatchMachineAndFilesystemLayout) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MatchMachineAndFilesystemLayout) ProtoMessage() {} + +func (x *MatchMachineAndFilesystemLayout) ProtoReflect() protoreflect.Message { + mi := &file_metalstack_admin_v2_filesystem_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) +} + +// Deprecated: Use MatchMachineAndFilesystemLayout.ProtoReflect.Descriptor instead. +func (*MatchMachineAndFilesystemLayout) Descriptor() ([]byte, []int) { + return file_metalstack_admin_v2_filesystem_proto_rawDescGZIP(), []int{8} +} + +func (x *MatchMachineAndFilesystemLayout) GetMachine() string { + if x != nil { + return x.Machine + } + return "" +} + +func (x *MatchMachineAndFilesystemLayout) GetFilesystemLayout() string { + if x != nil { + return x.FilesystemLayout + } + return "" +} + +// FilesystemServiceMatchResponse +type FilesystemServiceMatchResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + // FilesystemLayout the filesystemlayout + FilesystemLayout *v2.FilesystemLayout `protobuf:"bytes,1,opt,name=filesystem_layout,json=filesystemLayout,proto3" json:"filesystem_layout,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *FilesystemServiceMatchResponse) Reset() { + *x = FilesystemServiceMatchResponse{} + mi := &file_metalstack_admin_v2_filesystem_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *FilesystemServiceMatchResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*FilesystemServiceMatchResponse) ProtoMessage() {} + +func (x *FilesystemServiceMatchResponse) ProtoReflect() protoreflect.Message { + mi := &file_metalstack_admin_v2_filesystem_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) +} + +// Deprecated: Use FilesystemServiceMatchResponse.ProtoReflect.Descriptor instead. +func (*FilesystemServiceMatchResponse) Descriptor() ([]byte, []int) { + return file_metalstack_admin_v2_filesystem_proto_rawDescGZIP(), []int{9} +} + +func (x *FilesystemServiceMatchResponse) GetFilesystemLayout() *v2.FilesystemLayout { + if x != nil { + return x.FilesystemLayout + } + return nil +} + var File_metalstack_admin_v2_filesystem_proto protoreflect.FileDescriptor const file_metalstack_admin_v2_filesystem_proto_rawDesc = "" + @@ -409,11 +654,25 @@ const file_metalstack_admin_v2_filesystem_proto_rawDesc = "" + "\x1eFilesystemServiceDeleteRequest\x12\x1b\n" + "\x02id\x18\x01 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\"s\n" + "\x1fFilesystemServiceDeleteResponse\x12P\n" + - "\x11filesystem_layout\x18\x01 \x01(\v2#.metalstack.api.v2.FilesystemLayoutR\x10filesystemLayout2\x93\x03\n" + + "\x11filesystem_layout\x18\x01 \x01(\v2#.metalstack.api.v2.FilesystemLayoutR\x10filesystemLayout\"\xf9\x01\n" + + "\x1dFilesystemServiceMatchRequest\x12N\n" + + "\x0esize_and_image\x18\x01 \x01(\v2&.metalstack.admin.v2.MatchImageAndSizeH\x00R\fsizeAndImage\x12x\n" + + "\x1cmachine_and_filesystemlayout\x18\x02 \x01(\v24.metalstack.admin.v2.MatchMachineAndFilesystemLayoutH\x00R\x1amachineAndFilesystemlayoutB\x0e\n" + + "\x05match\x12\x05\xbaH\x02\b\x01\"W\n" + + "\x11MatchImageAndSize\x12\x1f\n" + + "\x04size\x18\x01 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\x04size\x12!\n" + + "\x05image\x18\x02 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\x05image\"\x7f\n" + + "\x1fMatchMachineAndFilesystemLayout\x12\"\n" + + "\amachine\x18\x01 \x01(\tB\b\xbaH\x05r\x03\xb0\x01\x01R\amachine\x128\n" + + "\x11filesystem_layout\x18\x02 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\x10filesystemLayout\"r\n" + + "\x1eFilesystemServiceMatchResponse\x12P\n" + + "\x11filesystem_layout\x18\x01 \x01(\v2#.metalstack.api.v2.FilesystemLayoutR\x10filesystemLayout2\x91\x04\n" + "\x11FilesystemService\x12~\n" + "\x06Create\x123.metalstack.admin.v2.FilesystemServiceCreateRequest\x1a4.metalstack.admin.v2.FilesystemServiceCreateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12~\n" + "\x06Update\x123.metalstack.admin.v2.FilesystemServiceUpdateRequest\x1a4.metalstack.admin.v2.FilesystemServiceUpdateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12~\n" + - "\x06Delete\x123.metalstack.admin.v2.FilesystemServiceDeleteRequest\x1a4.metalstack.admin.v2.FilesystemServiceDeleteResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01B\xd3\x01\n" + + "\x06Delete\x123.metalstack.admin.v2.FilesystemServiceDeleteRequest\x1a4.metalstack.admin.v2.FilesystemServiceDeleteResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12|\n" + + "\x05Match\x122.metalstack.admin.v2.FilesystemServiceMatchRequest\x1a3.metalstack.admin.v2.FilesystemServiceMatchResponse\"\n" + + "\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02B\xd3\x01\n" + "\x17com.metalstack.admin.v2B\x0fFilesystemProtoP\x01Z9github.com/metal-stack/api/go/metalstack/admin/v2;adminv2\xa2\x02\x03MAX\xaa\x02\x13Metalstack.Admin.V2\xca\x02\x13Metalstack\\Admin\\V2\xe2\x02\x1fMetalstack\\Admin\\V2\\GPBMetadata\xea\x02\x15Metalstack::Admin::V2b\x06proto3" var ( @@ -428,7 +687,7 @@ func file_metalstack_admin_v2_filesystem_proto_rawDescGZIP() []byte { return file_metalstack_admin_v2_filesystem_proto_rawDescData } -var file_metalstack_admin_v2_filesystem_proto_msgTypes = make([]protoimpl.MessageInfo, 6) +var file_metalstack_admin_v2_filesystem_proto_msgTypes = make([]protoimpl.MessageInfo, 10) var file_metalstack_admin_v2_filesystem_proto_goTypes = []any{ (*FilesystemServiceCreateRequest)(nil), // 0: metalstack.admin.v2.FilesystemServiceCreateRequest (*FilesystemServiceCreateResponse)(nil), // 1: metalstack.admin.v2.FilesystemServiceCreateResponse @@ -436,38 +695,47 @@ var file_metalstack_admin_v2_filesystem_proto_goTypes = []any{ (*FilesystemServiceUpdateResponse)(nil), // 3: metalstack.admin.v2.FilesystemServiceUpdateResponse (*FilesystemServiceDeleteRequest)(nil), // 4: metalstack.admin.v2.FilesystemServiceDeleteRequest (*FilesystemServiceDeleteResponse)(nil), // 5: metalstack.admin.v2.FilesystemServiceDeleteResponse - (*v2.FilesystemLayout)(nil), // 6: metalstack.api.v2.FilesystemLayout - (*v2.UpdateMeta)(nil), // 7: metalstack.api.v2.UpdateMeta - (*v2.Filesystem)(nil), // 8: metalstack.api.v2.Filesystem - (*v2.Disk)(nil), // 9: metalstack.api.v2.Disk - (*v2.Raid)(nil), // 10: metalstack.api.v2.Raid - (*v2.VolumeGroup)(nil), // 11: metalstack.api.v2.VolumeGroup - (*v2.LogicalVolume)(nil), // 12: metalstack.api.v2.LogicalVolume - (*v2.FilesystemLayoutConstraints)(nil), // 13: metalstack.api.v2.FilesystemLayoutConstraints + (*FilesystemServiceMatchRequest)(nil), // 6: metalstack.admin.v2.FilesystemServiceMatchRequest + (*MatchImageAndSize)(nil), // 7: metalstack.admin.v2.MatchImageAndSize + (*MatchMachineAndFilesystemLayout)(nil), // 8: metalstack.admin.v2.MatchMachineAndFilesystemLayout + (*FilesystemServiceMatchResponse)(nil), // 9: metalstack.admin.v2.FilesystemServiceMatchResponse + (*v2.FilesystemLayout)(nil), // 10: metalstack.api.v2.FilesystemLayout + (*v2.UpdateMeta)(nil), // 11: metalstack.api.v2.UpdateMeta + (*v2.Filesystem)(nil), // 12: metalstack.api.v2.Filesystem + (*v2.Disk)(nil), // 13: metalstack.api.v2.Disk + (*v2.Raid)(nil), // 14: metalstack.api.v2.Raid + (*v2.VolumeGroup)(nil), // 15: metalstack.api.v2.VolumeGroup + (*v2.LogicalVolume)(nil), // 16: metalstack.api.v2.LogicalVolume + (*v2.FilesystemLayoutConstraints)(nil), // 17: metalstack.api.v2.FilesystemLayoutConstraints } var file_metalstack_admin_v2_filesystem_proto_depIdxs = []int32{ - 6, // 0: metalstack.admin.v2.FilesystemServiceCreateRequest.filesystem_layout:type_name -> metalstack.api.v2.FilesystemLayout - 6, // 1: metalstack.admin.v2.FilesystemServiceCreateResponse.filesystem_layout:type_name -> metalstack.api.v2.FilesystemLayout - 7, // 2: metalstack.admin.v2.FilesystemServiceUpdateRequest.update_meta:type_name -> metalstack.api.v2.UpdateMeta - 8, // 3: metalstack.admin.v2.FilesystemServiceUpdateRequest.filesystems:type_name -> metalstack.api.v2.Filesystem - 9, // 4: metalstack.admin.v2.FilesystemServiceUpdateRequest.disks:type_name -> metalstack.api.v2.Disk - 10, // 5: metalstack.admin.v2.FilesystemServiceUpdateRequest.raid:type_name -> metalstack.api.v2.Raid - 11, // 6: metalstack.admin.v2.FilesystemServiceUpdateRequest.volume_groups:type_name -> metalstack.api.v2.VolumeGroup - 12, // 7: metalstack.admin.v2.FilesystemServiceUpdateRequest.logical_volumes:type_name -> metalstack.api.v2.LogicalVolume - 13, // 8: metalstack.admin.v2.FilesystemServiceUpdateRequest.constraints:type_name -> metalstack.api.v2.FilesystemLayoutConstraints - 6, // 9: metalstack.admin.v2.FilesystemServiceUpdateResponse.filesystem_layout:type_name -> metalstack.api.v2.FilesystemLayout - 6, // 10: metalstack.admin.v2.FilesystemServiceDeleteResponse.filesystem_layout:type_name -> metalstack.api.v2.FilesystemLayout - 0, // 11: metalstack.admin.v2.FilesystemService.Create:input_type -> metalstack.admin.v2.FilesystemServiceCreateRequest - 2, // 12: metalstack.admin.v2.FilesystemService.Update:input_type -> metalstack.admin.v2.FilesystemServiceUpdateRequest - 4, // 13: metalstack.admin.v2.FilesystemService.Delete:input_type -> metalstack.admin.v2.FilesystemServiceDeleteRequest - 1, // 14: metalstack.admin.v2.FilesystemService.Create:output_type -> metalstack.admin.v2.FilesystemServiceCreateResponse - 3, // 15: metalstack.admin.v2.FilesystemService.Update:output_type -> metalstack.admin.v2.FilesystemServiceUpdateResponse - 5, // 16: metalstack.admin.v2.FilesystemService.Delete:output_type -> metalstack.admin.v2.FilesystemServiceDeleteResponse - 14, // [14:17] is the sub-list for method output_type - 11, // [11:14] is the sub-list for method input_type - 11, // [11:11] is the sub-list for extension type_name - 11, // [11:11] is the sub-list for extension extendee - 0, // [0:11] is the sub-list for field type_name + 10, // 0: metalstack.admin.v2.FilesystemServiceCreateRequest.filesystem_layout:type_name -> metalstack.api.v2.FilesystemLayout + 10, // 1: metalstack.admin.v2.FilesystemServiceCreateResponse.filesystem_layout:type_name -> metalstack.api.v2.FilesystemLayout + 11, // 2: metalstack.admin.v2.FilesystemServiceUpdateRequest.update_meta:type_name -> metalstack.api.v2.UpdateMeta + 12, // 3: metalstack.admin.v2.FilesystemServiceUpdateRequest.filesystems:type_name -> metalstack.api.v2.Filesystem + 13, // 4: metalstack.admin.v2.FilesystemServiceUpdateRequest.disks:type_name -> metalstack.api.v2.Disk + 14, // 5: metalstack.admin.v2.FilesystemServiceUpdateRequest.raid:type_name -> metalstack.api.v2.Raid + 15, // 6: metalstack.admin.v2.FilesystemServiceUpdateRequest.volume_groups:type_name -> metalstack.api.v2.VolumeGroup + 16, // 7: metalstack.admin.v2.FilesystemServiceUpdateRequest.logical_volumes:type_name -> metalstack.api.v2.LogicalVolume + 17, // 8: metalstack.admin.v2.FilesystemServiceUpdateRequest.constraints:type_name -> metalstack.api.v2.FilesystemLayoutConstraints + 10, // 9: metalstack.admin.v2.FilesystemServiceUpdateResponse.filesystem_layout:type_name -> metalstack.api.v2.FilesystemLayout + 10, // 10: metalstack.admin.v2.FilesystemServiceDeleteResponse.filesystem_layout:type_name -> metalstack.api.v2.FilesystemLayout + 7, // 11: metalstack.admin.v2.FilesystemServiceMatchRequest.size_and_image:type_name -> metalstack.admin.v2.MatchImageAndSize + 8, // 12: metalstack.admin.v2.FilesystemServiceMatchRequest.machine_and_filesystemlayout:type_name -> metalstack.admin.v2.MatchMachineAndFilesystemLayout + 10, // 13: metalstack.admin.v2.FilesystemServiceMatchResponse.filesystem_layout:type_name -> metalstack.api.v2.FilesystemLayout + 0, // 14: metalstack.admin.v2.FilesystemService.Create:input_type -> metalstack.admin.v2.FilesystemServiceCreateRequest + 2, // 15: metalstack.admin.v2.FilesystemService.Update:input_type -> metalstack.admin.v2.FilesystemServiceUpdateRequest + 4, // 16: metalstack.admin.v2.FilesystemService.Delete:input_type -> metalstack.admin.v2.FilesystemServiceDeleteRequest + 6, // 17: metalstack.admin.v2.FilesystemService.Match:input_type -> metalstack.admin.v2.FilesystemServiceMatchRequest + 1, // 18: metalstack.admin.v2.FilesystemService.Create:output_type -> metalstack.admin.v2.FilesystemServiceCreateResponse + 3, // 19: metalstack.admin.v2.FilesystemService.Update:output_type -> metalstack.admin.v2.FilesystemServiceUpdateResponse + 5, // 20: metalstack.admin.v2.FilesystemService.Delete:output_type -> metalstack.admin.v2.FilesystemServiceDeleteResponse + 9, // 21: metalstack.admin.v2.FilesystemService.Match:output_type -> metalstack.admin.v2.FilesystemServiceMatchResponse + 18, // [18:22] is the sub-list for method output_type + 14, // [14:18] is the sub-list for method input_type + 14, // [14:14] is the sub-list for extension type_name + 14, // [14:14] is the sub-list for extension extendee + 0, // [0:14] is the sub-list for field type_name } func init() { file_metalstack_admin_v2_filesystem_proto_init() } @@ -476,13 +744,17 @@ func file_metalstack_admin_v2_filesystem_proto_init() { return } file_metalstack_admin_v2_filesystem_proto_msgTypes[2].OneofWrappers = []any{} + file_metalstack_admin_v2_filesystem_proto_msgTypes[6].OneofWrappers = []any{ + (*FilesystemServiceMatchRequest_SizeAndImage)(nil), + (*FilesystemServiceMatchRequest_MachineAndFilesystemlayout)(nil), + } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: unsafe.Slice(unsafe.StringData(file_metalstack_admin_v2_filesystem_proto_rawDesc), len(file_metalstack_admin_v2_filesystem_proto_rawDesc)), NumEnums: 0, - NumMessages: 6, + NumMessages: 10, NumExtensions: 0, NumServices: 1, }, diff --git a/go/metalstack/api/v2/apiv2connect/filesystem.connect.go b/go/metalstack/api/v2/apiv2connect/filesystem.connect.go index 9f0439fc..7a09ab01 100644 --- a/go/metalstack/api/v2/apiv2connect/filesystem.connect.go +++ b/go/metalstack/api/v2/apiv2connect/filesystem.connect.go @@ -37,8 +37,6 @@ const ( FilesystemServiceGetProcedure = "/metalstack.api.v2.FilesystemService/Get" // FilesystemServiceListProcedure is the fully-qualified name of the FilesystemService's List RPC. FilesystemServiceListProcedure = "/metalstack.api.v2.FilesystemService/List" - // FilesystemServiceMatchProcedure is the fully-qualified name of the FilesystemService's Match RPC. - FilesystemServiceMatchProcedure = "/metalstack.api.v2.FilesystemService/Match" ) // FilesystemServiceClient is a client for the metalstack.api.v2.FilesystemService service. @@ -47,8 +45,6 @@ type FilesystemServiceClient interface { Get(context.Context, *v2.FilesystemServiceGetRequest) (*v2.FilesystemServiceGetResponse, error) // Returns the list of all filesystems. List(context.Context, *v2.FilesystemServiceListRequest) (*v2.FilesystemServiceListResponse, error) - // Matches a filesystem to a size and image or machine. - Match(context.Context, *v2.FilesystemServiceMatchRequest) (*v2.FilesystemServiceMatchResponse, error) } // NewFilesystemServiceClient constructs a client for the metalstack.api.v2.FilesystemService @@ -74,20 +70,13 @@ func NewFilesystemServiceClient(httpClient connect.HTTPClient, baseURL string, o connect.WithSchema(filesystemServiceMethods.ByName("List")), connect.WithClientOptions(opts...), ), - match: connect.NewClient[v2.FilesystemServiceMatchRequest, v2.FilesystemServiceMatchResponse]( - httpClient, - baseURL+FilesystemServiceMatchProcedure, - connect.WithSchema(filesystemServiceMethods.ByName("Match")), - connect.WithClientOptions(opts...), - ), } } // filesystemServiceClient implements FilesystemServiceClient. type filesystemServiceClient struct { - get *connect.Client[v2.FilesystemServiceGetRequest, v2.FilesystemServiceGetResponse] - list *connect.Client[v2.FilesystemServiceListRequest, v2.FilesystemServiceListResponse] - match *connect.Client[v2.FilesystemServiceMatchRequest, v2.FilesystemServiceMatchResponse] + get *connect.Client[v2.FilesystemServiceGetRequest, v2.FilesystemServiceGetResponse] + list *connect.Client[v2.FilesystemServiceListRequest, v2.FilesystemServiceListResponse] } // Get calls metalstack.api.v2.FilesystemService.Get. @@ -108,23 +97,12 @@ func (c *filesystemServiceClient) List(ctx context.Context, req *v2.FilesystemSe return nil, err } -// Match calls metalstack.api.v2.FilesystemService.Match. -func (c *filesystemServiceClient) Match(ctx context.Context, req *v2.FilesystemServiceMatchRequest) (*v2.FilesystemServiceMatchResponse, error) { - response, err := c.match.CallUnary(ctx, connect.NewRequest(req)) - if response != nil { - return response.Msg, err - } - return nil, err -} - // FilesystemServiceHandler is an implementation of the metalstack.api.v2.FilesystemService service. type FilesystemServiceHandler interface { // Returns the filesystem with the specified ID. Get(context.Context, *v2.FilesystemServiceGetRequest) (*v2.FilesystemServiceGetResponse, error) // Returns the list of all filesystems. List(context.Context, *v2.FilesystemServiceListRequest) (*v2.FilesystemServiceListResponse, error) - // Matches a filesystem to a size and image or machine. - Match(context.Context, *v2.FilesystemServiceMatchRequest) (*v2.FilesystemServiceMatchResponse, error) } // NewFilesystemServiceHandler builds an HTTP handler from the service implementation. It returns @@ -146,20 +124,12 @@ func NewFilesystemServiceHandler(svc FilesystemServiceHandler, opts ...connect.H connect.WithSchema(filesystemServiceMethods.ByName("List")), connect.WithHandlerOptions(opts...), ) - filesystemServiceMatchHandler := connect.NewUnaryHandlerSimple( - FilesystemServiceMatchProcedure, - svc.Match, - connect.WithSchema(filesystemServiceMethods.ByName("Match")), - connect.WithHandlerOptions(opts...), - ) return "/metalstack.api.v2.FilesystemService/", http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { switch r.URL.Path { case FilesystemServiceGetProcedure: filesystemServiceGetHandler.ServeHTTP(w, r) case FilesystemServiceListProcedure: filesystemServiceListHandler.ServeHTTP(w, r) - case FilesystemServiceMatchProcedure: - filesystemServiceMatchHandler.ServeHTTP(w, r) default: http.NotFound(w, r) } @@ -176,7 +146,3 @@ func (UnimplementedFilesystemServiceHandler) Get(context.Context, *v2.Filesystem func (UnimplementedFilesystemServiceHandler) List(context.Context, *v2.FilesystemServiceListRequest) (*v2.FilesystemServiceListResponse, error) { return nil, connect.NewError(connect.CodeUnimplemented, errors.New("metalstack.api.v2.FilesystemService.List is not implemented")) } - -func (UnimplementedFilesystemServiceHandler) Match(context.Context, *v2.FilesystemServiceMatchRequest) (*v2.FilesystemServiceMatchResponse, error) { - return nil, connect.NewError(connect.CodeUnimplemented, errors.New("metalstack.api.v2.FilesystemService.Match is not implemented")) -} diff --git a/go/metalstack/api/v2/filesystem.pb.go b/go/metalstack/api/v2/filesystem.pb.go index d3826fce..60cb7c03 100644 --- a/go/metalstack/api/v2/filesystem.pb.go +++ b/go/metalstack/api/v2/filesystem.pb.go @@ -446,251 +446,6 @@ func (x *FilesystemServiceListResponse) GetFilesystemLayouts() []*FilesystemLayo return nil } -// FilesystemServiceMatchRequest -type FilesystemServiceMatchRequest struct { - state protoimpl.MessageState `protogen:"open.v1"` - // Match either size and image to a filesystemlayout - // or if a machine matches to a filesystemlayout - // - // Types that are valid to be assigned to Match: - // - // *FilesystemServiceMatchRequest_SizeAndImage - // *FilesystemServiceMatchRequest_MachineAndFilesystemlayout - Match isFilesystemServiceMatchRequest_Match `protobuf_oneof:"match"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache -} - -func (x *FilesystemServiceMatchRequest) Reset() { - *x = FilesystemServiceMatchRequest{} - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *FilesystemServiceMatchRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FilesystemServiceMatchRequest) ProtoMessage() {} - -func (x *FilesystemServiceMatchRequest) ProtoReflect() protoreflect.Message { - mi := &file_metalstack_api_v2_filesystem_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) -} - -// Deprecated: Use FilesystemServiceMatchRequest.ProtoReflect.Descriptor instead. -func (*FilesystemServiceMatchRequest) Descriptor() ([]byte, []int) { - return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{4} -} - -func (x *FilesystemServiceMatchRequest) GetMatch() isFilesystemServiceMatchRequest_Match { - if x != nil { - return x.Match - } - return nil -} - -func (x *FilesystemServiceMatchRequest) GetSizeAndImage() *MatchImageAndSize { - if x != nil { - if x, ok := x.Match.(*FilesystemServiceMatchRequest_SizeAndImage); ok { - return x.SizeAndImage - } - } - return nil -} - -func (x *FilesystemServiceMatchRequest) GetMachineAndFilesystemlayout() *MatchMachineAndFilesystemLayout { - if x != nil { - if x, ok := x.Match.(*FilesystemServiceMatchRequest_MachineAndFilesystemlayout); ok { - return x.MachineAndFilesystemlayout - } - } - return nil -} - -type isFilesystemServiceMatchRequest_Match interface { - isFilesystemServiceMatchRequest_Match() -} - -type FilesystemServiceMatchRequest_SizeAndImage struct { - // SizeAndImage - SizeAndImage *MatchImageAndSize `protobuf:"bytes,1,opt,name=size_and_image,json=sizeAndImage,proto3,oneof"` -} - -type FilesystemServiceMatchRequest_MachineAndFilesystemlayout struct { - // MachineAndFilesystemlayout - MachineAndFilesystemlayout *MatchMachineAndFilesystemLayout `protobuf:"bytes,2,opt,name=machine_and_filesystemlayout,json=machineAndFilesystemlayout,proto3,oneof"` -} - -func (*FilesystemServiceMatchRequest_SizeAndImage) isFilesystemServiceMatchRequest_Match() {} - -func (*FilesystemServiceMatchRequest_MachineAndFilesystemlayout) isFilesystemServiceMatchRequest_Match() { -} - -// MatchImageAndSize -type MatchImageAndSize struct { - state protoimpl.MessageState `protogen:"open.v1"` - // Size, machine size to try - Size string `protobuf:"bytes,1,opt,name=size,proto3" json:"size,omitempty"` - // Image machine image to try - Image string `protobuf:"bytes,2,opt,name=image,proto3" json:"image,omitempty"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache -} - -func (x *MatchImageAndSize) Reset() { - *x = MatchImageAndSize{} - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *MatchImageAndSize) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MatchImageAndSize) ProtoMessage() {} - -func (x *MatchImageAndSize) ProtoReflect() protoreflect.Message { - mi := &file_metalstack_api_v2_filesystem_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) -} - -// Deprecated: Use MatchImageAndSize.ProtoReflect.Descriptor instead. -func (*MatchImageAndSize) Descriptor() ([]byte, []int) { - return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{5} -} - -func (x *MatchImageAndSize) GetSize() string { - if x != nil { - return x.Size - } - return "" -} - -func (x *MatchImageAndSize) GetImage() string { - if x != nil { - return x.Image - } - return "" -} - -// MatchMachineAndFilesystemLayout -type MatchMachineAndFilesystemLayout struct { - state protoimpl.MessageState `protogen:"open.v1"` - // Machine to check - Machine string `protobuf:"bytes,1,opt,name=machine,proto3" json:"machine,omitempty"` - // FilesystemLayout to check - FilesystemLayout string `protobuf:"bytes,2,opt,name=filesystem_layout,json=filesystemLayout,proto3" json:"filesystem_layout,omitempty"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache -} - -func (x *MatchMachineAndFilesystemLayout) Reset() { - *x = MatchMachineAndFilesystemLayout{} - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *MatchMachineAndFilesystemLayout) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MatchMachineAndFilesystemLayout) ProtoMessage() {} - -func (x *MatchMachineAndFilesystemLayout) ProtoReflect() protoreflect.Message { - mi := &file_metalstack_api_v2_filesystem_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) -} - -// Deprecated: Use MatchMachineAndFilesystemLayout.ProtoReflect.Descriptor instead. -func (*MatchMachineAndFilesystemLayout) Descriptor() ([]byte, []int) { - return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{6} -} - -func (x *MatchMachineAndFilesystemLayout) GetMachine() string { - if x != nil { - return x.Machine - } - return "" -} - -func (x *MatchMachineAndFilesystemLayout) GetFilesystemLayout() string { - if x != nil { - return x.FilesystemLayout - } - return "" -} - -// FilesystemServiceMatchResponse -type FilesystemServiceMatchResponse struct { - state protoimpl.MessageState `protogen:"open.v1"` - // FilesystemLayout the filesystemlayout - FilesystemLayout *FilesystemLayout `protobuf:"bytes,1,opt,name=filesystem_layout,json=filesystemLayout,proto3" json:"filesystem_layout,omitempty"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache -} - -func (x *FilesystemServiceMatchResponse) Reset() { - *x = FilesystemServiceMatchResponse{} - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *FilesystemServiceMatchResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FilesystemServiceMatchResponse) ProtoMessage() {} - -func (x *FilesystemServiceMatchResponse) ProtoReflect() protoreflect.Message { - mi := &file_metalstack_api_v2_filesystem_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) -} - -// Deprecated: Use FilesystemServiceMatchResponse.ProtoReflect.Descriptor instead. -func (*FilesystemServiceMatchResponse) Descriptor() ([]byte, []int) { - return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{7} -} - -func (x *FilesystemServiceMatchResponse) GetFilesystemLayout() *FilesystemLayout { - if x != nil { - return x.FilesystemLayout - } - return nil -} - // FilesystemLayout type FilesystemLayout struct { state protoimpl.MessageState `protogen:"open.v1"` @@ -720,7 +475,7 @@ type FilesystemLayout struct { func (x *FilesystemLayout) Reset() { *x = FilesystemLayout{} - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[8] + mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -732,7 +487,7 @@ func (x *FilesystemLayout) String() string { func (*FilesystemLayout) ProtoMessage() {} func (x *FilesystemLayout) ProtoReflect() protoreflect.Message { - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[8] + mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[4] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -745,7 +500,7 @@ func (x *FilesystemLayout) ProtoReflect() protoreflect.Message { // Deprecated: Use FilesystemLayout.ProtoReflect.Descriptor instead. func (*FilesystemLayout) Descriptor() ([]byte, []int) { - return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{8} + return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{4} } func (x *FilesystemLayout) GetId() string { @@ -831,7 +586,7 @@ type FilesystemLayoutConstraints struct { func (x *FilesystemLayoutConstraints) Reset() { *x = FilesystemLayoutConstraints{} - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[9] + mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -843,7 +598,7 @@ func (x *FilesystemLayoutConstraints) String() string { func (*FilesystemLayoutConstraints) ProtoMessage() {} func (x *FilesystemLayoutConstraints) ProtoReflect() protoreflect.Message { - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[9] + mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[5] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -856,7 +611,7 @@ func (x *FilesystemLayoutConstraints) ProtoReflect() protoreflect.Message { // Deprecated: Use FilesystemLayoutConstraints.ProtoReflect.Descriptor instead. func (*FilesystemLayoutConstraints) Descriptor() ([]byte, []int) { - return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{9} + return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{5} } func (x *FilesystemLayoutConstraints) GetSizes() []string { @@ -898,7 +653,7 @@ type Filesystem struct { func (x *Filesystem) Reset() { *x = Filesystem{} - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[10] + mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -910,7 +665,7 @@ func (x *Filesystem) String() string { func (*Filesystem) ProtoMessage() {} func (x *Filesystem) ProtoReflect() protoreflect.Message { - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[10] + mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[6] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -923,7 +678,7 @@ func (x *Filesystem) ProtoReflect() protoreflect.Message { // Deprecated: Use Filesystem.ProtoReflect.Descriptor instead. func (*Filesystem) Descriptor() ([]byte, []int) { - return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{10} + return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{6} } func (x *Filesystem) GetDevice() string { @@ -995,7 +750,7 @@ type Disk struct { func (x *Disk) Reset() { *x = Disk{} - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[11] + mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1007,7 +762,7 @@ func (x *Disk) String() string { func (*Disk) ProtoMessage() {} func (x *Disk) ProtoReflect() protoreflect.Message { - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[11] + mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[7] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1020,7 +775,7 @@ func (x *Disk) ProtoReflect() protoreflect.Message { // Deprecated: Use Disk.ProtoReflect.Descriptor instead. func (*Disk) Descriptor() ([]byte, []int) { - return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{11} + return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{7} } func (x *Disk) GetDevice() string { @@ -1056,7 +811,7 @@ type Raid struct { func (x *Raid) Reset() { *x = Raid{} - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[12] + mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1068,7 +823,7 @@ func (x *Raid) String() string { func (*Raid) ProtoMessage() {} func (x *Raid) ProtoReflect() protoreflect.Message { - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[12] + mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[8] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1081,7 +836,7 @@ func (x *Raid) ProtoReflect() protoreflect.Message { // Deprecated: Use Raid.ProtoReflect.Descriptor instead. func (*Raid) Descriptor() ([]byte, []int) { - return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{12} + return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{8} } func (x *Raid) GetArrayName() string { @@ -1136,7 +891,7 @@ type DiskPartition struct { func (x *DiskPartition) Reset() { *x = DiskPartition{} - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[13] + mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1148,7 +903,7 @@ func (x *DiskPartition) String() string { func (*DiskPartition) ProtoMessage() {} func (x *DiskPartition) ProtoReflect() protoreflect.Message { - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[13] + mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[9] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1161,7 +916,7 @@ func (x *DiskPartition) ProtoReflect() protoreflect.Message { // Deprecated: Use DiskPartition.ProtoReflect.Descriptor instead. func (*DiskPartition) Descriptor() ([]byte, []int) { - return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{13} + return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{9} } func (x *DiskPartition) GetNumber() uint32 { @@ -1207,7 +962,7 @@ type VolumeGroup struct { func (x *VolumeGroup) Reset() { *x = VolumeGroup{} - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[14] + mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1219,7 +974,7 @@ func (x *VolumeGroup) String() string { func (*VolumeGroup) ProtoMessage() {} func (x *VolumeGroup) ProtoReflect() protoreflect.Message { - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[14] + mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[10] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1232,7 +987,7 @@ func (x *VolumeGroup) ProtoReflect() protoreflect.Message { // Deprecated: Use VolumeGroup.ProtoReflect.Descriptor instead. func (*VolumeGroup) Descriptor() ([]byte, []int) { - return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{14} + return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{10} } func (x *VolumeGroup) GetName() string { @@ -1273,7 +1028,7 @@ type LogicalVolume struct { func (x *LogicalVolume) Reset() { *x = LogicalVolume{} - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[15] + mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1285,7 +1040,7 @@ func (x *LogicalVolume) String() string { func (*LogicalVolume) ProtoMessage() {} func (x *LogicalVolume) ProtoReflect() protoreflect.Message { - mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[15] + mi := &file_metalstack_api_v2_filesystem_proto_msgTypes[11] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1298,7 +1053,7 @@ func (x *LogicalVolume) ProtoReflect() protoreflect.Message { // Deprecated: Use LogicalVolume.ProtoReflect.Descriptor instead. func (*LogicalVolume) Descriptor() ([]byte, []int) { - return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{15} + return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{11} } func (x *LogicalVolume) GetName() string { @@ -1342,19 +1097,7 @@ const file_metalstack_api_v2_filesystem_proto_rawDesc = "" + "\x1cFilesystemServiceGetResponse\x12P\n" + "\x11filesystem_layout\x18\x01 \x01(\v2#.metalstack.api.v2.FilesystemLayoutR\x10filesystemLayout\"s\n" + "\x1dFilesystemServiceListResponse\x12R\n" + - "\x12filesystem_layouts\x18\x01 \x03(\v2#.metalstack.api.v2.FilesystemLayoutR\x11filesystemLayouts\"\xf5\x01\n" + - "\x1dFilesystemServiceMatchRequest\x12L\n" + - "\x0esize_and_image\x18\x01 \x01(\v2$.metalstack.api.v2.MatchImageAndSizeH\x00R\fsizeAndImage\x12v\n" + - "\x1cmachine_and_filesystemlayout\x18\x02 \x01(\v22.metalstack.api.v2.MatchMachineAndFilesystemLayoutH\x00R\x1amachineAndFilesystemlayoutB\x0e\n" + - "\x05match\x12\x05\xbaH\x02\b\x01\"W\n" + - "\x11MatchImageAndSize\x12\x1f\n" + - "\x04size\x18\x01 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\x04size\x12!\n" + - "\x05image\x18\x02 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\x05image\"\x7f\n" + - "\x1fMatchMachineAndFilesystemLayout\x12\"\n" + - "\amachine\x18\x01 \x01(\tB\b\xbaH\x05r\x03\xb0\x01\x01R\amachine\x128\n" + - "\x11filesystem_layout\x18\x02 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\x10filesystemLayout\"r\n" + - "\x1eFilesystemServiceMatchResponse\x12P\n" + - "\x11filesystem_layout\x18\x01 \x01(\v2#.metalstack.api.v2.FilesystemLayoutR\x10filesystemLayout\"\xce\x04\n" + + "\x12filesystem_layouts\x18\x01 \x03(\v2#.metalstack.api.v2.FilesystemLayoutR\x11filesystemLayouts\"\xce\x04\n" + "\x10FilesystemLayout\x12\x1b\n" + "\x02id\x18\x01 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\x12+\n" + "\x04meta\x18\x02 \x01(\v2\x17.metalstack.api.v2.MetaR\x04meta\x12$\n" + @@ -1444,11 +1187,10 @@ const file_metalstack_api_v2_filesystem_proto_rawDesc = "" + "\tRaidLevel\x12\x1a\n" + "\x16RAID_LEVEL_UNSPECIFIED\x10\x00\x12\x10\n" + "\fRAID_LEVEL_0\x10\x01\x12\x10\n" + - "\fRAID_LEVEL_1\x10\x022\xf2\x02\n" + + "\fRAID_LEVEL_1\x10\x022\xfa\x01\n" + "\x11FilesystemService\x12p\n" + "\x03Get\x12..metalstack.api.v2.FilesystemServiceGetRequest\x1a/.metalstack.api.v2.FilesystemServiceGetResponse\"\b\xd8\xf3\x18\x02\xe0\xf3\x18\x02\x12s\n" + - "\x04List\x12/.metalstack.api.v2.FilesystemServiceListRequest\x1a0.metalstack.api.v2.FilesystemServiceListResponse\"\b\xd8\xf3\x18\x02\xe0\xf3\x18\x02\x12v\n" + - "\x05Match\x120.metalstack.api.v2.FilesystemServiceMatchRequest\x1a1.metalstack.api.v2.FilesystemServiceMatchResponse\"\b\xd8\xf3\x18\x02\xe0\xf3\x18\x02B\xc5\x01\n" + + "\x04List\x12/.metalstack.api.v2.FilesystemServiceListRequest\x1a0.metalstack.api.v2.FilesystemServiceListResponse\"\b\xd8\xf3\x18\x02\xe0\xf3\x18\x02B\xc5\x01\n" + "\x15com.metalstack.api.v2B\x0fFilesystemProtoP\x01Z5github.com/metal-stack/api/go/metalstack/api/v2;apiv2\xa2\x02\x03MAX\xaa\x02\x11Metalstack.Api.V2\xca\x02\x11Metalstack\\Api\\V2\xe2\x02\x1dMetalstack\\Api\\V2\\GPBMetadata\xea\x02\x13Metalstack::Api::V2b\x06proto3" var ( @@ -1464,61 +1206,52 @@ func file_metalstack_api_v2_filesystem_proto_rawDescGZIP() []byte { } var file_metalstack_api_v2_filesystem_proto_enumTypes = make([]protoimpl.EnumInfo, 4) -var file_metalstack_api_v2_filesystem_proto_msgTypes = make([]protoimpl.MessageInfo, 17) +var file_metalstack_api_v2_filesystem_proto_msgTypes = make([]protoimpl.MessageInfo, 13) var file_metalstack_api_v2_filesystem_proto_goTypes = []any{ - (LVMType)(0), // 0: metalstack.api.v2.LVMType - (Format)(0), // 1: metalstack.api.v2.Format - (GPTType)(0), // 2: metalstack.api.v2.GPTType - (RaidLevel)(0), // 3: metalstack.api.v2.RaidLevel - (*FilesystemServiceGetRequest)(nil), // 4: metalstack.api.v2.FilesystemServiceGetRequest - (*FilesystemServiceListRequest)(nil), // 5: metalstack.api.v2.FilesystemServiceListRequest - (*FilesystemServiceGetResponse)(nil), // 6: metalstack.api.v2.FilesystemServiceGetResponse - (*FilesystemServiceListResponse)(nil), // 7: metalstack.api.v2.FilesystemServiceListResponse - (*FilesystemServiceMatchRequest)(nil), // 8: metalstack.api.v2.FilesystemServiceMatchRequest - (*MatchImageAndSize)(nil), // 9: metalstack.api.v2.MatchImageAndSize - (*MatchMachineAndFilesystemLayout)(nil), // 10: metalstack.api.v2.MatchMachineAndFilesystemLayout - (*FilesystemServiceMatchResponse)(nil), // 11: metalstack.api.v2.FilesystemServiceMatchResponse - (*FilesystemLayout)(nil), // 12: metalstack.api.v2.FilesystemLayout - (*FilesystemLayoutConstraints)(nil), // 13: metalstack.api.v2.FilesystemLayoutConstraints - (*Filesystem)(nil), // 14: metalstack.api.v2.Filesystem - (*Disk)(nil), // 15: metalstack.api.v2.Disk - (*Raid)(nil), // 16: metalstack.api.v2.Raid - (*DiskPartition)(nil), // 17: metalstack.api.v2.DiskPartition - (*VolumeGroup)(nil), // 18: metalstack.api.v2.VolumeGroup - (*LogicalVolume)(nil), // 19: metalstack.api.v2.LogicalVolume - nil, // 20: metalstack.api.v2.FilesystemLayoutConstraints.ImagesEntry - (*Meta)(nil), // 21: metalstack.api.v2.Meta + (LVMType)(0), // 0: metalstack.api.v2.LVMType + (Format)(0), // 1: metalstack.api.v2.Format + (GPTType)(0), // 2: metalstack.api.v2.GPTType + (RaidLevel)(0), // 3: metalstack.api.v2.RaidLevel + (*FilesystemServiceGetRequest)(nil), // 4: metalstack.api.v2.FilesystemServiceGetRequest + (*FilesystemServiceListRequest)(nil), // 5: metalstack.api.v2.FilesystemServiceListRequest + (*FilesystemServiceGetResponse)(nil), // 6: metalstack.api.v2.FilesystemServiceGetResponse + (*FilesystemServiceListResponse)(nil), // 7: metalstack.api.v2.FilesystemServiceListResponse + (*FilesystemLayout)(nil), // 8: metalstack.api.v2.FilesystemLayout + (*FilesystemLayoutConstraints)(nil), // 9: metalstack.api.v2.FilesystemLayoutConstraints + (*Filesystem)(nil), // 10: metalstack.api.v2.Filesystem + (*Disk)(nil), // 11: metalstack.api.v2.Disk + (*Raid)(nil), // 12: metalstack.api.v2.Raid + (*DiskPartition)(nil), // 13: metalstack.api.v2.DiskPartition + (*VolumeGroup)(nil), // 14: metalstack.api.v2.VolumeGroup + (*LogicalVolume)(nil), // 15: metalstack.api.v2.LogicalVolume + nil, // 16: metalstack.api.v2.FilesystemLayoutConstraints.ImagesEntry + (*Meta)(nil), // 17: metalstack.api.v2.Meta } var file_metalstack_api_v2_filesystem_proto_depIdxs = []int32{ - 12, // 0: metalstack.api.v2.FilesystemServiceGetResponse.filesystem_layout:type_name -> metalstack.api.v2.FilesystemLayout - 12, // 1: metalstack.api.v2.FilesystemServiceListResponse.filesystem_layouts:type_name -> metalstack.api.v2.FilesystemLayout - 9, // 2: metalstack.api.v2.FilesystemServiceMatchRequest.size_and_image:type_name -> metalstack.api.v2.MatchImageAndSize - 10, // 3: metalstack.api.v2.FilesystemServiceMatchRequest.machine_and_filesystemlayout:type_name -> metalstack.api.v2.MatchMachineAndFilesystemLayout - 12, // 4: metalstack.api.v2.FilesystemServiceMatchResponse.filesystem_layout:type_name -> metalstack.api.v2.FilesystemLayout - 21, // 5: metalstack.api.v2.FilesystemLayout.meta:type_name -> metalstack.api.v2.Meta - 14, // 6: metalstack.api.v2.FilesystemLayout.filesystems:type_name -> metalstack.api.v2.Filesystem - 15, // 7: metalstack.api.v2.FilesystemLayout.disks:type_name -> metalstack.api.v2.Disk - 16, // 8: metalstack.api.v2.FilesystemLayout.raid:type_name -> metalstack.api.v2.Raid - 18, // 9: metalstack.api.v2.FilesystemLayout.volume_groups:type_name -> metalstack.api.v2.VolumeGroup - 19, // 10: metalstack.api.v2.FilesystemLayout.logical_volumes:type_name -> metalstack.api.v2.LogicalVolume - 13, // 11: metalstack.api.v2.FilesystemLayout.constraints:type_name -> metalstack.api.v2.FilesystemLayoutConstraints - 20, // 12: metalstack.api.v2.FilesystemLayoutConstraints.images:type_name -> metalstack.api.v2.FilesystemLayoutConstraints.ImagesEntry - 1, // 13: metalstack.api.v2.Filesystem.format:type_name -> metalstack.api.v2.Format - 17, // 14: metalstack.api.v2.Disk.partitions:type_name -> metalstack.api.v2.DiskPartition - 3, // 15: metalstack.api.v2.Raid.level:type_name -> metalstack.api.v2.RaidLevel - 2, // 16: metalstack.api.v2.DiskPartition.gpt_type:type_name -> metalstack.api.v2.GPTType - 0, // 17: metalstack.api.v2.LogicalVolume.lvm_type:type_name -> metalstack.api.v2.LVMType - 4, // 18: metalstack.api.v2.FilesystemService.Get:input_type -> metalstack.api.v2.FilesystemServiceGetRequest - 5, // 19: metalstack.api.v2.FilesystemService.List:input_type -> metalstack.api.v2.FilesystemServiceListRequest - 8, // 20: metalstack.api.v2.FilesystemService.Match:input_type -> metalstack.api.v2.FilesystemServiceMatchRequest - 6, // 21: metalstack.api.v2.FilesystemService.Get:output_type -> metalstack.api.v2.FilesystemServiceGetResponse - 7, // 22: metalstack.api.v2.FilesystemService.List:output_type -> metalstack.api.v2.FilesystemServiceListResponse - 11, // 23: metalstack.api.v2.FilesystemService.Match:output_type -> metalstack.api.v2.FilesystemServiceMatchResponse - 21, // [21:24] is the sub-list for method output_type - 18, // [18:21] is the sub-list for method input_type - 18, // [18:18] is the sub-list for extension type_name - 18, // [18:18] is the sub-list for extension extendee - 0, // [0:18] is the sub-list for field type_name + 8, // 0: metalstack.api.v2.FilesystemServiceGetResponse.filesystem_layout:type_name -> metalstack.api.v2.FilesystemLayout + 8, // 1: metalstack.api.v2.FilesystemServiceListResponse.filesystem_layouts:type_name -> metalstack.api.v2.FilesystemLayout + 17, // 2: metalstack.api.v2.FilesystemLayout.meta:type_name -> metalstack.api.v2.Meta + 10, // 3: metalstack.api.v2.FilesystemLayout.filesystems:type_name -> metalstack.api.v2.Filesystem + 11, // 4: metalstack.api.v2.FilesystemLayout.disks:type_name -> metalstack.api.v2.Disk + 12, // 5: metalstack.api.v2.FilesystemLayout.raid:type_name -> metalstack.api.v2.Raid + 14, // 6: metalstack.api.v2.FilesystemLayout.volume_groups:type_name -> metalstack.api.v2.VolumeGroup + 15, // 7: metalstack.api.v2.FilesystemLayout.logical_volumes:type_name -> metalstack.api.v2.LogicalVolume + 9, // 8: metalstack.api.v2.FilesystemLayout.constraints:type_name -> metalstack.api.v2.FilesystemLayoutConstraints + 16, // 9: metalstack.api.v2.FilesystemLayoutConstraints.images:type_name -> metalstack.api.v2.FilesystemLayoutConstraints.ImagesEntry + 1, // 10: metalstack.api.v2.Filesystem.format:type_name -> metalstack.api.v2.Format + 13, // 11: metalstack.api.v2.Disk.partitions:type_name -> metalstack.api.v2.DiskPartition + 3, // 12: metalstack.api.v2.Raid.level:type_name -> metalstack.api.v2.RaidLevel + 2, // 13: metalstack.api.v2.DiskPartition.gpt_type:type_name -> metalstack.api.v2.GPTType + 0, // 14: metalstack.api.v2.LogicalVolume.lvm_type:type_name -> metalstack.api.v2.LVMType + 4, // 15: metalstack.api.v2.FilesystemService.Get:input_type -> metalstack.api.v2.FilesystemServiceGetRequest + 5, // 16: metalstack.api.v2.FilesystemService.List:input_type -> metalstack.api.v2.FilesystemServiceListRequest + 6, // 17: metalstack.api.v2.FilesystemService.Get:output_type -> metalstack.api.v2.FilesystemServiceGetResponse + 7, // 18: metalstack.api.v2.FilesystemService.List:output_type -> metalstack.api.v2.FilesystemServiceListResponse + 17, // [17:19] is the sub-list for method output_type + 15, // [15:17] is the sub-list for method input_type + 15, // [15:15] is the sub-list for extension type_name + 15, // [15:15] is the sub-list for extension extendee + 0, // [0:15] is the sub-list for field type_name } func init() { file_metalstack_api_v2_filesystem_proto_init() } @@ -1529,20 +1262,16 @@ func file_metalstack_api_v2_filesystem_proto_init() { file_metalstack_api_v2_common_proto_init() file_metalstack_api_v2_predefined_rules_proto_init() file_metalstack_api_v2_filesystem_proto_msgTypes[1].OneofWrappers = []any{} - file_metalstack_api_v2_filesystem_proto_msgTypes[4].OneofWrappers = []any{ - (*FilesystemServiceMatchRequest_SizeAndImage)(nil), - (*FilesystemServiceMatchRequest_MachineAndFilesystemlayout)(nil), - } - file_metalstack_api_v2_filesystem_proto_msgTypes[8].OneofWrappers = []any{} - file_metalstack_api_v2_filesystem_proto_msgTypes[10].OneofWrappers = []any{} - file_metalstack_api_v2_filesystem_proto_msgTypes[13].OneofWrappers = []any{} + file_metalstack_api_v2_filesystem_proto_msgTypes[4].OneofWrappers = []any{} + file_metalstack_api_v2_filesystem_proto_msgTypes[6].OneofWrappers = []any{} + file_metalstack_api_v2_filesystem_proto_msgTypes[9].OneofWrappers = []any{} type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: unsafe.Slice(unsafe.StringData(file_metalstack_api_v2_filesystem_proto_rawDesc), len(file_metalstack_api_v2_filesystem_proto_rawDesc)), NumEnums: 4, - NumMessages: 17, + NumMessages: 13, NumExtensions: 0, NumServices: 1, }, diff --git a/go/permissions/servicepermissions.go b/go/permissions/servicepermissions.go index 9ce95b39..58b5cab9 100755 --- a/go/permissions/servicepermissions.go +++ b/go/permissions/servicepermissions.go @@ -62,6 +62,7 @@ func GetServicePermissions() *ServicePermissions { "/metalstack.admin.v2.FilesystemService/Create", "/metalstack.admin.v2.FilesystemService/Update", "/metalstack.admin.v2.FilesystemService/Delete", + "/metalstack.admin.v2.FilesystemService/Match", "/metalstack.admin.v2.ImageService/Create", "/metalstack.admin.v2.ImageService/Update", "/metalstack.admin.v2.ImageService/Delete", @@ -119,6 +120,7 @@ func GetServicePermissions() *ServicePermissions { "/metalstack.admin.v2.AuditService/List", "/metalstack.admin.v2.ComponentService/Get", "/metalstack.admin.v2.ComponentService/List", + "/metalstack.admin.v2.FilesystemService/Match", "/metalstack.admin.v2.ImageService/Usage", "/metalstack.admin.v2.IPService/List", "/metalstack.admin.v2.MachineService/Get", @@ -277,6 +279,7 @@ func GetServicePermissions() *ServicePermissions { "/metalstack.admin.v2.ComponentService/List": true, "/metalstack.admin.v2.FilesystemService/Create": true, "/metalstack.admin.v2.FilesystemService/Delete": true, + "/metalstack.admin.v2.FilesystemService/Match": true, "/metalstack.admin.v2.FilesystemService/Update": true, "/metalstack.admin.v2.IPService/List": true, "/metalstack.admin.v2.ImageService/Create": true, @@ -333,7 +336,6 @@ func GetServicePermissions() *ServicePermissions { "/metalstack.api.v2.AuditService/List": true, "/metalstack.api.v2.FilesystemService/Get": true, "/metalstack.api.v2.FilesystemService/List": true, - "/metalstack.api.v2.FilesystemService/Match": true, "/metalstack.api.v2.HealthService/Get": true, "/metalstack.api.v2.IPService/Create": true, "/metalstack.api.v2.IPService/Delete": true, @@ -425,7 +427,6 @@ func GetServicePermissions() *ServicePermissions { Self: map[string]bool{ "/metalstack.api.v2.FilesystemService/Get": true, "/metalstack.api.v2.FilesystemService/List": true, - "/metalstack.api.v2.FilesystemService/Match": true, "/metalstack.api.v2.ImageService/Get": true, "/metalstack.api.v2.ImageService/Latest": true, "/metalstack.api.v2.ImageService/List": true, @@ -458,6 +459,7 @@ func GetServicePermissions() *ServicePermissions { "/metalstack.admin.v2.ComponentService/List": true, "/metalstack.admin.v2.FilesystemService/Create": true, "/metalstack.admin.v2.FilesystemService/Delete": true, + "/metalstack.admin.v2.FilesystemService/Match": true, "/metalstack.admin.v2.FilesystemService/Update": true, "/metalstack.admin.v2.IPService/List": true, "/metalstack.admin.v2.ImageService/Create": true, @@ -583,6 +585,7 @@ func GetServicePermissions() *ServicePermissions { "/metalstack.admin.v2.ComponentService/List": false, "/metalstack.admin.v2.FilesystemService/Create": true, "/metalstack.admin.v2.FilesystemService/Delete": true, + "/metalstack.admin.v2.FilesystemService/Match": false, "/metalstack.admin.v2.FilesystemService/Update": true, "/metalstack.admin.v2.IPService/List": false, "/metalstack.admin.v2.ImageService/Create": true, @@ -639,7 +642,6 @@ func GetServicePermissions() *ServicePermissions { "/metalstack.api.v2.AuditService/List": false, "/metalstack.api.v2.FilesystemService/Get": false, "/metalstack.api.v2.FilesystemService/List": false, - "/metalstack.api.v2.FilesystemService/Match": false, "/metalstack.api.v2.HealthService/Get": false, "/metalstack.api.v2.IPService/Create": true, "/metalstack.api.v2.IPService/Delete": true, diff --git a/go/tests/mocks/metalstack/admin/v2/adminv2connect/FilesystemServiceClient.go b/go/tests/mocks/metalstack/admin/v2/adminv2connect/FilesystemServiceClient.go index d77c9297..15277f8c 100644 --- a/go/tests/mocks/metalstack/admin/v2/adminv2connect/FilesystemServiceClient.go +++ b/go/tests/mocks/metalstack/admin/v2/adminv2connect/FilesystemServiceClient.go @@ -174,6 +174,74 @@ func (_c *FilesystemServiceClient_Delete_Call) RunAndReturn(run func(context1 co return _c } +// Match provides a mock function for the type FilesystemServiceClient +func (_mock *FilesystemServiceClient) Match(context1 context.Context, filesystemServiceMatchRequest *adminv2.FilesystemServiceMatchRequest) (*adminv2.FilesystemServiceMatchResponse, error) { + ret := _mock.Called(context1, filesystemServiceMatchRequest) + + if len(ret) == 0 { + panic("no return value specified for Match") + } + + var r0 *adminv2.FilesystemServiceMatchResponse + var r1 error + if returnFunc, ok := ret.Get(0).(func(context.Context, *adminv2.FilesystemServiceMatchRequest) (*adminv2.FilesystemServiceMatchResponse, error)); ok { + return returnFunc(context1, filesystemServiceMatchRequest) + } + if returnFunc, ok := ret.Get(0).(func(context.Context, *adminv2.FilesystemServiceMatchRequest) *adminv2.FilesystemServiceMatchResponse); ok { + r0 = returnFunc(context1, filesystemServiceMatchRequest) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).(*adminv2.FilesystemServiceMatchResponse) + } + } + if returnFunc, ok := ret.Get(1).(func(context.Context, *adminv2.FilesystemServiceMatchRequest) error); ok { + r1 = returnFunc(context1, filesystemServiceMatchRequest) + } else { + r1 = ret.Error(1) + } + return r0, r1 +} + +// FilesystemServiceClient_Match_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'Match' +type FilesystemServiceClient_Match_Call struct { + *mock.Call +} + +// Match is a helper method to define mock.On call +// - context1 context.Context +// - filesystemServiceMatchRequest *adminv2.FilesystemServiceMatchRequest +func (_e *FilesystemServiceClient_Expecter) Match(context1 interface{}, filesystemServiceMatchRequest interface{}) *FilesystemServiceClient_Match_Call { + return &FilesystemServiceClient_Match_Call{Call: _e.mock.On("Match", context1, filesystemServiceMatchRequest)} +} + +func (_c *FilesystemServiceClient_Match_Call) Run(run func(context1 context.Context, filesystemServiceMatchRequest *adminv2.FilesystemServiceMatchRequest)) *FilesystemServiceClient_Match_Call { + _c.Call.Run(func(args mock.Arguments) { + var arg0 context.Context + if args[0] != nil { + arg0 = args[0].(context.Context) + } + var arg1 *adminv2.FilesystemServiceMatchRequest + if args[1] != nil { + arg1 = args[1].(*adminv2.FilesystemServiceMatchRequest) + } + run( + arg0, + arg1, + ) + }) + return _c +} + +func (_c *FilesystemServiceClient_Match_Call) Return(filesystemServiceMatchResponse *adminv2.FilesystemServiceMatchResponse, err error) *FilesystemServiceClient_Match_Call { + _c.Call.Return(filesystemServiceMatchResponse, err) + return _c +} + +func (_c *FilesystemServiceClient_Match_Call) RunAndReturn(run func(context1 context.Context, filesystemServiceMatchRequest *adminv2.FilesystemServiceMatchRequest) (*adminv2.FilesystemServiceMatchResponse, error)) *FilesystemServiceClient_Match_Call { + _c.Call.Return(run) + return _c +} + // Update provides a mock function for the type FilesystemServiceClient func (_mock *FilesystemServiceClient) Update(context1 context.Context, filesystemServiceUpdateRequest *adminv2.FilesystemServiceUpdateRequest) (*adminv2.FilesystemServiceUpdateResponse, error) { ret := _mock.Called(context1, filesystemServiceUpdateRequest) diff --git a/go/tests/mocks/metalstack/admin/v2/adminv2connect/FilesystemServiceHandler.go b/go/tests/mocks/metalstack/admin/v2/adminv2connect/FilesystemServiceHandler.go index 9dce85e3..7a36a2ba 100644 --- a/go/tests/mocks/metalstack/admin/v2/adminv2connect/FilesystemServiceHandler.go +++ b/go/tests/mocks/metalstack/admin/v2/adminv2connect/FilesystemServiceHandler.go @@ -174,6 +174,74 @@ func (_c *FilesystemServiceHandler_Delete_Call) RunAndReturn(run func(context1 c return _c } +// Match provides a mock function for the type FilesystemServiceHandler +func (_mock *FilesystemServiceHandler) Match(context1 context.Context, filesystemServiceMatchRequest *adminv2.FilesystemServiceMatchRequest) (*adminv2.FilesystemServiceMatchResponse, error) { + ret := _mock.Called(context1, filesystemServiceMatchRequest) + + if len(ret) == 0 { + panic("no return value specified for Match") + } + + var r0 *adminv2.FilesystemServiceMatchResponse + var r1 error + if returnFunc, ok := ret.Get(0).(func(context.Context, *adminv2.FilesystemServiceMatchRequest) (*adminv2.FilesystemServiceMatchResponse, error)); ok { + return returnFunc(context1, filesystemServiceMatchRequest) + } + if returnFunc, ok := ret.Get(0).(func(context.Context, *adminv2.FilesystemServiceMatchRequest) *adminv2.FilesystemServiceMatchResponse); ok { + r0 = returnFunc(context1, filesystemServiceMatchRequest) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).(*adminv2.FilesystemServiceMatchResponse) + } + } + if returnFunc, ok := ret.Get(1).(func(context.Context, *adminv2.FilesystemServiceMatchRequest) error); ok { + r1 = returnFunc(context1, filesystemServiceMatchRequest) + } else { + r1 = ret.Error(1) + } + return r0, r1 +} + +// FilesystemServiceHandler_Match_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'Match' +type FilesystemServiceHandler_Match_Call struct { + *mock.Call +} + +// Match is a helper method to define mock.On call +// - context1 context.Context +// - filesystemServiceMatchRequest *adminv2.FilesystemServiceMatchRequest +func (_e *FilesystemServiceHandler_Expecter) Match(context1 interface{}, filesystemServiceMatchRequest interface{}) *FilesystemServiceHandler_Match_Call { + return &FilesystemServiceHandler_Match_Call{Call: _e.mock.On("Match", context1, filesystemServiceMatchRequest)} +} + +func (_c *FilesystemServiceHandler_Match_Call) Run(run func(context1 context.Context, filesystemServiceMatchRequest *adminv2.FilesystemServiceMatchRequest)) *FilesystemServiceHandler_Match_Call { + _c.Call.Run(func(args mock.Arguments) { + var arg0 context.Context + if args[0] != nil { + arg0 = args[0].(context.Context) + } + var arg1 *adminv2.FilesystemServiceMatchRequest + if args[1] != nil { + arg1 = args[1].(*adminv2.FilesystemServiceMatchRequest) + } + run( + arg0, + arg1, + ) + }) + return _c +} + +func (_c *FilesystemServiceHandler_Match_Call) Return(filesystemServiceMatchResponse *adminv2.FilesystemServiceMatchResponse, err error) *FilesystemServiceHandler_Match_Call { + _c.Call.Return(filesystemServiceMatchResponse, err) + return _c +} + +func (_c *FilesystemServiceHandler_Match_Call) RunAndReturn(run func(context1 context.Context, filesystemServiceMatchRequest *adminv2.FilesystemServiceMatchRequest) (*adminv2.FilesystemServiceMatchResponse, error)) *FilesystemServiceHandler_Match_Call { + _c.Call.Return(run) + return _c +} + // Update provides a mock function for the type FilesystemServiceHandler func (_mock *FilesystemServiceHandler) Update(context1 context.Context, filesystemServiceUpdateRequest *adminv2.FilesystemServiceUpdateRequest) (*adminv2.FilesystemServiceUpdateResponse, error) { ret := _mock.Called(context1, filesystemServiceUpdateRequest) diff --git a/go/tests/mocks/metalstack/api/v2/isFilesystemServiceMatchRequest_Match.go b/go/tests/mocks/metalstack/admin/v2/isFilesystemServiceMatchRequest_Match.go similarity index 99% rename from go/tests/mocks/metalstack/api/v2/isFilesystemServiceMatchRequest_Match.go rename to go/tests/mocks/metalstack/admin/v2/isFilesystemServiceMatchRequest_Match.go index b5432740..f962e7c3 100644 --- a/go/tests/mocks/metalstack/api/v2/isFilesystemServiceMatchRequest_Match.go +++ b/go/tests/mocks/metalstack/admin/v2/isFilesystemServiceMatchRequest_Match.go @@ -2,7 +2,7 @@ // github.com/vektra/mockery // template: testify -package apiv2 +package adminv2 import ( mock "github.com/stretchr/testify/mock" diff --git a/go/tests/mocks/metalstack/api/v2/apiv2connect/FilesystemServiceClient.go b/go/tests/mocks/metalstack/api/v2/apiv2connect/FilesystemServiceClient.go index aaa94e2d..7207d1bd 100644 --- a/go/tests/mocks/metalstack/api/v2/apiv2connect/FilesystemServiceClient.go +++ b/go/tests/mocks/metalstack/api/v2/apiv2connect/FilesystemServiceClient.go @@ -173,71 +173,3 @@ func (_c *FilesystemServiceClient_List_Call) RunAndReturn(run func(context1 cont _c.Call.Return(run) return _c } - -// Match provides a mock function for the type FilesystemServiceClient -func (_mock *FilesystemServiceClient) Match(context1 context.Context, filesystemServiceMatchRequest *apiv2.FilesystemServiceMatchRequest) (*apiv2.FilesystemServiceMatchResponse, error) { - ret := _mock.Called(context1, filesystemServiceMatchRequest) - - if len(ret) == 0 { - panic("no return value specified for Match") - } - - var r0 *apiv2.FilesystemServiceMatchResponse - var r1 error - if returnFunc, ok := ret.Get(0).(func(context.Context, *apiv2.FilesystemServiceMatchRequest) (*apiv2.FilesystemServiceMatchResponse, error)); ok { - return returnFunc(context1, filesystemServiceMatchRequest) - } - if returnFunc, ok := ret.Get(0).(func(context.Context, *apiv2.FilesystemServiceMatchRequest) *apiv2.FilesystemServiceMatchResponse); ok { - r0 = returnFunc(context1, filesystemServiceMatchRequest) - } else { - if ret.Get(0) != nil { - r0 = ret.Get(0).(*apiv2.FilesystemServiceMatchResponse) - } - } - if returnFunc, ok := ret.Get(1).(func(context.Context, *apiv2.FilesystemServiceMatchRequest) error); ok { - r1 = returnFunc(context1, filesystemServiceMatchRequest) - } else { - r1 = ret.Error(1) - } - return r0, r1 -} - -// FilesystemServiceClient_Match_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'Match' -type FilesystemServiceClient_Match_Call struct { - *mock.Call -} - -// Match is a helper method to define mock.On call -// - context1 context.Context -// - filesystemServiceMatchRequest *apiv2.FilesystemServiceMatchRequest -func (_e *FilesystemServiceClient_Expecter) Match(context1 interface{}, filesystemServiceMatchRequest interface{}) *FilesystemServiceClient_Match_Call { - return &FilesystemServiceClient_Match_Call{Call: _e.mock.On("Match", context1, filesystemServiceMatchRequest)} -} - -func (_c *FilesystemServiceClient_Match_Call) Run(run func(context1 context.Context, filesystemServiceMatchRequest *apiv2.FilesystemServiceMatchRequest)) *FilesystemServiceClient_Match_Call { - _c.Call.Run(func(args mock.Arguments) { - var arg0 context.Context - if args[0] != nil { - arg0 = args[0].(context.Context) - } - var arg1 *apiv2.FilesystemServiceMatchRequest - if args[1] != nil { - arg1 = args[1].(*apiv2.FilesystemServiceMatchRequest) - } - run( - arg0, - arg1, - ) - }) - return _c -} - -func (_c *FilesystemServiceClient_Match_Call) Return(filesystemServiceMatchResponse *apiv2.FilesystemServiceMatchResponse, err error) *FilesystemServiceClient_Match_Call { - _c.Call.Return(filesystemServiceMatchResponse, err) - return _c -} - -func (_c *FilesystemServiceClient_Match_Call) RunAndReturn(run func(context1 context.Context, filesystemServiceMatchRequest *apiv2.FilesystemServiceMatchRequest) (*apiv2.FilesystemServiceMatchResponse, error)) *FilesystemServiceClient_Match_Call { - _c.Call.Return(run) - return _c -} diff --git a/go/tests/mocks/metalstack/api/v2/apiv2connect/FilesystemServiceHandler.go b/go/tests/mocks/metalstack/api/v2/apiv2connect/FilesystemServiceHandler.go index c9c5acfb..f14b6d4c 100644 --- a/go/tests/mocks/metalstack/api/v2/apiv2connect/FilesystemServiceHandler.go +++ b/go/tests/mocks/metalstack/api/v2/apiv2connect/FilesystemServiceHandler.go @@ -173,71 +173,3 @@ func (_c *FilesystemServiceHandler_List_Call) RunAndReturn(run func(context1 con _c.Call.Return(run) return _c } - -// Match provides a mock function for the type FilesystemServiceHandler -func (_mock *FilesystemServiceHandler) Match(context1 context.Context, filesystemServiceMatchRequest *apiv2.FilesystemServiceMatchRequest) (*apiv2.FilesystemServiceMatchResponse, error) { - ret := _mock.Called(context1, filesystemServiceMatchRequest) - - if len(ret) == 0 { - panic("no return value specified for Match") - } - - var r0 *apiv2.FilesystemServiceMatchResponse - var r1 error - if returnFunc, ok := ret.Get(0).(func(context.Context, *apiv2.FilesystemServiceMatchRequest) (*apiv2.FilesystemServiceMatchResponse, error)); ok { - return returnFunc(context1, filesystemServiceMatchRequest) - } - if returnFunc, ok := ret.Get(0).(func(context.Context, *apiv2.FilesystemServiceMatchRequest) *apiv2.FilesystemServiceMatchResponse); ok { - r0 = returnFunc(context1, filesystemServiceMatchRequest) - } else { - if ret.Get(0) != nil { - r0 = ret.Get(0).(*apiv2.FilesystemServiceMatchResponse) - } - } - if returnFunc, ok := ret.Get(1).(func(context.Context, *apiv2.FilesystemServiceMatchRequest) error); ok { - r1 = returnFunc(context1, filesystemServiceMatchRequest) - } else { - r1 = ret.Error(1) - } - return r0, r1 -} - -// FilesystemServiceHandler_Match_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'Match' -type FilesystemServiceHandler_Match_Call struct { - *mock.Call -} - -// Match is a helper method to define mock.On call -// - context1 context.Context -// - filesystemServiceMatchRequest *apiv2.FilesystemServiceMatchRequest -func (_e *FilesystemServiceHandler_Expecter) Match(context1 interface{}, filesystemServiceMatchRequest interface{}) *FilesystemServiceHandler_Match_Call { - return &FilesystemServiceHandler_Match_Call{Call: _e.mock.On("Match", context1, filesystemServiceMatchRequest)} -} - -func (_c *FilesystemServiceHandler_Match_Call) Run(run func(context1 context.Context, filesystemServiceMatchRequest *apiv2.FilesystemServiceMatchRequest)) *FilesystemServiceHandler_Match_Call { - _c.Call.Run(func(args mock.Arguments) { - var arg0 context.Context - if args[0] != nil { - arg0 = args[0].(context.Context) - } - var arg1 *apiv2.FilesystemServiceMatchRequest - if args[1] != nil { - arg1 = args[1].(*apiv2.FilesystemServiceMatchRequest) - } - run( - arg0, - arg1, - ) - }) - return _c -} - -func (_c *FilesystemServiceHandler_Match_Call) Return(filesystemServiceMatchResponse *apiv2.FilesystemServiceMatchResponse, err error) *FilesystemServiceHandler_Match_Call { - _c.Call.Return(filesystemServiceMatchResponse, err) - return _c -} - -func (_c *FilesystemServiceHandler_Match_Call) RunAndReturn(run func(context1 context.Context, filesystemServiceMatchRequest *apiv2.FilesystemServiceMatchRequest) (*apiv2.FilesystemServiceMatchResponse, error)) *FilesystemServiceHandler_Match_Call { - _c.Call.Return(run) - return _c -} diff --git a/js/metalstack/admin/v2/filesystem_pb.d.ts b/js/metalstack/admin/v2/filesystem_pb.d.ts index c3a2fe5f..0f76e8da 100644 --- a/js/metalstack/admin/v2/filesystem_pb.d.ts +++ b/js/metalstack/admin/v2/filesystem_pb.d.ts @@ -168,6 +168,110 @@ export type FilesystemServiceDeleteResponse = Message<"metalstack.admin.v2.Files * Use `create(FilesystemServiceDeleteResponseSchema)` to create a new message. */ export declare const FilesystemServiceDeleteResponseSchema: GenMessage; +/** + * FilesystemServiceMatchRequest + * + * @generated from message metalstack.admin.v2.FilesystemServiceMatchRequest + */ +export type FilesystemServiceMatchRequest = Message<"metalstack.admin.v2.FilesystemServiceMatchRequest"> & { + /** + * Match either size and image to a filesystemlayout + * or if a machine matches to a filesystemlayout + * + * @generated from oneof metalstack.admin.v2.FilesystemServiceMatchRequest.match + */ + match: { + /** + * SizeAndImage + * + * @generated from field: metalstack.admin.v2.MatchImageAndSize size_and_image = 1; + */ + value: MatchImageAndSize; + case: "sizeAndImage"; + } | { + /** + * MachineAndFilesystemlayout + * + * @generated from field: metalstack.admin.v2.MatchMachineAndFilesystemLayout machine_and_filesystemlayout = 2; + */ + value: MatchMachineAndFilesystemLayout; + case: "machineAndFilesystemlayout"; + } | { + case: undefined; + value?: undefined; + }; +}; +/** + * Describes the message metalstack.admin.v2.FilesystemServiceMatchRequest. + * Use `create(FilesystemServiceMatchRequestSchema)` to create a new message. + */ +export declare const FilesystemServiceMatchRequestSchema: GenMessage; +/** + * MatchImageAndSize + * + * @generated from message metalstack.admin.v2.MatchImageAndSize + */ +export type MatchImageAndSize = Message<"metalstack.admin.v2.MatchImageAndSize"> & { + /** + * Size, machine size to try + * + * @generated from field: string size = 1; + */ + size: string; + /** + * Image machine image to try + * + * @generated from field: string image = 2; + */ + image: string; +}; +/** + * Describes the message metalstack.admin.v2.MatchImageAndSize. + * Use `create(MatchImageAndSizeSchema)` to create a new message. + */ +export declare const MatchImageAndSizeSchema: GenMessage; +/** + * MatchMachineAndFilesystemLayout + * + * @generated from message metalstack.admin.v2.MatchMachineAndFilesystemLayout + */ +export type MatchMachineAndFilesystemLayout = Message<"metalstack.admin.v2.MatchMachineAndFilesystemLayout"> & { + /** + * Machine to check + * + * @generated from field: string machine = 1; + */ + machine: string; + /** + * FilesystemLayout to check + * + * @generated from field: string filesystem_layout = 2; + */ + filesystemLayout: string; +}; +/** + * Describes the message metalstack.admin.v2.MatchMachineAndFilesystemLayout. + * Use `create(MatchMachineAndFilesystemLayoutSchema)` to create a new message. + */ +export declare const MatchMachineAndFilesystemLayoutSchema: GenMessage; +/** + * FilesystemServiceMatchResponse + * + * @generated from message metalstack.admin.v2.FilesystemServiceMatchResponse + */ +export type FilesystemServiceMatchResponse = Message<"metalstack.admin.v2.FilesystemServiceMatchResponse"> & { + /** + * FilesystemLayout the filesystemlayout + * + * @generated from field: metalstack.api.v2.FilesystemLayout filesystem_layout = 1; + */ + filesystemLayout?: FilesystemLayout | undefined; +}; +/** + * Describes the message metalstack.admin.v2.FilesystemServiceMatchResponse. + * Use `create(FilesystemServiceMatchResponseSchema)` to create a new message. + */ +export declare const FilesystemServiceMatchResponseSchema: GenMessage; /** * FilesystemService provides filesystem management operations. * @@ -204,4 +308,14 @@ export declare const FilesystemService: GenService<{ input: typeof FilesystemServiceDeleteRequestSchema; output: typeof FilesystemServiceDeleteResponseSchema; }; + /** + * Matches a filesystem to a size and image or machine. + * + * @generated from rpc metalstack.admin.v2.FilesystemService.Match + */ + match: { + methodKind: "unary"; + input: typeof FilesystemServiceMatchRequestSchema; + output: typeof FilesystemServiceMatchResponseSchema; + }; }>; diff --git a/js/metalstack/admin/v2/filesystem_pb.js b/js/metalstack/admin/v2/filesystem_pb.js index d7a0f124..36ed9d1c 100644 --- a/js/metalstack/admin/v2/filesystem_pb.js +++ b/js/metalstack/admin/v2/filesystem_pb.js @@ -9,7 +9,7 @@ import { file_metalstack_api_v2_predefined_rules } from "../../api/v2/predefined /** * Describes the file metalstack/admin/v2/filesystem.proto. */ -export const file_metalstack_admin_v2_filesystem = /*@__PURE__*/ fileDesc("CiRtZXRhbHN0YWNrL2FkbWluL3YyL2ZpbGVzeXN0ZW0ucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiYAoeRmlsZXN5c3RlbVNlcnZpY2VDcmVhdGVSZXF1ZXN0Ej4KEWZpbGVzeXN0ZW1fbGF5b3V0GAEgASgLMiMubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dCJhCh9GaWxlc3lzdGVtU2VydmljZUNyZWF0ZVJlc3BvbnNlEj4KEWZpbGVzeXN0ZW1fbGF5b3V0GAEgASgLMiMubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dCKPBAoeRmlsZXN5c3RlbVNlcnZpY2VVcGRhdGVSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARI6Cgt1cGRhdGVfbWV0YRgCIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZU1ldGFCBrpIA8gBARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjIKC2ZpbGVzeXN0ZW1zGAUgAygLMh0ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbRImCgVkaXNrcxgGIAMoCzIXLm1ldGFsc3RhY2suYXBpLnYyLkRpc2sSJQoEcmFpZBgHIAMoCzIXLm1ldGFsc3RhY2suYXBpLnYyLlJhaWQSNQoNdm9sdW1lX2dyb3VwcxgIIAMoCzIeLm1ldGFsc3RhY2suYXBpLnYyLlZvbHVtZUdyb3VwEjkKD2xvZ2ljYWxfdm9sdW1lcxgJIAMoCzIgLm1ldGFsc3RhY2suYXBpLnYyLkxvZ2ljYWxWb2x1bWUSQwoLY29uc3RyYWludHMYCiABKAsyLi5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0Q29uc3RyYWludHNCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uImEKH0ZpbGVzeXN0ZW1TZXJ2aWNlVXBkYXRlUmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0IjkKHkZpbGVzeXN0ZW1TZXJ2aWNlRGVsZXRlUmVxdWVzdBIXCgJpZBgBIAEoCUILukgIcgbAs66xAgEiYQofRmlsZXN5c3RlbVNlcnZpY2VEZWxldGVSZXNwb25zZRI+ChFmaWxlc3lzdGVtX2xheW91dBgBIAEoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQykwMKEUZpbGVzeXN0ZW1TZXJ2aWNlEn4KBkNyZWF0ZRIzLm1ldGFsc3RhY2suYWRtaW4udjIuRmlsZXN5c3RlbVNlcnZpY2VDcmVhdGVSZXF1ZXN0GjQubWV0YWxzdGFjay5hZG1pbi52Mi5GaWxlc3lzdGVtU2VydmljZUNyZWF0ZVJlc3BvbnNlIgnS8xgBAeDzGAESfgoGVXBkYXRlEjMubWV0YWxzdGFjay5hZG1pbi52Mi5GaWxlc3lzdGVtU2VydmljZVVwZGF0ZVJlcXVlc3QaNC5tZXRhbHN0YWNrLmFkbWluLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlVXBkYXRlUmVzcG9uc2UiCdLzGAEB4PMYARJ+CgZEZWxldGUSMy5tZXRhbHN0YWNrLmFkbWluLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlRGVsZXRlUmVxdWVzdBo0Lm1ldGFsc3RhY2suYWRtaW4udjIuRmlsZXN5c3RlbVNlcnZpY2VEZWxldGVSZXNwb25zZSIJ0vMYAQHg8xgBQtMBChdjb20ubWV0YWxzdGFjay5hZG1pbi52MkIPRmlsZXN5c3RlbVByb3RvUAFaOWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYWRtaW4vdjI7YWRtaW52MqICA01BWKoCE01ldGFsc3RhY2suQWRtaW4uVjLKAhNNZXRhbHN0YWNrXEFkbWluXFYy4gIfTWV0YWxzdGFja1xBZG1pblxWMlxHUEJNZXRhZGF0YeoCFU1ldGFsc3RhY2s6OkFkbWluOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_filesystem, file_metalstack_api_v2_predefined_rules]); +export const file_metalstack_admin_v2_filesystem = /*@__PURE__*/ fileDesc("CiRtZXRhbHN0YWNrL2FkbWluL3YyL2ZpbGVzeXN0ZW0ucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiYAoeRmlsZXN5c3RlbVNlcnZpY2VDcmVhdGVSZXF1ZXN0Ej4KEWZpbGVzeXN0ZW1fbGF5b3V0GAEgASgLMiMubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dCJhCh9GaWxlc3lzdGVtU2VydmljZUNyZWF0ZVJlc3BvbnNlEj4KEWZpbGVzeXN0ZW1fbGF5b3V0GAEgASgLMiMubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dCKPBAoeRmlsZXN5c3RlbVNlcnZpY2VVcGRhdGVSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARI6Cgt1cGRhdGVfbWV0YRgCIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZU1ldGFCBrpIA8gBARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjIKC2ZpbGVzeXN0ZW1zGAUgAygLMh0ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbRImCgVkaXNrcxgGIAMoCzIXLm1ldGFsc3RhY2suYXBpLnYyLkRpc2sSJQoEcmFpZBgHIAMoCzIXLm1ldGFsc3RhY2suYXBpLnYyLlJhaWQSNQoNdm9sdW1lX2dyb3VwcxgIIAMoCzIeLm1ldGFsc3RhY2suYXBpLnYyLlZvbHVtZUdyb3VwEjkKD2xvZ2ljYWxfdm9sdW1lcxgJIAMoCzIgLm1ldGFsc3RhY2suYXBpLnYyLkxvZ2ljYWxWb2x1bWUSQwoLY29uc3RyYWludHMYCiABKAsyLi5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0Q29uc3RyYWludHNCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uImEKH0ZpbGVzeXN0ZW1TZXJ2aWNlVXBkYXRlUmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0IjkKHkZpbGVzeXN0ZW1TZXJ2aWNlRGVsZXRlUmVxdWVzdBIXCgJpZBgBIAEoCUILukgIcgbAs66xAgEiYQofRmlsZXN5c3RlbVNlcnZpY2VEZWxldGVSZXNwb25zZRI+ChFmaWxlc3lzdGVtX2xheW91dBgBIAEoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQizwEKHUZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXF1ZXN0EkAKDnNpemVfYW5kX2ltYWdlGAEgASgLMiYubWV0YWxzdGFjay5hZG1pbi52Mi5NYXRjaEltYWdlQW5kU2l6ZUgAElwKHG1hY2hpbmVfYW5kX2ZpbGVzeXN0ZW1sYXlvdXQYAiABKAsyNC5tZXRhbHN0YWNrLmFkbWluLnYyLk1hdGNoTWFjaGluZUFuZEZpbGVzeXN0ZW1MYXlvdXRIAEIOCgVtYXRjaBIFukgCCAEiSgoRTWF0Y2hJbWFnZUFuZFNpemUSGQoEc2l6ZRgBIAEoCUILukgIcgbAs66xAgESGgoFaW1hZ2UYAiABKAlCC7pICHIGwLOusQIBImQKH01hdGNoTWFjaGluZUFuZEZpbGVzeXN0ZW1MYXlvdXQSGQoHbWFjaGluZRgBIAEoCUIIukgFcgOwAQESJgoRZmlsZXN5c3RlbV9sYXlvdXQYAiABKAlCC7pICHIGwLOusQIBImAKHkZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXNwb25zZRI+ChFmaWxlc3lzdGVtX2xheW91dBgBIAEoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQykQQKEUZpbGVzeXN0ZW1TZXJ2aWNlEn4KBkNyZWF0ZRIzLm1ldGFsc3RhY2suYWRtaW4udjIuRmlsZXN5c3RlbVNlcnZpY2VDcmVhdGVSZXF1ZXN0GjQubWV0YWxzdGFjay5hZG1pbi52Mi5GaWxlc3lzdGVtU2VydmljZUNyZWF0ZVJlc3BvbnNlIgnS8xgBAeDzGAESfgoGVXBkYXRlEjMubWV0YWxzdGFjay5hZG1pbi52Mi5GaWxlc3lzdGVtU2VydmljZVVwZGF0ZVJlcXVlc3QaNC5tZXRhbHN0YWNrLmFkbWluLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlVXBkYXRlUmVzcG9uc2UiCdLzGAEB4PMYARJ+CgZEZWxldGUSMy5tZXRhbHN0YWNrLmFkbWluLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlRGVsZXRlUmVxdWVzdBo0Lm1ldGFsc3RhY2suYWRtaW4udjIuRmlsZXN5c3RlbVNlcnZpY2VEZWxldGVSZXNwb25zZSIJ0vMYAQHg8xgBEnwKBU1hdGNoEjIubWV0YWxzdGFjay5hZG1pbi52Mi5GaWxlc3lzdGVtU2VydmljZU1hdGNoUmVxdWVzdBozLm1ldGFsc3RhY2suYWRtaW4udjIuRmlsZXN5c3RlbVNlcnZpY2VNYXRjaFJlc3BvbnNlIgrS8xgCAQLg8xgCQtMBChdjb20ubWV0YWxzdGFjay5hZG1pbi52MkIPRmlsZXN5c3RlbVByb3RvUAFaOWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYWRtaW4vdjI7YWRtaW52MqICA01BWKoCE01ldGFsc3RhY2suQWRtaW4uVjLKAhNNZXRhbHN0YWNrXEFkbWluXFYy4gIfTWV0YWxzdGFja1xBZG1pblxWMlxHUEJNZXRhZGF0YeoCFU1ldGFsc3RhY2s6OkFkbWluOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_filesystem, file_metalstack_api_v2_predefined_rules]); /** * Describes the message metalstack.admin.v2.FilesystemServiceCreateRequest. * Use `create(FilesystemServiceCreateRequestSchema)` to create a new message. @@ -40,6 +40,26 @@ export const FilesystemServiceDeleteRequestSchema = /*@__PURE__*/ messageDesc(fi * Use `create(FilesystemServiceDeleteResponseSchema)` to create a new message. */ export const FilesystemServiceDeleteResponseSchema = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_filesystem, 5); +/** + * Describes the message metalstack.admin.v2.FilesystemServiceMatchRequest. + * Use `create(FilesystemServiceMatchRequestSchema)` to create a new message. + */ +export const FilesystemServiceMatchRequestSchema = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_filesystem, 6); +/** + * Describes the message metalstack.admin.v2.MatchImageAndSize. + * Use `create(MatchImageAndSizeSchema)` to create a new message. + */ +export const MatchImageAndSizeSchema = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_filesystem, 7); +/** + * Describes the message metalstack.admin.v2.MatchMachineAndFilesystemLayout. + * Use `create(MatchMachineAndFilesystemLayoutSchema)` to create a new message. + */ +export const MatchMachineAndFilesystemLayoutSchema = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_filesystem, 8); +/** + * Describes the message metalstack.admin.v2.FilesystemServiceMatchResponse. + * Use `create(FilesystemServiceMatchResponseSchema)` to create a new message. + */ +export const FilesystemServiceMatchResponseSchema = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_filesystem, 9); /** * FilesystemService provides filesystem management operations. * diff --git a/js/metalstack/admin/v2/filesystem_pb.ts b/js/metalstack/admin/v2/filesystem_pb.ts index bdb834b8..dafaa808 100644 --- a/js/metalstack/admin/v2/filesystem_pb.ts +++ b/js/metalstack/admin/v2/filesystem_pb.ts @@ -16,7 +16,7 @@ import type { Message } from "@bufbuild/protobuf"; * Describes the file metalstack/admin/v2/filesystem.proto. */ export const file_metalstack_admin_v2_filesystem: GenFile = /*@__PURE__*/ - fileDesc("CiRtZXRhbHN0YWNrL2FkbWluL3YyL2ZpbGVzeXN0ZW0ucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiYAoeRmlsZXN5c3RlbVNlcnZpY2VDcmVhdGVSZXF1ZXN0Ej4KEWZpbGVzeXN0ZW1fbGF5b3V0GAEgASgLMiMubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dCJhCh9GaWxlc3lzdGVtU2VydmljZUNyZWF0ZVJlc3BvbnNlEj4KEWZpbGVzeXN0ZW1fbGF5b3V0GAEgASgLMiMubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dCKPBAoeRmlsZXN5c3RlbVNlcnZpY2VVcGRhdGVSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARI6Cgt1cGRhdGVfbWV0YRgCIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZU1ldGFCBrpIA8gBARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjIKC2ZpbGVzeXN0ZW1zGAUgAygLMh0ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbRImCgVkaXNrcxgGIAMoCzIXLm1ldGFsc3RhY2suYXBpLnYyLkRpc2sSJQoEcmFpZBgHIAMoCzIXLm1ldGFsc3RhY2suYXBpLnYyLlJhaWQSNQoNdm9sdW1lX2dyb3VwcxgIIAMoCzIeLm1ldGFsc3RhY2suYXBpLnYyLlZvbHVtZUdyb3VwEjkKD2xvZ2ljYWxfdm9sdW1lcxgJIAMoCzIgLm1ldGFsc3RhY2suYXBpLnYyLkxvZ2ljYWxWb2x1bWUSQwoLY29uc3RyYWludHMYCiABKAsyLi5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0Q29uc3RyYWludHNCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uImEKH0ZpbGVzeXN0ZW1TZXJ2aWNlVXBkYXRlUmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0IjkKHkZpbGVzeXN0ZW1TZXJ2aWNlRGVsZXRlUmVxdWVzdBIXCgJpZBgBIAEoCUILukgIcgbAs66xAgEiYQofRmlsZXN5c3RlbVNlcnZpY2VEZWxldGVSZXNwb25zZRI+ChFmaWxlc3lzdGVtX2xheW91dBgBIAEoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQykwMKEUZpbGVzeXN0ZW1TZXJ2aWNlEn4KBkNyZWF0ZRIzLm1ldGFsc3RhY2suYWRtaW4udjIuRmlsZXN5c3RlbVNlcnZpY2VDcmVhdGVSZXF1ZXN0GjQubWV0YWxzdGFjay5hZG1pbi52Mi5GaWxlc3lzdGVtU2VydmljZUNyZWF0ZVJlc3BvbnNlIgnS8xgBAeDzGAESfgoGVXBkYXRlEjMubWV0YWxzdGFjay5hZG1pbi52Mi5GaWxlc3lzdGVtU2VydmljZVVwZGF0ZVJlcXVlc3QaNC5tZXRhbHN0YWNrLmFkbWluLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlVXBkYXRlUmVzcG9uc2UiCdLzGAEB4PMYARJ+CgZEZWxldGUSMy5tZXRhbHN0YWNrLmFkbWluLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlRGVsZXRlUmVxdWVzdBo0Lm1ldGFsc3RhY2suYWRtaW4udjIuRmlsZXN5c3RlbVNlcnZpY2VEZWxldGVSZXNwb25zZSIJ0vMYAQHg8xgBQtMBChdjb20ubWV0YWxzdGFjay5hZG1pbi52MkIPRmlsZXN5c3RlbVByb3RvUAFaOWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYWRtaW4vdjI7YWRtaW52MqICA01BWKoCE01ldGFsc3RhY2suQWRtaW4uVjLKAhNNZXRhbHN0YWNrXEFkbWluXFYy4gIfTWV0YWxzdGFja1xBZG1pblxWMlxHUEJNZXRhZGF0YeoCFU1ldGFsc3RhY2s6OkFkbWluOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_filesystem, file_metalstack_api_v2_predefined_rules]); + fileDesc("CiRtZXRhbHN0YWNrL2FkbWluL3YyL2ZpbGVzeXN0ZW0ucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiYAoeRmlsZXN5c3RlbVNlcnZpY2VDcmVhdGVSZXF1ZXN0Ej4KEWZpbGVzeXN0ZW1fbGF5b3V0GAEgASgLMiMubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dCJhCh9GaWxlc3lzdGVtU2VydmljZUNyZWF0ZVJlc3BvbnNlEj4KEWZpbGVzeXN0ZW1fbGF5b3V0GAEgASgLMiMubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dCKPBAoeRmlsZXN5c3RlbVNlcnZpY2VVcGRhdGVSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARI6Cgt1cGRhdGVfbWV0YRgCIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZU1ldGFCBrpIA8gBARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjIKC2ZpbGVzeXN0ZW1zGAUgAygLMh0ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbRImCgVkaXNrcxgGIAMoCzIXLm1ldGFsc3RhY2suYXBpLnYyLkRpc2sSJQoEcmFpZBgHIAMoCzIXLm1ldGFsc3RhY2suYXBpLnYyLlJhaWQSNQoNdm9sdW1lX2dyb3VwcxgIIAMoCzIeLm1ldGFsc3RhY2suYXBpLnYyLlZvbHVtZUdyb3VwEjkKD2xvZ2ljYWxfdm9sdW1lcxgJIAMoCzIgLm1ldGFsc3RhY2suYXBpLnYyLkxvZ2ljYWxWb2x1bWUSQwoLY29uc3RyYWludHMYCiABKAsyLi5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0Q29uc3RyYWludHNCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uImEKH0ZpbGVzeXN0ZW1TZXJ2aWNlVXBkYXRlUmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0IjkKHkZpbGVzeXN0ZW1TZXJ2aWNlRGVsZXRlUmVxdWVzdBIXCgJpZBgBIAEoCUILukgIcgbAs66xAgEiYQofRmlsZXN5c3RlbVNlcnZpY2VEZWxldGVSZXNwb25zZRI+ChFmaWxlc3lzdGVtX2xheW91dBgBIAEoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQizwEKHUZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXF1ZXN0EkAKDnNpemVfYW5kX2ltYWdlGAEgASgLMiYubWV0YWxzdGFjay5hZG1pbi52Mi5NYXRjaEltYWdlQW5kU2l6ZUgAElwKHG1hY2hpbmVfYW5kX2ZpbGVzeXN0ZW1sYXlvdXQYAiABKAsyNC5tZXRhbHN0YWNrLmFkbWluLnYyLk1hdGNoTWFjaGluZUFuZEZpbGVzeXN0ZW1MYXlvdXRIAEIOCgVtYXRjaBIFukgCCAEiSgoRTWF0Y2hJbWFnZUFuZFNpemUSGQoEc2l6ZRgBIAEoCUILukgIcgbAs66xAgESGgoFaW1hZ2UYAiABKAlCC7pICHIGwLOusQIBImQKH01hdGNoTWFjaGluZUFuZEZpbGVzeXN0ZW1MYXlvdXQSGQoHbWFjaGluZRgBIAEoCUIIukgFcgOwAQESJgoRZmlsZXN5c3RlbV9sYXlvdXQYAiABKAlCC7pICHIGwLOusQIBImAKHkZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXNwb25zZRI+ChFmaWxlc3lzdGVtX2xheW91dBgBIAEoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQykQQKEUZpbGVzeXN0ZW1TZXJ2aWNlEn4KBkNyZWF0ZRIzLm1ldGFsc3RhY2suYWRtaW4udjIuRmlsZXN5c3RlbVNlcnZpY2VDcmVhdGVSZXF1ZXN0GjQubWV0YWxzdGFjay5hZG1pbi52Mi5GaWxlc3lzdGVtU2VydmljZUNyZWF0ZVJlc3BvbnNlIgnS8xgBAeDzGAESfgoGVXBkYXRlEjMubWV0YWxzdGFjay5hZG1pbi52Mi5GaWxlc3lzdGVtU2VydmljZVVwZGF0ZVJlcXVlc3QaNC5tZXRhbHN0YWNrLmFkbWluLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlVXBkYXRlUmVzcG9uc2UiCdLzGAEB4PMYARJ+CgZEZWxldGUSMy5tZXRhbHN0YWNrLmFkbWluLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlRGVsZXRlUmVxdWVzdBo0Lm1ldGFsc3RhY2suYWRtaW4udjIuRmlsZXN5c3RlbVNlcnZpY2VEZWxldGVSZXNwb25zZSIJ0vMYAQHg8xgBEnwKBU1hdGNoEjIubWV0YWxzdGFjay5hZG1pbi52Mi5GaWxlc3lzdGVtU2VydmljZU1hdGNoUmVxdWVzdBozLm1ldGFsc3RhY2suYWRtaW4udjIuRmlsZXN5c3RlbVNlcnZpY2VNYXRjaFJlc3BvbnNlIgrS8xgCAQLg8xgCQtMBChdjb20ubWV0YWxzdGFjay5hZG1pbi52MkIPRmlsZXN5c3RlbVByb3RvUAFaOWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYWRtaW4vdjI7YWRtaW52MqICA01BWKoCE01ldGFsc3RhY2suQWRtaW4uVjLKAhNNZXRhbHN0YWNrXEFkbWluXFYy4gIfTWV0YWxzdGFja1xBZG1pblxWMlxHUEJNZXRhZGF0YeoCFU1ldGFsc3RhY2s6OkFkbWluOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_filesystem, file_metalstack_api_v2_predefined_rules]); /** * FilesystemServiceCreateRequest is the request payload for creating a filesystem. @@ -207,6 +207,121 @@ export type FilesystemServiceDeleteResponse = Message<"metalstack.admin.v2.Files export const FilesystemServiceDeleteResponseSchema: GenMessage = /*@__PURE__*/ messageDesc(file_metalstack_admin_v2_filesystem, 5); +/** + * FilesystemServiceMatchRequest + * + * @generated from message metalstack.admin.v2.FilesystemServiceMatchRequest + */ +export type FilesystemServiceMatchRequest = Message<"metalstack.admin.v2.FilesystemServiceMatchRequest"> & { + /** + * Match either size and image to a filesystemlayout + * or if a machine matches to a filesystemlayout + * + * @generated from oneof metalstack.admin.v2.FilesystemServiceMatchRequest.match + */ + match: { + /** + * SizeAndImage + * + * @generated from field: metalstack.admin.v2.MatchImageAndSize size_and_image = 1; + */ + value: MatchImageAndSize; + case: "sizeAndImage"; + } | { + /** + * MachineAndFilesystemlayout + * + * @generated from field: metalstack.admin.v2.MatchMachineAndFilesystemLayout machine_and_filesystemlayout = 2; + */ + value: MatchMachineAndFilesystemLayout; + case: "machineAndFilesystemlayout"; + } | { case: undefined; value?: undefined }; +}; + +/** + * Describes the message metalstack.admin.v2.FilesystemServiceMatchRequest. + * Use `create(FilesystemServiceMatchRequestSchema)` to create a new message. + */ +export const FilesystemServiceMatchRequestSchema: GenMessage = /*@__PURE__*/ + messageDesc(file_metalstack_admin_v2_filesystem, 6); + +/** + * MatchImageAndSize + * + * @generated from message metalstack.admin.v2.MatchImageAndSize + */ +export type MatchImageAndSize = Message<"metalstack.admin.v2.MatchImageAndSize"> & { + /** + * Size, machine size to try + * + * @generated from field: string size = 1; + */ + size: string; + + /** + * Image machine image to try + * + * @generated from field: string image = 2; + */ + image: string; +}; + +/** + * Describes the message metalstack.admin.v2.MatchImageAndSize. + * Use `create(MatchImageAndSizeSchema)` to create a new message. + */ +export const MatchImageAndSizeSchema: GenMessage = /*@__PURE__*/ + messageDesc(file_metalstack_admin_v2_filesystem, 7); + +/** + * MatchMachineAndFilesystemLayout + * + * @generated from message metalstack.admin.v2.MatchMachineAndFilesystemLayout + */ +export type MatchMachineAndFilesystemLayout = Message<"metalstack.admin.v2.MatchMachineAndFilesystemLayout"> & { + /** + * Machine to check + * + * @generated from field: string machine = 1; + */ + machine: string; + + /** + * FilesystemLayout to check + * + * @generated from field: string filesystem_layout = 2; + */ + filesystemLayout: string; +}; + +/** + * Describes the message metalstack.admin.v2.MatchMachineAndFilesystemLayout. + * Use `create(MatchMachineAndFilesystemLayoutSchema)` to create a new message. + */ +export const MatchMachineAndFilesystemLayoutSchema: GenMessage = /*@__PURE__*/ + messageDesc(file_metalstack_admin_v2_filesystem, 8); + +/** + * FilesystemServiceMatchResponse + * + * @generated from message metalstack.admin.v2.FilesystemServiceMatchResponse + */ +export type FilesystemServiceMatchResponse = Message<"metalstack.admin.v2.FilesystemServiceMatchResponse"> & { + /** + * FilesystemLayout the filesystemlayout + * + * @generated from field: metalstack.api.v2.FilesystemLayout filesystem_layout = 1; + */ + filesystemLayout?: FilesystemLayout | undefined; +}; + +/** + * Describes the message metalstack.admin.v2.FilesystemServiceMatchResponse. + * Use `create(FilesystemServiceMatchResponseSchema)` to create a new message. + */ +export const FilesystemServiceMatchResponseSchema: GenMessage = /*@__PURE__*/ + messageDesc(file_metalstack_admin_v2_filesystem, 9); + /** * FilesystemService provides filesystem management operations. * @@ -243,6 +358,16 @@ export const FilesystemService: GenService<{ input: typeof FilesystemServiceDeleteRequestSchema; output: typeof FilesystemServiceDeleteResponseSchema; }, + /** + * Matches a filesystem to a size and image or machine. + * + * @generated from rpc metalstack.admin.v2.FilesystemService.Match + */ + match: { + methodKind: "unary"; + input: typeof FilesystemServiceMatchRequestSchema; + output: typeof FilesystemServiceMatchResponseSchema; + }, }> = /*@__PURE__*/ serviceDesc(file_metalstack_admin_v2_filesystem, 0); diff --git a/js/metalstack/api/v2/filesystem_pb.d.ts b/js/metalstack/api/v2/filesystem_pb.d.ts index 28834311..dab84a83 100644 --- a/js/metalstack/api/v2/filesystem_pb.d.ts +++ b/js/metalstack/api/v2/filesystem_pb.d.ts @@ -77,110 +77,6 @@ export type FilesystemServiceListResponse = Message<"metalstack.api.v2.Filesyste * Use `create(FilesystemServiceListResponseSchema)` to create a new message. */ export declare const FilesystemServiceListResponseSchema: GenMessage; -/** - * FilesystemServiceMatchRequest - * - * @generated from message metalstack.api.v2.FilesystemServiceMatchRequest - */ -export type FilesystemServiceMatchRequest = Message<"metalstack.api.v2.FilesystemServiceMatchRequest"> & { - /** - * Match either size and image to a filesystemlayout - * or if a machine matches to a filesystemlayout - * - * @generated from oneof metalstack.api.v2.FilesystemServiceMatchRequest.match - */ - match: { - /** - * SizeAndImage - * - * @generated from field: metalstack.api.v2.MatchImageAndSize size_and_image = 1; - */ - value: MatchImageAndSize; - case: "sizeAndImage"; - } | { - /** - * MachineAndFilesystemlayout - * - * @generated from field: metalstack.api.v2.MatchMachineAndFilesystemLayout machine_and_filesystemlayout = 2; - */ - value: MatchMachineAndFilesystemLayout; - case: "machineAndFilesystemlayout"; - } | { - case: undefined; - value?: undefined; - }; -}; -/** - * Describes the message metalstack.api.v2.FilesystemServiceMatchRequest. - * Use `create(FilesystemServiceMatchRequestSchema)` to create a new message. - */ -export declare const FilesystemServiceMatchRequestSchema: GenMessage; -/** - * MatchImageAndSize - * - * @generated from message metalstack.api.v2.MatchImageAndSize - */ -export type MatchImageAndSize = Message<"metalstack.api.v2.MatchImageAndSize"> & { - /** - * Size, machine size to try - * - * @generated from field: string size = 1; - */ - size: string; - /** - * Image machine image to try - * - * @generated from field: string image = 2; - */ - image: string; -}; -/** - * Describes the message metalstack.api.v2.MatchImageAndSize. - * Use `create(MatchImageAndSizeSchema)` to create a new message. - */ -export declare const MatchImageAndSizeSchema: GenMessage; -/** - * MatchMachineAndFilesystemLayout - * - * @generated from message metalstack.api.v2.MatchMachineAndFilesystemLayout - */ -export type MatchMachineAndFilesystemLayout = Message<"metalstack.api.v2.MatchMachineAndFilesystemLayout"> & { - /** - * Machine to check - * - * @generated from field: string machine = 1; - */ - machine: string; - /** - * FilesystemLayout to check - * - * @generated from field: string filesystem_layout = 2; - */ - filesystemLayout: string; -}; -/** - * Describes the message metalstack.api.v2.MatchMachineAndFilesystemLayout. - * Use `create(MatchMachineAndFilesystemLayoutSchema)` to create a new message. - */ -export declare const MatchMachineAndFilesystemLayoutSchema: GenMessage; -/** - * FilesystemServiceMatchResponse - * - * @generated from message metalstack.api.v2.FilesystemServiceMatchResponse - */ -export type FilesystemServiceMatchResponse = Message<"metalstack.api.v2.FilesystemServiceMatchResponse"> & { - /** - * FilesystemLayout the filesystemlayout - * - * @generated from field: metalstack.api.v2.FilesystemLayout filesystem_layout = 1; - */ - filesystemLayout?: FilesystemLayout | undefined; -}; -/** - * Describes the message metalstack.api.v2.FilesystemServiceMatchResponse. - * Use `create(FilesystemServiceMatchResponseSchema)` to create a new message. - */ -export declare const FilesystemServiceMatchResponseSchema: GenMessage; /** * FilesystemLayout * @@ -691,14 +587,4 @@ export declare const FilesystemService: GenService<{ input: typeof FilesystemServiceListRequestSchema; output: typeof FilesystemServiceListResponseSchema; }; - /** - * Matches a filesystem to a size and image or machine. - * - * @generated from rpc metalstack.api.v2.FilesystemService.Match - */ - match: { - methodKind: "unary"; - input: typeof FilesystemServiceMatchRequestSchema; - output: typeof FilesystemServiceMatchResponseSchema; - }; }>; diff --git a/js/metalstack/api/v2/filesystem_pb.js b/js/metalstack/api/v2/filesystem_pb.js index c3103e73..8209823c 100644 --- a/js/metalstack/api/v2/filesystem_pb.js +++ b/js/metalstack/api/v2/filesystem_pb.js @@ -8,7 +8,7 @@ import { file_metalstack_api_v2_predefined_rules } from "./predefined_rules_pb"; /** * Describes the file metalstack/api/v2/filesystem.proto. */ -export const file_metalstack_api_v2_filesystem = /*@__PURE__*/ fileDesc("CiJtZXRhbHN0YWNrL2FwaS92Mi9maWxlc3lzdGVtLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiI2ChtGaWxlc3lzdGVtU2VydmljZUdldFJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIkMKHEZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQFCBQoDX2lkIl4KHEZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0ImAKHUZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlc3BvbnNlEj8KEmZpbGVzeXN0ZW1fbGF5b3V0cxgBIAMoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQiywEKHUZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXF1ZXN0Ej4KDnNpemVfYW5kX2ltYWdlGAEgASgLMiQubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hJbWFnZUFuZFNpemVIABJaChxtYWNoaW5lX2FuZF9maWxlc3lzdGVtbGF5b3V0GAIgASgLMjIubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hNYWNoaW5lQW5kRmlsZXN5c3RlbUxheW91dEgAQg4KBW1hdGNoEgW6SAIIASJKChFNYXRjaEltYWdlQW5kU2l6ZRIZCgRzaXplGAEgASgJQgu6SAhyBsCzrrECARIaCgVpbWFnZRgCIAEoCUILukgIcgbAs66xAgEiZAofTWF0Y2hNYWNoaW5lQW5kRmlsZXN5c3RlbUxheW91dBIZCgdtYWNoaW5lGAEgASgJQgi6SAVyA7ABARImChFmaWxlc3lzdGVtX2xheW91dBgCIAEoCUILukgIcgbAs66xAgEiYAoeRmlsZXN5c3RlbVNlcnZpY2VNYXRjaFJlc3BvbnNlEj4KEWZpbGVzeXN0ZW1fbGF5b3V0GAEgASgLMiMubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dCLsAwoQRmlsZXN5c3RlbUxheW91dBIXCgJpZBgBIAEoCUILukgIcgbAs66xAgESJQoEbWV0YRgCIAEoCzIXLm1ldGFsc3RhY2suYXBpLnYyLk1ldGESHgoEbmFtZRgDIAEoCUILukgIcgbAs66xAgFIAIgBARIlCgtkZXNjcmlwdGlvbhgEIAEoCUILukgIcgbIs66xAgFIAYgBARIyCgtmaWxlc3lzdGVtcxgFIAMoCzIdLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW0SJgoFZGlza3MYBiADKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5EaXNrEiUKBHJhaWQYByADKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5SYWlkEjUKDXZvbHVtZV9ncm91cHMYCCADKAsyHi5tZXRhbHN0YWNrLmFwaS52Mi5Wb2x1bWVHcm91cBI5Cg9sb2dpY2FsX3ZvbHVtZXMYCSADKAsyIC5tZXRhbHN0YWNrLmFwaS52Mi5Mb2dpY2FsVm9sdW1lEkMKC2NvbnN0cmFpbnRzGAogASgLMi4ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dENvbnN0cmFpbnRzQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbiKnAQobRmlsZXN5c3RlbUxheW91dENvbnN0cmFpbnRzEg0KBXNpemVzGAEgAygJEkoKBmltYWdlcxgCIAMoCzI6Lm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXRDb25zdHJhaW50cy5JbWFnZXNFbnRyeRotCgtJbWFnZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIuwCCgpGaWxlc3lzdGVtEhsKBmRldmljZRgBIAEoCUILukgIcgbAs66xAgESNgoGZm9ybWF0GAIgASgOMhkubWV0YWxzdGFjay5hcGkudjIuRm9ybWF0Qgu6SAjIAQGCAQIQARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEh0KBHBhdGgYBSABKAlCCrpIB3IFEAEYgCBIAogBARIeCgVsYWJlbBgGIAEoCUIKukgHcgUQAhiAAUgDiAEBEioKDW1vdW50X29wdGlvbnMYByADKAlCE7pIEJIBDRAgGAEiB3IFEAEYgAESKwoOY3JlYXRlX29wdGlvbnMYCCADKAlCE7pIEJIBDRAgGAEiB3IFEAEYgAFCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uQgcKBV9wYXRoQggKBl9sYWJlbCJYCgREaXNrEhoKBmRldmljZRgBIAEoCUIKukgHcgUQAhiAARI0CgpwYXJ0aXRpb25zGAIgAygLMiAubWV0YWxzdGFjay5hcGkudjIuRGlza1BhcnRpdGlvbiKiAQoEUmFpZBISCgphcnJheV9uYW1lGAEgASgJEg8KB2RldmljZXMYAiADKAkSOAoFbGV2ZWwYAyABKA4yHC5tZXRhbHN0YWNrLmFwaS52Mi5SYWlkTGV2ZWxCC7pICMgBAYIBAhABEisKDmNyZWF0ZV9vcHRpb25zGAQgAygJQhO6SBCSAQ0QIBgBIgdyBRABGIABEg4KBnNwYXJlcxgFIAEoBSKYAQoNRGlza1BhcnRpdGlvbhIOCgZudW1iZXIYASABKA0SEgoFbGFiZWwYAiABKAlIAIgBARIMCgRzaXplGAMgASgEEj4KCGdwdF90eXBlGAQgASgOMhoubWV0YWxzdGFjay5hcGkudjIuR1BUVHlwZUILukgIyAEBggECEAFIAYgBAUIICgZfbGFiZWxCCwoJX2dwdF90eXBlIkcKC1ZvbHVtZUdyb3VwEhkKBG5hbWUYASABKAlCC7pICHIGwLOusQIBEg8KB2RldmljZXMYAiADKAkSDAoEdGFncxgDIAMoCSKSAQoNTG9naWNhbFZvbHVtZRIZCgRuYW1lGAEgASgJQgu6SAhyBsCzrrECARIgCgx2b2x1bWVfZ3JvdXAYAiABKAlCCrpIB3IFEAIYgAESDAoEc2l6ZRgDIAEoBBI2Cghsdm1fdHlwZRgEIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLkxWTVR5cGVCCLpIBYIBAhABKoYBCgdMVk1UeXBlEhgKFExWTV9UWVBFX1VOU1BFQ0lGSUVEEAASHwoPTFZNX1RZUEVfTElORUFSEAEaCoKyGQZsaW5lYXISIQoQTFZNX1RZUEVfU1RSSVBFRBACGguCshkHc3RyaXBlZBIdCg5MVk1fVFlQRV9SQUlEMRADGgmCshkFcmFpZDEqxAEKBkZvcm1hdBIWChJGT1JNQVRfVU5TUEVDSUZJRUQQABIZCgtGT1JNQVRfVkZBVBABGgiCshkEdmZhdBIZCgtGT1JNQVRfRVhUMxACGgiCshkEZXh0MxIZCgtGT1JNQVRfRVhUNBADGgiCshkEZXh0NBIZCgtGT1JNQVRfU1dBUBAEGgiCshkEc3dhcBIbCgxGT1JNQVRfVE1QRlMQBRoJgrIZBXRtcGZzEhkKC0ZPUk1BVF9OT05FEAYaCIKyGQRub25lKqMBCgdHUFRUeXBlEhgKFEdQVF9UWVBFX1VOU1BFQ0lGSUVEEAASGwoNR1BUX1RZUEVfQk9PVBABGgiCshkEZWYwMBIcCg5HUFRfVFlQRV9MSU5VWBACGgiCshkEODMwMBIhChNHUFRfVFlQRV9MSU5VWF9SQUlEEAMaCIKyGQRmZDAwEiAKEkdQVF9UWVBFX0xJTlVYX0xWTRAEGgiCshkEOGUwMCpLCglSYWlkTGV2ZWwSGgoWUkFJRF9MRVZFTF9VTlNQRUNJRklFRBAAEhAKDFJBSURfTEVWRUxfMBABEhAKDFJBSURfTEVWRUxfMRACMvICChFGaWxlc3lzdGVtU2VydmljZRJwCgNHZXQSLi5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZUdldFJlcXVlc3QaLy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZUdldFJlc3BvbnNlIgjY8xgC4PMYAhJzCgRMaXN0Ei8ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VMaXN0UmVxdWVzdBowLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlc3BvbnNlIgjY8xgC4PMYAhJ2CgVNYXRjaBIwLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXF1ZXN0GjEubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VNYXRjaFJlc3BvbnNlIgjY8xgC4PMYAkLFAQoVY29tLm1ldGFsc3RhY2suYXBpLnYyQg9GaWxlc3lzdGVtUHJvdG9QAVo1Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9hcGkvdjI7YXBpdjKiAgNNQViqAhFNZXRhbHN0YWNrLkFwaS5WMsoCEU1ldGFsc3RhY2tcQXBpXFYy4gIdTWV0YWxzdGFja1xBcGlcVjJcR1BCTWV0YWRhdGHqAhNNZXRhbHN0YWNrOjpBcGk6OlYyYgZwcm90bzM", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules]); +export const file_metalstack_api_v2_filesystem = /*@__PURE__*/ fileDesc("CiJtZXRhbHN0YWNrL2FwaS92Mi9maWxlc3lzdGVtLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiI2ChtGaWxlc3lzdGVtU2VydmljZUdldFJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIkMKHEZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQFCBQoDX2lkIl4KHEZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0ImAKHUZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlc3BvbnNlEj8KEmZpbGVzeXN0ZW1fbGF5b3V0cxgBIAMoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQi7AMKEEZpbGVzeXN0ZW1MYXlvdXQSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEiUKBG1ldGEYAiABKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5NZXRhEh4KBG5hbWUYAyABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSAGIAQESMgoLZmlsZXN5c3RlbXMYBSADKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtEiYKBWRpc2tzGAYgAygLMhcubWV0YWxzdGFjay5hcGkudjIuRGlzaxIlCgRyYWlkGAcgAygLMhcubWV0YWxzdGFjay5hcGkudjIuUmFpZBI1Cg12b2x1bWVfZ3JvdXBzGAggAygLMh4ubWV0YWxzdGFjay5hcGkudjIuVm9sdW1lR3JvdXASOQoPbG9naWNhbF92b2x1bWVzGAkgAygLMiAubWV0YWxzdGFjay5hcGkudjIuTG9naWNhbFZvbHVtZRJDCgtjb25zdHJhaW50cxgKIAEoCzIuLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXRDb25zdHJhaW50c0IHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb24ipwEKG0ZpbGVzeXN0ZW1MYXlvdXRDb25zdHJhaW50cxINCgVzaXplcxgBIAMoCRJKCgZpbWFnZXMYAiADKAsyOi5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0Q29uc3RyYWludHMuSW1hZ2VzRW50cnkaLQoLSW1hZ2VzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASLsAgoKRmlsZXN5c3RlbRIbCgZkZXZpY2UYASABKAlCC7pICHIGwLOusQIBEjYKBmZvcm1hdBgCIAEoDjIZLm1ldGFsc3RhY2suYXBpLnYyLkZvcm1hdEILukgIyAEBggECEAESHgoEbmFtZRgDIAEoCUILukgIcgbAs66xAgFIAIgBARIlCgtkZXNjcmlwdGlvbhgEIAEoCUILukgIcgbIs66xAgFIAYgBARIdCgRwYXRoGAUgASgJQgq6SAdyBRABGIAgSAKIAQESHgoFbGFiZWwYBiABKAlCCrpIB3IFEAIYgAFIA4gBARIqCg1tb3VudF9vcHRpb25zGAcgAygJQhO6SBCSAQ0QIBgBIgdyBRABGIABEisKDmNyZWF0ZV9vcHRpb25zGAggAygJQhO6SBCSAQ0QIBgBIgdyBRABGIABQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIHCgVfcGF0aEIICgZfbGFiZWwiWAoERGlzaxIaCgZkZXZpY2UYASABKAlCCrpIB3IFEAIYgAESNAoKcGFydGl0aW9ucxgCIAMoCzIgLm1ldGFsc3RhY2suYXBpLnYyLkRpc2tQYXJ0aXRpb24iogEKBFJhaWQSEgoKYXJyYXlfbmFtZRgBIAEoCRIPCgdkZXZpY2VzGAIgAygJEjgKBWxldmVsGAMgASgOMhwubWV0YWxzdGFjay5hcGkudjIuUmFpZExldmVsQgu6SAjIAQGCAQIQARIrCg5jcmVhdGVfb3B0aW9ucxgEIAMoCUITukgQkgENECAYASIHcgUQARiAARIOCgZzcGFyZXMYBSABKAUimAEKDURpc2tQYXJ0aXRpb24SDgoGbnVtYmVyGAEgASgNEhIKBWxhYmVsGAIgASgJSACIAQESDAoEc2l6ZRgDIAEoBBI+CghncHRfdHlwZRgEIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLkdQVFR5cGVCC7pICMgBAYIBAhABSAGIAQFCCAoGX2xhYmVsQgsKCV9ncHRfdHlwZSJHCgtWb2x1bWVHcm91cBIZCgRuYW1lGAEgASgJQgu6SAhyBsCzrrECARIPCgdkZXZpY2VzGAIgAygJEgwKBHRhZ3MYAyADKAkikgEKDUxvZ2ljYWxWb2x1bWUSGQoEbmFtZRgBIAEoCUILukgIcgbAs66xAgESIAoMdm9sdW1lX2dyb3VwGAIgASgJQgq6SAdyBRACGIABEgwKBHNpemUYAyABKAQSNgoIbHZtX3R5cGUYBCABKA4yGi5tZXRhbHN0YWNrLmFwaS52Mi5MVk1UeXBlQgi6SAWCAQIQASqGAQoHTFZNVHlwZRIYChRMVk1fVFlQRV9VTlNQRUNJRklFRBAAEh8KD0xWTV9UWVBFX0xJTkVBUhABGgqCshkGbGluZWFyEiEKEExWTV9UWVBFX1NUUklQRUQQAhoLgrIZB3N0cmlwZWQSHQoOTFZNX1RZUEVfUkFJRDEQAxoJgrIZBXJhaWQxKsQBCgZGb3JtYXQSFgoSRk9STUFUX1VOU1BFQ0lGSUVEEAASGQoLRk9STUFUX1ZGQVQQARoIgrIZBHZmYXQSGQoLRk9STUFUX0VYVDMQAhoIgrIZBGV4dDMSGQoLRk9STUFUX0VYVDQQAxoIgrIZBGV4dDQSGQoLRk9STUFUX1NXQVAQBBoIgrIZBHN3YXASGwoMRk9STUFUX1RNUEZTEAUaCYKyGQV0bXBmcxIZCgtGT1JNQVRfTk9ORRAGGgiCshkEbm9uZSqjAQoHR1BUVHlwZRIYChRHUFRfVFlQRV9VTlNQRUNJRklFRBAAEhsKDUdQVF9UWVBFX0JPT1QQARoIgrIZBGVmMDASHAoOR1BUX1RZUEVfTElOVVgQAhoIgrIZBDgzMDASIQoTR1BUX1RZUEVfTElOVVhfUkFJRBADGgiCshkEZmQwMBIgChJHUFRfVFlQRV9MSU5VWF9MVk0QBBoIgrIZBDhlMDAqSwoJUmFpZExldmVsEhoKFlJBSURfTEVWRUxfVU5TUEVDSUZJRUQQABIQCgxSQUlEX0xFVkVMXzAQARIQCgxSQUlEX0xFVkVMXzEQAjL6AQoRRmlsZXN5c3RlbVNlcnZpY2UScAoDR2V0Ei4ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VHZXRSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VHZXRSZXNwb25zZSII2PMYAuDzGAIScwoETGlzdBIvLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlcXVlc3QaMC5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZUxpc3RSZXNwb25zZSII2PMYAuDzGAJCxQEKFWNvbS5tZXRhbHN0YWNrLmFwaS52MkIPRmlsZXN5c3RlbVByb3RvUAFaNWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYXBpL3YyO2FwaXYyogIDTUFYqgIRTWV0YWxzdGFjay5BcGkuVjLKAhFNZXRhbHN0YWNrXEFwaVxWMuICHU1ldGFsc3RhY2tcQXBpXFYyXEdQQk1ldGFkYXRh6gITTWV0YWxzdGFjazo6QXBpOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules]); /** * Describes the message metalstack.api.v2.FilesystemServiceGetRequest. * Use `create(FilesystemServiceGetRequestSchema)` to create a new message. @@ -29,66 +29,46 @@ export const FilesystemServiceGetResponseSchema = /*@__PURE__*/ messageDesc(file * Use `create(FilesystemServiceListResponseSchema)` to create a new message. */ export const FilesystemServiceListResponseSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 3); -/** - * Describes the message metalstack.api.v2.FilesystemServiceMatchRequest. - * Use `create(FilesystemServiceMatchRequestSchema)` to create a new message. - */ -export const FilesystemServiceMatchRequestSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 4); -/** - * Describes the message metalstack.api.v2.MatchImageAndSize. - * Use `create(MatchImageAndSizeSchema)` to create a new message. - */ -export const MatchImageAndSizeSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 5); -/** - * Describes the message metalstack.api.v2.MatchMachineAndFilesystemLayout. - * Use `create(MatchMachineAndFilesystemLayoutSchema)` to create a new message. - */ -export const MatchMachineAndFilesystemLayoutSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 6); -/** - * Describes the message metalstack.api.v2.FilesystemServiceMatchResponse. - * Use `create(FilesystemServiceMatchResponseSchema)` to create a new message. - */ -export const FilesystemServiceMatchResponseSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 7); /** * Describes the message metalstack.api.v2.FilesystemLayout. * Use `create(FilesystemLayoutSchema)` to create a new message. */ -export const FilesystemLayoutSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 8); +export const FilesystemLayoutSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 4); /** * Describes the message metalstack.api.v2.FilesystemLayoutConstraints. * Use `create(FilesystemLayoutConstraintsSchema)` to create a new message. */ -export const FilesystemLayoutConstraintsSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 9); +export const FilesystemLayoutConstraintsSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 5); /** * Describes the message metalstack.api.v2.Filesystem. * Use `create(FilesystemSchema)` to create a new message. */ -export const FilesystemSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 10); +export const FilesystemSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 6); /** * Describes the message metalstack.api.v2.Disk. * Use `create(DiskSchema)` to create a new message. */ -export const DiskSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 11); +export const DiskSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 7); /** * Describes the message metalstack.api.v2.Raid. * Use `create(RaidSchema)` to create a new message. */ -export const RaidSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 12); +export const RaidSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 8); /** * Describes the message metalstack.api.v2.DiskPartition. * Use `create(DiskPartitionSchema)` to create a new message. */ -export const DiskPartitionSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 13); +export const DiskPartitionSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 9); /** * Describes the message metalstack.api.v2.VolumeGroup. * Use `create(VolumeGroupSchema)` to create a new message. */ -export const VolumeGroupSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 14); +export const VolumeGroupSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 10); /** * Describes the message metalstack.api.v2.LogicalVolume. * Use `create(LogicalVolumeSchema)` to create a new message. */ -export const LogicalVolumeSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 15); +export const LogicalVolumeSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 11); /** * LVMType * diff --git a/js/metalstack/api/v2/filesystem_pb.ts b/js/metalstack/api/v2/filesystem_pb.ts index 7c79b77a..191cc030 100644 --- a/js/metalstack/api/v2/filesystem_pb.ts +++ b/js/metalstack/api/v2/filesystem_pb.ts @@ -14,7 +14,7 @@ import type { Message } from "@bufbuild/protobuf"; * Describes the file metalstack/api/v2/filesystem.proto. */ export const file_metalstack_api_v2_filesystem: GenFile = /*@__PURE__*/ - fileDesc("CiJtZXRhbHN0YWNrL2FwaS92Mi9maWxlc3lzdGVtLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiI2ChtGaWxlc3lzdGVtU2VydmljZUdldFJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIkMKHEZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQFCBQoDX2lkIl4KHEZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0ImAKHUZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlc3BvbnNlEj8KEmZpbGVzeXN0ZW1fbGF5b3V0cxgBIAMoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQiywEKHUZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXF1ZXN0Ej4KDnNpemVfYW5kX2ltYWdlGAEgASgLMiQubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hJbWFnZUFuZFNpemVIABJaChxtYWNoaW5lX2FuZF9maWxlc3lzdGVtbGF5b3V0GAIgASgLMjIubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hNYWNoaW5lQW5kRmlsZXN5c3RlbUxheW91dEgAQg4KBW1hdGNoEgW6SAIIASJKChFNYXRjaEltYWdlQW5kU2l6ZRIZCgRzaXplGAEgASgJQgu6SAhyBsCzrrECARIaCgVpbWFnZRgCIAEoCUILukgIcgbAs66xAgEiZAofTWF0Y2hNYWNoaW5lQW5kRmlsZXN5c3RlbUxheW91dBIZCgdtYWNoaW5lGAEgASgJQgi6SAVyA7ABARImChFmaWxlc3lzdGVtX2xheW91dBgCIAEoCUILukgIcgbAs66xAgEiYAoeRmlsZXN5c3RlbVNlcnZpY2VNYXRjaFJlc3BvbnNlEj4KEWZpbGVzeXN0ZW1fbGF5b3V0GAEgASgLMiMubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dCLsAwoQRmlsZXN5c3RlbUxheW91dBIXCgJpZBgBIAEoCUILukgIcgbAs66xAgESJQoEbWV0YRgCIAEoCzIXLm1ldGFsc3RhY2suYXBpLnYyLk1ldGESHgoEbmFtZRgDIAEoCUILukgIcgbAs66xAgFIAIgBARIlCgtkZXNjcmlwdGlvbhgEIAEoCUILukgIcgbIs66xAgFIAYgBARIyCgtmaWxlc3lzdGVtcxgFIAMoCzIdLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW0SJgoFZGlza3MYBiADKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5EaXNrEiUKBHJhaWQYByADKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5SYWlkEjUKDXZvbHVtZV9ncm91cHMYCCADKAsyHi5tZXRhbHN0YWNrLmFwaS52Mi5Wb2x1bWVHcm91cBI5Cg9sb2dpY2FsX3ZvbHVtZXMYCSADKAsyIC5tZXRhbHN0YWNrLmFwaS52Mi5Mb2dpY2FsVm9sdW1lEkMKC2NvbnN0cmFpbnRzGAogASgLMi4ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dENvbnN0cmFpbnRzQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbiKnAQobRmlsZXN5c3RlbUxheW91dENvbnN0cmFpbnRzEg0KBXNpemVzGAEgAygJEkoKBmltYWdlcxgCIAMoCzI6Lm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXRDb25zdHJhaW50cy5JbWFnZXNFbnRyeRotCgtJbWFnZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIuwCCgpGaWxlc3lzdGVtEhsKBmRldmljZRgBIAEoCUILukgIcgbAs66xAgESNgoGZm9ybWF0GAIgASgOMhkubWV0YWxzdGFjay5hcGkudjIuRm9ybWF0Qgu6SAjIAQGCAQIQARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEh0KBHBhdGgYBSABKAlCCrpIB3IFEAEYgCBIAogBARIeCgVsYWJlbBgGIAEoCUIKukgHcgUQAhiAAUgDiAEBEioKDW1vdW50X29wdGlvbnMYByADKAlCE7pIEJIBDRAgGAEiB3IFEAEYgAESKwoOY3JlYXRlX29wdGlvbnMYCCADKAlCE7pIEJIBDRAgGAEiB3IFEAEYgAFCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uQgcKBV9wYXRoQggKBl9sYWJlbCJYCgREaXNrEhoKBmRldmljZRgBIAEoCUIKukgHcgUQAhiAARI0CgpwYXJ0aXRpb25zGAIgAygLMiAubWV0YWxzdGFjay5hcGkudjIuRGlza1BhcnRpdGlvbiKiAQoEUmFpZBISCgphcnJheV9uYW1lGAEgASgJEg8KB2RldmljZXMYAiADKAkSOAoFbGV2ZWwYAyABKA4yHC5tZXRhbHN0YWNrLmFwaS52Mi5SYWlkTGV2ZWxCC7pICMgBAYIBAhABEisKDmNyZWF0ZV9vcHRpb25zGAQgAygJQhO6SBCSAQ0QIBgBIgdyBRABGIABEg4KBnNwYXJlcxgFIAEoBSKYAQoNRGlza1BhcnRpdGlvbhIOCgZudW1iZXIYASABKA0SEgoFbGFiZWwYAiABKAlIAIgBARIMCgRzaXplGAMgASgEEj4KCGdwdF90eXBlGAQgASgOMhoubWV0YWxzdGFjay5hcGkudjIuR1BUVHlwZUILukgIyAEBggECEAFIAYgBAUIICgZfbGFiZWxCCwoJX2dwdF90eXBlIkcKC1ZvbHVtZUdyb3VwEhkKBG5hbWUYASABKAlCC7pICHIGwLOusQIBEg8KB2RldmljZXMYAiADKAkSDAoEdGFncxgDIAMoCSKSAQoNTG9naWNhbFZvbHVtZRIZCgRuYW1lGAEgASgJQgu6SAhyBsCzrrECARIgCgx2b2x1bWVfZ3JvdXAYAiABKAlCCrpIB3IFEAIYgAESDAoEc2l6ZRgDIAEoBBI2Cghsdm1fdHlwZRgEIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLkxWTVR5cGVCCLpIBYIBAhABKoYBCgdMVk1UeXBlEhgKFExWTV9UWVBFX1VOU1BFQ0lGSUVEEAASHwoPTFZNX1RZUEVfTElORUFSEAEaCoKyGQZsaW5lYXISIQoQTFZNX1RZUEVfU1RSSVBFRBACGguCshkHc3RyaXBlZBIdCg5MVk1fVFlQRV9SQUlEMRADGgmCshkFcmFpZDEqxAEKBkZvcm1hdBIWChJGT1JNQVRfVU5TUEVDSUZJRUQQABIZCgtGT1JNQVRfVkZBVBABGgiCshkEdmZhdBIZCgtGT1JNQVRfRVhUMxACGgiCshkEZXh0MxIZCgtGT1JNQVRfRVhUNBADGgiCshkEZXh0NBIZCgtGT1JNQVRfU1dBUBAEGgiCshkEc3dhcBIbCgxGT1JNQVRfVE1QRlMQBRoJgrIZBXRtcGZzEhkKC0ZPUk1BVF9OT05FEAYaCIKyGQRub25lKqMBCgdHUFRUeXBlEhgKFEdQVF9UWVBFX1VOU1BFQ0lGSUVEEAASGwoNR1BUX1RZUEVfQk9PVBABGgiCshkEZWYwMBIcCg5HUFRfVFlQRV9MSU5VWBACGgiCshkEODMwMBIhChNHUFRfVFlQRV9MSU5VWF9SQUlEEAMaCIKyGQRmZDAwEiAKEkdQVF9UWVBFX0xJTlVYX0xWTRAEGgiCshkEOGUwMCpLCglSYWlkTGV2ZWwSGgoWUkFJRF9MRVZFTF9VTlNQRUNJRklFRBAAEhAKDFJBSURfTEVWRUxfMBABEhAKDFJBSURfTEVWRUxfMRACMvICChFGaWxlc3lzdGVtU2VydmljZRJwCgNHZXQSLi5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZUdldFJlcXVlc3QaLy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZUdldFJlc3BvbnNlIgjY8xgC4PMYAhJzCgRMaXN0Ei8ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VMaXN0UmVxdWVzdBowLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlc3BvbnNlIgjY8xgC4PMYAhJ2CgVNYXRjaBIwLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXF1ZXN0GjEubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VNYXRjaFJlc3BvbnNlIgjY8xgC4PMYAkLFAQoVY29tLm1ldGFsc3RhY2suYXBpLnYyQg9GaWxlc3lzdGVtUHJvdG9QAVo1Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9hcGkvdjI7YXBpdjKiAgNNQViqAhFNZXRhbHN0YWNrLkFwaS5WMsoCEU1ldGFsc3RhY2tcQXBpXFYy4gIdTWV0YWxzdGFja1xBcGlcVjJcR1BCTWV0YWRhdGHqAhNNZXRhbHN0YWNrOjpBcGk6OlYyYgZwcm90bzM", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules]); + fileDesc("CiJtZXRhbHN0YWNrL2FwaS92Mi9maWxlc3lzdGVtLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiI2ChtGaWxlc3lzdGVtU2VydmljZUdldFJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIkMKHEZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQFCBQoDX2lkIl4KHEZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0ImAKHUZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlc3BvbnNlEj8KEmZpbGVzeXN0ZW1fbGF5b3V0cxgBIAMoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQi7AMKEEZpbGVzeXN0ZW1MYXlvdXQSFwoCaWQYASABKAlCC7pICHIGwLOusQIBEiUKBG1ldGEYAiABKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5NZXRhEh4KBG5hbWUYAyABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSAGIAQESMgoLZmlsZXN5c3RlbXMYBSADKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtEiYKBWRpc2tzGAYgAygLMhcubWV0YWxzdGFjay5hcGkudjIuRGlzaxIlCgRyYWlkGAcgAygLMhcubWV0YWxzdGFjay5hcGkudjIuUmFpZBI1Cg12b2x1bWVfZ3JvdXBzGAggAygLMh4ubWV0YWxzdGFjay5hcGkudjIuVm9sdW1lR3JvdXASOQoPbG9naWNhbF92b2x1bWVzGAkgAygLMiAubWV0YWxzdGFjay5hcGkudjIuTG9naWNhbFZvbHVtZRJDCgtjb25zdHJhaW50cxgKIAEoCzIuLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXRDb25zdHJhaW50c0IHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb24ipwEKG0ZpbGVzeXN0ZW1MYXlvdXRDb25zdHJhaW50cxINCgVzaXplcxgBIAMoCRJKCgZpbWFnZXMYAiADKAsyOi5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0Q29uc3RyYWludHMuSW1hZ2VzRW50cnkaLQoLSW1hZ2VzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASLsAgoKRmlsZXN5c3RlbRIbCgZkZXZpY2UYASABKAlCC7pICHIGwLOusQIBEjYKBmZvcm1hdBgCIAEoDjIZLm1ldGFsc3RhY2suYXBpLnYyLkZvcm1hdEILukgIyAEBggECEAESHgoEbmFtZRgDIAEoCUILukgIcgbAs66xAgFIAIgBARIlCgtkZXNjcmlwdGlvbhgEIAEoCUILukgIcgbIs66xAgFIAYgBARIdCgRwYXRoGAUgASgJQgq6SAdyBRABGIAgSAKIAQESHgoFbGFiZWwYBiABKAlCCrpIB3IFEAIYgAFIA4gBARIqCg1tb3VudF9vcHRpb25zGAcgAygJQhO6SBCSAQ0QIBgBIgdyBRABGIABEisKDmNyZWF0ZV9vcHRpb25zGAggAygJQhO6SBCSAQ0QIBgBIgdyBRABGIABQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIHCgVfcGF0aEIICgZfbGFiZWwiWAoERGlzaxIaCgZkZXZpY2UYASABKAlCCrpIB3IFEAIYgAESNAoKcGFydGl0aW9ucxgCIAMoCzIgLm1ldGFsc3RhY2suYXBpLnYyLkRpc2tQYXJ0aXRpb24iogEKBFJhaWQSEgoKYXJyYXlfbmFtZRgBIAEoCRIPCgdkZXZpY2VzGAIgAygJEjgKBWxldmVsGAMgASgOMhwubWV0YWxzdGFjay5hcGkudjIuUmFpZExldmVsQgu6SAjIAQGCAQIQARIrCg5jcmVhdGVfb3B0aW9ucxgEIAMoCUITukgQkgENECAYASIHcgUQARiAARIOCgZzcGFyZXMYBSABKAUimAEKDURpc2tQYXJ0aXRpb24SDgoGbnVtYmVyGAEgASgNEhIKBWxhYmVsGAIgASgJSACIAQESDAoEc2l6ZRgDIAEoBBI+CghncHRfdHlwZRgEIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLkdQVFR5cGVCC7pICMgBAYIBAhABSAGIAQFCCAoGX2xhYmVsQgsKCV9ncHRfdHlwZSJHCgtWb2x1bWVHcm91cBIZCgRuYW1lGAEgASgJQgu6SAhyBsCzrrECARIPCgdkZXZpY2VzGAIgAygJEgwKBHRhZ3MYAyADKAkikgEKDUxvZ2ljYWxWb2x1bWUSGQoEbmFtZRgBIAEoCUILukgIcgbAs66xAgESIAoMdm9sdW1lX2dyb3VwGAIgASgJQgq6SAdyBRACGIABEgwKBHNpemUYAyABKAQSNgoIbHZtX3R5cGUYBCABKA4yGi5tZXRhbHN0YWNrLmFwaS52Mi5MVk1UeXBlQgi6SAWCAQIQASqGAQoHTFZNVHlwZRIYChRMVk1fVFlQRV9VTlNQRUNJRklFRBAAEh8KD0xWTV9UWVBFX0xJTkVBUhABGgqCshkGbGluZWFyEiEKEExWTV9UWVBFX1NUUklQRUQQAhoLgrIZB3N0cmlwZWQSHQoOTFZNX1RZUEVfUkFJRDEQAxoJgrIZBXJhaWQxKsQBCgZGb3JtYXQSFgoSRk9STUFUX1VOU1BFQ0lGSUVEEAASGQoLRk9STUFUX1ZGQVQQARoIgrIZBHZmYXQSGQoLRk9STUFUX0VYVDMQAhoIgrIZBGV4dDMSGQoLRk9STUFUX0VYVDQQAxoIgrIZBGV4dDQSGQoLRk9STUFUX1NXQVAQBBoIgrIZBHN3YXASGwoMRk9STUFUX1RNUEZTEAUaCYKyGQV0bXBmcxIZCgtGT1JNQVRfTk9ORRAGGgiCshkEbm9uZSqjAQoHR1BUVHlwZRIYChRHUFRfVFlQRV9VTlNQRUNJRklFRBAAEhsKDUdQVF9UWVBFX0JPT1QQARoIgrIZBGVmMDASHAoOR1BUX1RZUEVfTElOVVgQAhoIgrIZBDgzMDASIQoTR1BUX1RZUEVfTElOVVhfUkFJRBADGgiCshkEZmQwMBIgChJHUFRfVFlQRV9MSU5VWF9MVk0QBBoIgrIZBDhlMDAqSwoJUmFpZExldmVsEhoKFlJBSURfTEVWRUxfVU5TUEVDSUZJRUQQABIQCgxSQUlEX0xFVkVMXzAQARIQCgxSQUlEX0xFVkVMXzEQAjL6AQoRRmlsZXN5c3RlbVNlcnZpY2UScAoDR2V0Ei4ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VHZXRSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VHZXRSZXNwb25zZSII2PMYAuDzGAIScwoETGlzdBIvLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlcXVlc3QaMC5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZUxpc3RSZXNwb25zZSII2PMYAuDzGAJCxQEKFWNvbS5tZXRhbHN0YWNrLmFwaS52MkIPRmlsZXN5c3RlbVByb3RvUAFaNWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYXBpL3YyO2FwaXYyogIDTUFYqgIRTWV0YWxzdGFjay5BcGkuVjLKAhFNZXRhbHN0YWNrXEFwaVxWMuICHU1ldGFsc3RhY2tcQXBpXFYyXEdQQk1ldGFkYXRh6gITTWV0YWxzdGFjazo6QXBpOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules]); /** * FilesystemServiceGetRequest is the request payload for a filesystem get request @@ -100,121 +100,6 @@ export type FilesystemServiceListResponse = Message<"metalstack.api.v2.Filesyste export const FilesystemServiceListResponseSchema: GenMessage = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 3); -/** - * FilesystemServiceMatchRequest - * - * @generated from message metalstack.api.v2.FilesystemServiceMatchRequest - */ -export type FilesystemServiceMatchRequest = Message<"metalstack.api.v2.FilesystemServiceMatchRequest"> & { - /** - * Match either size and image to a filesystemlayout - * or if a machine matches to a filesystemlayout - * - * @generated from oneof metalstack.api.v2.FilesystemServiceMatchRequest.match - */ - match: { - /** - * SizeAndImage - * - * @generated from field: metalstack.api.v2.MatchImageAndSize size_and_image = 1; - */ - value: MatchImageAndSize; - case: "sizeAndImage"; - } | { - /** - * MachineAndFilesystemlayout - * - * @generated from field: metalstack.api.v2.MatchMachineAndFilesystemLayout machine_and_filesystemlayout = 2; - */ - value: MatchMachineAndFilesystemLayout; - case: "machineAndFilesystemlayout"; - } | { case: undefined; value?: undefined }; -}; - -/** - * Describes the message metalstack.api.v2.FilesystemServiceMatchRequest. - * Use `create(FilesystemServiceMatchRequestSchema)` to create a new message. - */ -export const FilesystemServiceMatchRequestSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_metalstack_api_v2_filesystem, 4); - -/** - * MatchImageAndSize - * - * @generated from message metalstack.api.v2.MatchImageAndSize - */ -export type MatchImageAndSize = Message<"metalstack.api.v2.MatchImageAndSize"> & { - /** - * Size, machine size to try - * - * @generated from field: string size = 1; - */ - size: string; - - /** - * Image machine image to try - * - * @generated from field: string image = 2; - */ - image: string; -}; - -/** - * Describes the message metalstack.api.v2.MatchImageAndSize. - * Use `create(MatchImageAndSizeSchema)` to create a new message. - */ -export const MatchImageAndSizeSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_metalstack_api_v2_filesystem, 5); - -/** - * MatchMachineAndFilesystemLayout - * - * @generated from message metalstack.api.v2.MatchMachineAndFilesystemLayout - */ -export type MatchMachineAndFilesystemLayout = Message<"metalstack.api.v2.MatchMachineAndFilesystemLayout"> & { - /** - * Machine to check - * - * @generated from field: string machine = 1; - */ - machine: string; - - /** - * FilesystemLayout to check - * - * @generated from field: string filesystem_layout = 2; - */ - filesystemLayout: string; -}; - -/** - * Describes the message metalstack.api.v2.MatchMachineAndFilesystemLayout. - * Use `create(MatchMachineAndFilesystemLayoutSchema)` to create a new message. - */ -export const MatchMachineAndFilesystemLayoutSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_metalstack_api_v2_filesystem, 6); - -/** - * FilesystemServiceMatchResponse - * - * @generated from message metalstack.api.v2.FilesystemServiceMatchResponse - */ -export type FilesystemServiceMatchResponse = Message<"metalstack.api.v2.FilesystemServiceMatchResponse"> & { - /** - * FilesystemLayout the filesystemlayout - * - * @generated from field: metalstack.api.v2.FilesystemLayout filesystem_layout = 1; - */ - filesystemLayout?: FilesystemLayout | undefined; -}; - -/** - * Describes the message metalstack.api.v2.FilesystemServiceMatchResponse. - * Use `create(FilesystemServiceMatchResponseSchema)` to create a new message. - */ -export const FilesystemServiceMatchResponseSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_metalstack_api_v2_filesystem, 7); - /** * FilesystemLayout * @@ -297,7 +182,7 @@ export type FilesystemLayout = Message<"metalstack.api.v2.FilesystemLayout"> & { * Use `create(FilesystemLayoutSchema)` to create a new message. */ export const FilesystemLayoutSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_metalstack_api_v2_filesystem, 8); + messageDesc(file_metalstack_api_v2_filesystem, 4); /** * FilesystemLayoutConstraints @@ -325,7 +210,7 @@ export type FilesystemLayoutConstraints = Message<"metalstack.api.v2.FilesystemL * Use `create(FilesystemLayoutConstraintsSchema)` to create a new message. */ export const FilesystemLayoutConstraintsSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_metalstack_api_v2_filesystem, 9); + messageDesc(file_metalstack_api_v2_filesystem, 5); /** * Filesystem @@ -395,7 +280,7 @@ export type Filesystem = Message<"metalstack.api.v2.Filesystem"> & { * Use `create(FilesystemSchema)` to create a new message. */ export const FilesystemSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_metalstack_api_v2_filesystem, 10); + messageDesc(file_metalstack_api_v2_filesystem, 6); /** * Disk @@ -423,7 +308,7 @@ export type Disk = Message<"metalstack.api.v2.Disk"> & { * Use `create(DiskSchema)` to create a new message. */ export const DiskSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_metalstack_api_v2_filesystem, 11); + messageDesc(file_metalstack_api_v2_filesystem, 7); /** * Raid @@ -472,7 +357,7 @@ export type Raid = Message<"metalstack.api.v2.Raid"> & { * Use `create(RaidSchema)` to create a new message. */ export const RaidSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_metalstack_api_v2_filesystem, 12); + messageDesc(file_metalstack_api_v2_filesystem, 8); /** * DiskPartition @@ -514,7 +399,7 @@ export type DiskPartition = Message<"metalstack.api.v2.DiskPartition"> & { * Use `create(DiskPartitionSchema)` to create a new message. */ export const DiskPartitionSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_metalstack_api_v2_filesystem, 13); + messageDesc(file_metalstack_api_v2_filesystem, 9); /** * VolumeGroup @@ -549,7 +434,7 @@ export type VolumeGroup = Message<"metalstack.api.v2.VolumeGroup"> & { * Use `create(VolumeGroupSchema)` to create a new message. */ export const VolumeGroupSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_metalstack_api_v2_filesystem, 14); + messageDesc(file_metalstack_api_v2_filesystem, 10); /** * LogicalVolume @@ -591,7 +476,7 @@ export type LogicalVolume = Message<"metalstack.api.v2.LogicalVolume"> & { * Use `create(LogicalVolumeSchema)` to create a new message. */ export const LogicalVolumeSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_metalstack_api_v2_filesystem, 15); + messageDesc(file_metalstack_api_v2_filesystem, 11); /** * LVMType @@ -804,16 +689,6 @@ export const FilesystemService: GenService<{ input: typeof FilesystemServiceListRequestSchema; output: typeof FilesystemServiceListResponseSchema; }, - /** - * Matches a filesystem to a size and image or machine. - * - * @generated from rpc metalstack.api.v2.FilesystemService.Match - */ - match: { - methodKind: "unary"; - input: typeof FilesystemServiceMatchRequestSchema; - output: typeof FilesystemServiceMatchResponseSchema; - }, }> = /*@__PURE__*/ serviceDesc(file_metalstack_api_v2_filesystem, 0); diff --git a/proto/metalstack/admin/v2/filesystem.proto b/proto/metalstack/admin/v2/filesystem.proto index 6b6acab6..3de4f36d 100644 --- a/proto/metalstack/admin/v2/filesystem.proto +++ b/proto/metalstack/admin/v2/filesystem.proto @@ -24,6 +24,12 @@ service FilesystemService { option (metalstack.api.v2.admin_roles) = ADMIN_ROLE_EDITOR; option (metalstack.api.v2.auditing) = AUDITING_INCLUDED; } + // Matches a filesystem to a size and image or machine. + rpc Match(FilesystemServiceMatchRequest) returns (FilesystemServiceMatchResponse) { + option (metalstack.api.v2.admin_roles) = ADMIN_ROLE_EDITOR; + option (metalstack.api.v2.admin_roles) = ADMIN_ROLE_VIEWER; + option (metalstack.api.v2.auditing) = AUDITING_EXCLUDED; + } } // FilesystemServiceCreateRequest is the request payload for creating a filesystem. @@ -79,3 +85,39 @@ message FilesystemServiceDeleteResponse { // FilesystemLayout contains the deleted filesystem layout metalstack.api.v2.FilesystemLayout filesystem_layout = 1; } + +// FilesystemServiceMatchRequest +message FilesystemServiceMatchRequest { + // Match either size and image to a filesystemlayout + // or if a machine matches to a filesystemlayout + oneof match { + // ensure at least one match is specified + option (buf.validate.oneof).required = true; + // SizeAndImage + MatchImageAndSize size_and_image = 1; + // MachineAndFilesystemlayout + MatchMachineAndFilesystemLayout machine_and_filesystemlayout = 2; + } +} + +// MatchImageAndSize +message MatchImageAndSize { + // Size, machine size to try + string size = 1 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; + // Image machine image to try + string image = 2 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; +} + +// MatchMachineAndFilesystemLayout +message MatchMachineAndFilesystemLayout { + // Machine to check + string machine = 1 [(buf.validate.field).string.uuid = true]; + // FilesystemLayout to check + string filesystem_layout = 2 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; +} + +// FilesystemServiceMatchResponse +message FilesystemServiceMatchResponse { + // FilesystemLayout the filesystemlayout + metalstack.api.v2.FilesystemLayout filesystem_layout = 1; +} diff --git a/proto/metalstack/api/v2/filesystem.proto b/proto/metalstack/api/v2/filesystem.proto index 21d3426e..ae73fa2f 100644 --- a/proto/metalstack/api/v2/filesystem.proto +++ b/proto/metalstack/api/v2/filesystem.proto @@ -18,11 +18,6 @@ service FilesystemService { option (visibility) = VISIBILITY_SELF; option (auditing) = AUDITING_EXCLUDED; } - // Matches a filesystem to a size and image or machine. - rpc Match(FilesystemServiceMatchRequest) returns (FilesystemServiceMatchResponse) { - option (visibility) = VISIBILITY_SELF; - option (auditing) = AUDITING_EXCLUDED; - } } // FilesystemServiceGetRequest is the request payload for a filesystem get request @@ -49,42 +44,6 @@ message FilesystemServiceListResponse { repeated FilesystemLayout filesystem_layouts = 1; } -// FilesystemServiceMatchRequest -message FilesystemServiceMatchRequest { - // Match either size and image to a filesystemlayout - // or if a machine matches to a filesystemlayout - oneof match { - // ensure at least one match is specified - option (buf.validate.oneof).required = true; - // SizeAndImage - MatchImageAndSize size_and_image = 1; - // MachineAndFilesystemlayout - MatchMachineAndFilesystemLayout machine_and_filesystemlayout = 2; - } -} - -// MatchImageAndSize -message MatchImageAndSize { - // Size, machine size to try - string size = 1 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; - // Image machine image to try - string image = 2 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; -} - -// MatchMachineAndFilesystemLayout -message MatchMachineAndFilesystemLayout { - // Machine to check - string machine = 1 [(buf.validate.field).string.uuid = true]; - // FilesystemLayout to check - string filesystem_layout = 2 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; -} - -// FilesystemServiceMatchResponse -message FilesystemServiceMatchResponse { - // FilesystemLayout the filesystemlayout - FilesystemLayout filesystem_layout = 1; -} - // FilesystemLayout message FilesystemLayout { // Id of this filesystemLayout diff --git a/python/metalstack/admin/v2/filesystem_connect.py b/python/metalstack/admin/v2/filesystem_connect.py index ed1b5c9f..7eb1bc44 100644 --- a/python/metalstack/admin/v2/filesystem_connect.py +++ b/python/metalstack/admin/v2/filesystem_connect.py @@ -25,6 +25,9 @@ async def update(self, request: metalstack_dot_admin_dot_v2_dot_filesystem__pb2. async def delete(self, request: metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceDeleteRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceDeleteResponse: raise ConnectError(Code.UNIMPLEMENTED, "Not implemented") + async def match(self, request: metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchResponse: + raise ConnectError(Code.UNIMPLEMENTED, "Not implemented") + class FilesystemServiceASGIApplication(ConnectASGIApplication[FilesystemService]): def __init__(self, service: FilesystemService | AsyncGenerator[FilesystemService], *, interceptors: Iterable[Interceptor]=(), read_max_bytes: int | None = None) -> None: @@ -61,6 +64,16 @@ def __init__(self, service: FilesystemService | AsyncGenerator[FilesystemService ), function=svc.delete, ), + "/metalstack.admin.v2.FilesystemService/Match": Endpoint.unary( + method=MethodInfo( + name="Match", + service_name="metalstack.admin.v2.FilesystemService", + input=metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchRequest, + output=metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchResponse, + idempotency_level=IdempotencyLevel.UNKNOWN, + ), + function=svc.match, + ), }, interceptors=interceptors, read_max_bytes=read_max_bytes, @@ -133,6 +146,26 @@ async def delete( timeout_ms=timeout_ms, ) + async def match( + self, + request: metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchRequest, + *, + headers: Headers | Mapping[str, str] | None = None, + timeout_ms: int | None = None, + ) -> metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchResponse: + return await self.execute_unary( + request=request, + method=MethodInfo( + name="Match", + service_name="metalstack.admin.v2.FilesystemService", + input=metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchRequest, + output=metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchResponse, + idempotency_level=IdempotencyLevel.UNKNOWN, + ), + headers=headers, + timeout_ms=timeout_ms, + ) + class FilesystemServiceSync(Protocol): def create(self, request: metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceCreateRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceCreateResponse: @@ -141,6 +174,8 @@ def update(self, request: metalstack_dot_admin_dot_v2_dot_filesystem__pb2.Filesy raise ConnectError(Code.UNIMPLEMENTED, "Not implemented") def delete(self, request: metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceDeleteRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceDeleteResponse: raise ConnectError(Code.UNIMPLEMENTED, "Not implemented") + def match(self, request: metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchResponse: + raise ConnectError(Code.UNIMPLEMENTED, "Not implemented") class FilesystemServiceWSGIApplication(ConnectWSGIApplication): @@ -177,6 +212,16 @@ def __init__(self, service: FilesystemServiceSync, interceptors: Iterable[Interc ), function=service.delete, ), + "/metalstack.admin.v2.FilesystemService/Match": EndpointSync.unary( + method=MethodInfo( + name="Match", + service_name="metalstack.admin.v2.FilesystemService", + input=metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchRequest, + output=metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchResponse, + idempotency_level=IdempotencyLevel.UNKNOWN, + ), + function=service.match, + ), }, interceptors=interceptors, read_max_bytes=read_max_bytes, @@ -248,3 +293,23 @@ def delete( headers=headers, timeout_ms=timeout_ms, ) + + def match( + self, + request: metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchRequest, + *, + headers: Headers | Mapping[str, str] | None = None, + timeout_ms: int | None = None, + ) -> metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchResponse: + return self.execute_unary( + request=request, + method=MethodInfo( + name="Match", + service_name="metalstack.admin.v2.FilesystemService", + input=metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchRequest, + output=metalstack_dot_admin_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchResponse, + idempotency_level=IdempotencyLevel.UNKNOWN, + ), + headers=headers, + timeout_ms=timeout_ms, + ) diff --git a/python/metalstack/admin/v2/filesystem_pb2.py b/python/metalstack/admin/v2/filesystem_pb2.py index 4818638d..0f6dd6f4 100644 --- a/python/metalstack/admin/v2/filesystem_pb2.py +++ b/python/metalstack/admin/v2/filesystem_pb2.py @@ -28,7 +28,7 @@ from metalstack.api.v2 import predefined_rules_pb2 as metalstack_dot_api_dot_v2_dot_predefined__rules__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n$metalstack/admin/v2/filesystem.proto\x12\x13metalstack.admin.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\x1a\"metalstack/api/v2/filesystem.proto\x1a(metalstack/api/v2/predefined_rules.proto\"r\n\x1e\x46ilesystemServiceCreateRequest\x12P\n\x11\x66ilesystem_layout\x18\x01 \x01(\x0b\x32#.metalstack.api.v2.FilesystemLayoutR\x10\x66ilesystemLayout\"s\n\x1f\x46ilesystemServiceCreateResponse\x12P\n\x11\x66ilesystem_layout\x18\x01 \x01(\x0b\x32#.metalstack.api.v2.FilesystemLayoutR\x10\x66ilesystemLayout\"\xf7\x04\n\x1e\x46ilesystemServiceUpdateRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\x12\x46\n\x0bupdate_meta\x18\x02 \x01(\x0b\x32\x1d.metalstack.api.v2.UpdateMetaB\x06\xbaH\x03\xc8\x01\x01R\nupdateMeta\x12$\n\x04name\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x01R\x0b\x64\x65scription\x88\x01\x01\x12?\n\x0b\x66ilesystems\x18\x05 \x03(\x0b\x32\x1d.metalstack.api.v2.FilesystemR\x0b\x66ilesystems\x12-\n\x05\x64isks\x18\x06 \x03(\x0b\x32\x17.metalstack.api.v2.DiskR\x05\x64isks\x12+\n\x04raid\x18\x07 \x03(\x0b\x32\x17.metalstack.api.v2.RaidR\x04raid\x12\x43\n\rvolume_groups\x18\x08 \x03(\x0b\x32\x1e.metalstack.api.v2.VolumeGroupR\x0cvolumeGroups\x12I\n\x0flogical_volumes\x18\t \x03(\x0b\x32 .metalstack.api.v2.LogicalVolumeR\x0elogicalVolumes\x12P\n\x0b\x63onstraints\x18\n \x01(\x0b\x32..metalstack.api.v2.FilesystemLayoutConstraintsR\x0b\x63onstraintsB\x07\n\x05_nameB\x0e\n\x0c_description\"s\n\x1f\x46ilesystemServiceUpdateResponse\x12P\n\x11\x66ilesystem_layout\x18\x01 \x01(\x0b\x32#.metalstack.api.v2.FilesystemLayoutR\x10\x66ilesystemLayout\"=\n\x1e\x46ilesystemServiceDeleteRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\"s\n\x1f\x46ilesystemServiceDeleteResponse\x12P\n\x11\x66ilesystem_layout\x18\x01 \x01(\x0b\x32#.metalstack.api.v2.FilesystemLayoutR\x10\x66ilesystemLayout2\x93\x03\n\x11\x46ilesystemService\x12~\n\x06\x43reate\x12\x33.metalstack.admin.v2.FilesystemServiceCreateRequest\x1a\x34.metalstack.admin.v2.FilesystemServiceCreateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12~\n\x06Update\x12\x33.metalstack.admin.v2.FilesystemServiceUpdateRequest\x1a\x34.metalstack.admin.v2.FilesystemServiceUpdateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12~\n\x06\x44\x65lete\x12\x33.metalstack.admin.v2.FilesystemServiceDeleteRequest\x1a\x34.metalstack.admin.v2.FilesystemServiceDeleteResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x42\xd3\x01\n\x17\x63om.metalstack.admin.v2B\x0f\x46ilesystemProtoP\x01Z9github.com/metal-stack/api/go/metalstack/admin/v2;adminv2\xa2\x02\x03MAX\xaa\x02\x13Metalstack.Admin.V2\xca\x02\x13Metalstack\\Admin\\V2\xe2\x02\x1fMetalstack\\Admin\\V2\\GPBMetadata\xea\x02\x15Metalstack::Admin::V2b\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n$metalstack/admin/v2/filesystem.proto\x12\x13metalstack.admin.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\x1a\"metalstack/api/v2/filesystem.proto\x1a(metalstack/api/v2/predefined_rules.proto\"r\n\x1e\x46ilesystemServiceCreateRequest\x12P\n\x11\x66ilesystem_layout\x18\x01 \x01(\x0b\x32#.metalstack.api.v2.FilesystemLayoutR\x10\x66ilesystemLayout\"s\n\x1f\x46ilesystemServiceCreateResponse\x12P\n\x11\x66ilesystem_layout\x18\x01 \x01(\x0b\x32#.metalstack.api.v2.FilesystemLayoutR\x10\x66ilesystemLayout\"\xf7\x04\n\x1e\x46ilesystemServiceUpdateRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\x12\x46\n\x0bupdate_meta\x18\x02 \x01(\x0b\x32\x1d.metalstack.api.v2.UpdateMetaB\x06\xbaH\x03\xc8\x01\x01R\nupdateMeta\x12$\n\x04name\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x01R\x0b\x64\x65scription\x88\x01\x01\x12?\n\x0b\x66ilesystems\x18\x05 \x03(\x0b\x32\x1d.metalstack.api.v2.FilesystemR\x0b\x66ilesystems\x12-\n\x05\x64isks\x18\x06 \x03(\x0b\x32\x17.metalstack.api.v2.DiskR\x05\x64isks\x12+\n\x04raid\x18\x07 \x03(\x0b\x32\x17.metalstack.api.v2.RaidR\x04raid\x12\x43\n\rvolume_groups\x18\x08 \x03(\x0b\x32\x1e.metalstack.api.v2.VolumeGroupR\x0cvolumeGroups\x12I\n\x0flogical_volumes\x18\t \x03(\x0b\x32 .metalstack.api.v2.LogicalVolumeR\x0elogicalVolumes\x12P\n\x0b\x63onstraints\x18\n \x01(\x0b\x32..metalstack.api.v2.FilesystemLayoutConstraintsR\x0b\x63onstraintsB\x07\n\x05_nameB\x0e\n\x0c_description\"s\n\x1f\x46ilesystemServiceUpdateResponse\x12P\n\x11\x66ilesystem_layout\x18\x01 \x01(\x0b\x32#.metalstack.api.v2.FilesystemLayoutR\x10\x66ilesystemLayout\"=\n\x1e\x46ilesystemServiceDeleteRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\"s\n\x1f\x46ilesystemServiceDeleteResponse\x12P\n\x11\x66ilesystem_layout\x18\x01 \x01(\x0b\x32#.metalstack.api.v2.FilesystemLayoutR\x10\x66ilesystemLayout\"\xf9\x01\n\x1d\x46ilesystemServiceMatchRequest\x12N\n\x0esize_and_image\x18\x01 \x01(\x0b\x32&.metalstack.admin.v2.MatchImageAndSizeH\x00R\x0csizeAndImage\x12x\n\x1cmachine_and_filesystemlayout\x18\x02 \x01(\x0b\x32\x34.metalstack.admin.v2.MatchMachineAndFilesystemLayoutH\x00R\x1amachineAndFilesystemlayoutB\x0e\n\x05match\x12\x05\xbaH\x02\x08\x01\"W\n\x11MatchImageAndSize\x12\x1f\n\x04size\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04size\x12!\n\x05image\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x05image\"\x7f\n\x1fMatchMachineAndFilesystemLayout\x12\"\n\x07machine\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07machine\x12\x38\n\x11\x66ilesystem_layout\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x10\x66ilesystemLayout\"r\n\x1e\x46ilesystemServiceMatchResponse\x12P\n\x11\x66ilesystem_layout\x18\x01 \x01(\x0b\x32#.metalstack.api.v2.FilesystemLayoutR\x10\x66ilesystemLayout2\x91\x04\n\x11\x46ilesystemService\x12~\n\x06\x43reate\x12\x33.metalstack.admin.v2.FilesystemServiceCreateRequest\x1a\x34.metalstack.admin.v2.FilesystemServiceCreateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12~\n\x06Update\x12\x33.metalstack.admin.v2.FilesystemServiceUpdateRequest\x1a\x34.metalstack.admin.v2.FilesystemServiceUpdateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12~\n\x06\x44\x65lete\x12\x33.metalstack.admin.v2.FilesystemServiceDeleteRequest\x1a\x34.metalstack.admin.v2.FilesystemServiceDeleteResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12|\n\x05Match\x12\x32.metalstack.admin.v2.FilesystemServiceMatchRequest\x1a\x33.metalstack.admin.v2.FilesystemServiceMatchResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x42\xd3\x01\n\x17\x63om.metalstack.admin.v2B\x0f\x46ilesystemProtoP\x01Z9github.com/metal-stack/api/go/metalstack/admin/v2;adminv2\xa2\x02\x03MAX\xaa\x02\x13Metalstack.Admin.V2\xca\x02\x13Metalstack\\Admin\\V2\xe2\x02\x1fMetalstack\\Admin\\V2\\GPBMetadata\xea\x02\x15Metalstack::Admin::V2b\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -46,12 +46,24 @@ _globals['_FILESYSTEMSERVICEUPDATEREQUEST'].fields_by_name['description']._serialized_options = b'\272H\010r\006\310\263\256\261\002\001' _globals['_FILESYSTEMSERVICEDELETEREQUEST'].fields_by_name['id']._loaded_options = None _globals['_FILESYSTEMSERVICEDELETEREQUEST'].fields_by_name['id']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' + _globals['_FILESYSTEMSERVICEMATCHREQUEST'].oneofs_by_name['match']._loaded_options = None + _globals['_FILESYSTEMSERVICEMATCHREQUEST'].oneofs_by_name['match']._serialized_options = b'\272H\002\010\001' + _globals['_MATCHIMAGEANDSIZE'].fields_by_name['size']._loaded_options = None + _globals['_MATCHIMAGEANDSIZE'].fields_by_name['size']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' + _globals['_MATCHIMAGEANDSIZE'].fields_by_name['image']._loaded_options = None + _globals['_MATCHIMAGEANDSIZE'].fields_by_name['image']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' + _globals['_MATCHMACHINEANDFILESYSTEMLAYOUT'].fields_by_name['machine']._loaded_options = None + _globals['_MATCHMACHINEANDFILESYSTEMLAYOUT'].fields_by_name['machine']._serialized_options = b'\272H\005r\003\260\001\001' + _globals['_MATCHMACHINEANDFILESYSTEMLAYOUT'].fields_by_name['filesystem_layout']._loaded_options = None + _globals['_MATCHMACHINEANDFILESYSTEMLAYOUT'].fields_by_name['filesystem_layout']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' _globals['_FILESYSTEMSERVICE'].methods_by_name['Create']._loaded_options = None _globals['_FILESYSTEMSERVICE'].methods_by_name['Create']._serialized_options = b'\322\363\030\001\001\340\363\030\001' _globals['_FILESYSTEMSERVICE'].methods_by_name['Update']._loaded_options = None _globals['_FILESYSTEMSERVICE'].methods_by_name['Update']._serialized_options = b'\322\363\030\001\001\340\363\030\001' _globals['_FILESYSTEMSERVICE'].methods_by_name['Delete']._loaded_options = None _globals['_FILESYSTEMSERVICE'].methods_by_name['Delete']._serialized_options = b'\322\363\030\001\001\340\363\030\001' + _globals['_FILESYSTEMSERVICE'].methods_by_name['Match']._loaded_options = None + _globals['_FILESYSTEMSERVICE'].methods_by_name['Match']._serialized_options = b'\322\363\030\002\001\002\340\363\030\002' _globals['_FILESYSTEMSERVICECREATEREQUEST']._serialized_start=200 _globals['_FILESYSTEMSERVICECREATEREQUEST']._serialized_end=314 _globals['_FILESYSTEMSERVICECREATERESPONSE']._serialized_start=316 @@ -64,6 +76,14 @@ _globals['_FILESYSTEMSERVICEDELETEREQUEST']._serialized_end=1245 _globals['_FILESYSTEMSERVICEDELETERESPONSE']._serialized_start=1247 _globals['_FILESYSTEMSERVICEDELETERESPONSE']._serialized_end=1362 - _globals['_FILESYSTEMSERVICE']._serialized_start=1365 - _globals['_FILESYSTEMSERVICE']._serialized_end=1768 + _globals['_FILESYSTEMSERVICEMATCHREQUEST']._serialized_start=1365 + _globals['_FILESYSTEMSERVICEMATCHREQUEST']._serialized_end=1614 + _globals['_MATCHIMAGEANDSIZE']._serialized_start=1616 + _globals['_MATCHIMAGEANDSIZE']._serialized_end=1703 + _globals['_MATCHMACHINEANDFILESYSTEMLAYOUT']._serialized_start=1705 + _globals['_MATCHMACHINEANDFILESYSTEMLAYOUT']._serialized_end=1832 + _globals['_FILESYSTEMSERVICEMATCHRESPONSE']._serialized_start=1834 + _globals['_FILESYSTEMSERVICEMATCHRESPONSE']._serialized_end=1948 + _globals['_FILESYSTEMSERVICE']._serialized_start=1951 + _globals['_FILESYSTEMSERVICE']._serialized_end=2480 # @@protoc_insertion_point(module_scope) diff --git a/python/metalstack/admin/v2/filesystem_pb2.pyi b/python/metalstack/admin/v2/filesystem_pb2.pyi index 29fbfbf8..8ece5fca 100644 --- a/python/metalstack/admin/v2/filesystem_pb2.pyi +++ b/python/metalstack/admin/v2/filesystem_pb2.pyi @@ -63,3 +63,33 @@ class FilesystemServiceDeleteResponse(_message.Message): FILESYSTEM_LAYOUT_FIELD_NUMBER: _ClassVar[int] filesystem_layout: _filesystem_pb2.FilesystemLayout def __init__(self, filesystem_layout: _Optional[_Union[_filesystem_pb2.FilesystemLayout, _Mapping]] = ...) -> None: ... + +class FilesystemServiceMatchRequest(_message.Message): + __slots__ = ("size_and_image", "machine_and_filesystemlayout") + SIZE_AND_IMAGE_FIELD_NUMBER: _ClassVar[int] + MACHINE_AND_FILESYSTEMLAYOUT_FIELD_NUMBER: _ClassVar[int] + size_and_image: MatchImageAndSize + machine_and_filesystemlayout: MatchMachineAndFilesystemLayout + def __init__(self, size_and_image: _Optional[_Union[MatchImageAndSize, _Mapping]] = ..., machine_and_filesystemlayout: _Optional[_Union[MatchMachineAndFilesystemLayout, _Mapping]] = ...) -> None: ... + +class MatchImageAndSize(_message.Message): + __slots__ = ("size", "image") + SIZE_FIELD_NUMBER: _ClassVar[int] + IMAGE_FIELD_NUMBER: _ClassVar[int] + size: str + image: str + def __init__(self, size: _Optional[str] = ..., image: _Optional[str] = ...) -> None: ... + +class MatchMachineAndFilesystemLayout(_message.Message): + __slots__ = ("machine", "filesystem_layout") + MACHINE_FIELD_NUMBER: _ClassVar[int] + FILESYSTEM_LAYOUT_FIELD_NUMBER: _ClassVar[int] + machine: str + filesystem_layout: str + def __init__(self, machine: _Optional[str] = ..., filesystem_layout: _Optional[str] = ...) -> None: ... + +class FilesystemServiceMatchResponse(_message.Message): + __slots__ = ("filesystem_layout",) + FILESYSTEM_LAYOUT_FIELD_NUMBER: _ClassVar[int] + filesystem_layout: _filesystem_pb2.FilesystemLayout + def __init__(self, filesystem_layout: _Optional[_Union[_filesystem_pb2.FilesystemLayout, _Mapping]] = ...) -> None: ... diff --git a/python/metalstack/api/v2/filesystem_connect.py b/python/metalstack/api/v2/filesystem_connect.py index e2c66ba9..c32f7f85 100644 --- a/python/metalstack/api/v2/filesystem_connect.py +++ b/python/metalstack/api/v2/filesystem_connect.py @@ -22,9 +22,6 @@ async def get(self, request: metalstack_dot_api_dot_v2_dot_filesystem__pb2.Files async def list(self, request: metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceListRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceListResponse: raise ConnectError(Code.UNIMPLEMENTED, "Not implemented") - async def match(self, request: metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchResponse: - raise ConnectError(Code.UNIMPLEMENTED, "Not implemented") - class FilesystemServiceASGIApplication(ConnectASGIApplication[FilesystemService]): def __init__(self, service: FilesystemService | AsyncGenerator[FilesystemService], *, interceptors: Iterable[Interceptor]=(), read_max_bytes: int | None = None) -> None: @@ -51,16 +48,6 @@ def __init__(self, service: FilesystemService | AsyncGenerator[FilesystemService ), function=svc.list, ), - "/metalstack.api.v2.FilesystemService/Match": Endpoint.unary( - method=MethodInfo( - name="Match", - service_name="metalstack.api.v2.FilesystemService", - input=metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchRequest, - output=metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchResponse, - idempotency_level=IdempotencyLevel.UNKNOWN, - ), - function=svc.match, - ), }, interceptors=interceptors, read_max_bytes=read_max_bytes, @@ -113,34 +100,12 @@ async def list( timeout_ms=timeout_ms, ) - async def match( - self, - request: metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchRequest, - *, - headers: Headers | Mapping[str, str] | None = None, - timeout_ms: int | None = None, - ) -> metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchResponse: - return await self.execute_unary( - request=request, - method=MethodInfo( - name="Match", - service_name="metalstack.api.v2.FilesystemService", - input=metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchRequest, - output=metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchResponse, - idempotency_level=IdempotencyLevel.UNKNOWN, - ), - headers=headers, - timeout_ms=timeout_ms, - ) - class FilesystemServiceSync(Protocol): def get(self, request: metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceGetRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceGetResponse: raise ConnectError(Code.UNIMPLEMENTED, "Not implemented") def list(self, request: metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceListRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceListResponse: raise ConnectError(Code.UNIMPLEMENTED, "Not implemented") - def match(self, request: metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchResponse: - raise ConnectError(Code.UNIMPLEMENTED, "Not implemented") class FilesystemServiceWSGIApplication(ConnectWSGIApplication): @@ -167,16 +132,6 @@ def __init__(self, service: FilesystemServiceSync, interceptors: Iterable[Interc ), function=service.list, ), - "/metalstack.api.v2.FilesystemService/Match": EndpointSync.unary( - method=MethodInfo( - name="Match", - service_name="metalstack.api.v2.FilesystemService", - input=metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchRequest, - output=metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchResponse, - idempotency_level=IdempotencyLevel.UNKNOWN, - ), - function=service.match, - ), }, interceptors=interceptors, read_max_bytes=read_max_bytes, @@ -228,23 +183,3 @@ def list( headers=headers, timeout_ms=timeout_ms, ) - - def match( - self, - request: metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchRequest, - *, - headers: Headers | Mapping[str, str] | None = None, - timeout_ms: int | None = None, - ) -> metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchResponse: - return self.execute_unary( - request=request, - method=MethodInfo( - name="Match", - service_name="metalstack.api.v2.FilesystemService", - input=metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchRequest, - output=metalstack_dot_api_dot_v2_dot_filesystem__pb2.FilesystemServiceMatchResponse, - idempotency_level=IdempotencyLevel.UNKNOWN, - ), - headers=headers, - timeout_ms=timeout_ms, - ) diff --git a/python/metalstack/api/v2/filesystem_pb2.py b/python/metalstack/api/v2/filesystem_pb2.py index bc83d8e6..4e548c72 100644 --- a/python/metalstack/api/v2/filesystem_pb2.py +++ b/python/metalstack/api/v2/filesystem_pb2.py @@ -27,7 +27,7 @@ from metalstack.api.v2 import predefined_rules_pb2 as metalstack_dot_api_dot_v2_dot_predefined__rules__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"metalstack/api/v2/filesystem.proto\x12\x11metalstack.api.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\x1a(metalstack/api/v2/predefined_rules.proto\":\n\x1b\x46ilesystemServiceGetRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\"G\n\x1c\x46ilesystemServiceListRequest\x12 \n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x02id\x88\x01\x01\x42\x05\n\x03_id\"p\n\x1c\x46ilesystemServiceGetResponse\x12P\n\x11\x66ilesystem_layout\x18\x01 \x01(\x0b\x32#.metalstack.api.v2.FilesystemLayoutR\x10\x66ilesystemLayout\"s\n\x1d\x46ilesystemServiceListResponse\x12R\n\x12\x66ilesystem_layouts\x18\x01 \x03(\x0b\x32#.metalstack.api.v2.FilesystemLayoutR\x11\x66ilesystemLayouts\"\xf5\x01\n\x1d\x46ilesystemServiceMatchRequest\x12L\n\x0esize_and_image\x18\x01 \x01(\x0b\x32$.metalstack.api.v2.MatchImageAndSizeH\x00R\x0csizeAndImage\x12v\n\x1cmachine_and_filesystemlayout\x18\x02 \x01(\x0b\x32\x32.metalstack.api.v2.MatchMachineAndFilesystemLayoutH\x00R\x1amachineAndFilesystemlayoutB\x0e\n\x05match\x12\x05\xbaH\x02\x08\x01\"W\n\x11MatchImageAndSize\x12\x1f\n\x04size\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04size\x12!\n\x05image\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x05image\"\x7f\n\x1fMatchMachineAndFilesystemLayout\x12\"\n\x07machine\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07machine\x12\x38\n\x11\x66ilesystem_layout\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x10\x66ilesystemLayout\"r\n\x1e\x46ilesystemServiceMatchResponse\x12P\n\x11\x66ilesystem_layout\x18\x01 \x01(\x0b\x32#.metalstack.api.v2.FilesystemLayoutR\x10\x66ilesystemLayout\"\xce\x04\n\x10\x46ilesystemLayout\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\x12+\n\x04meta\x18\x02 \x01(\x0b\x32\x17.metalstack.api.v2.MetaR\x04meta\x12$\n\x04name\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x01R\x0b\x64\x65scription\x88\x01\x01\x12?\n\x0b\x66ilesystems\x18\x05 \x03(\x0b\x32\x1d.metalstack.api.v2.FilesystemR\x0b\x66ilesystems\x12-\n\x05\x64isks\x18\x06 \x03(\x0b\x32\x17.metalstack.api.v2.DiskR\x05\x64isks\x12+\n\x04raid\x18\x07 \x03(\x0b\x32\x17.metalstack.api.v2.RaidR\x04raid\x12\x43\n\rvolume_groups\x18\x08 \x03(\x0b\x32\x1e.metalstack.api.v2.VolumeGroupR\x0cvolumeGroups\x12I\n\x0flogical_volumes\x18\t \x03(\x0b\x32 .metalstack.api.v2.LogicalVolumeR\x0elogicalVolumes\x12P\n\x0b\x63onstraints\x18\n \x01(\x0b\x32..metalstack.api.v2.FilesystemLayoutConstraintsR\x0b\x63onstraintsB\x07\n\x05_nameB\x0e\n\x0c_description\"\xc2\x01\n\x1b\x46ilesystemLayoutConstraints\x12\x14\n\x05sizes\x18\x01 \x03(\tR\x05sizes\x12R\n\x06images\x18\x02 \x03(\x0b\x32:.metalstack.api.v2.FilesystemLayoutConstraints.ImagesEntryR\x06images\x1a\x39\n\x0bImagesEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\xb9\x03\n\nFilesystem\x12#\n\x06\x64\x65vice\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x06\x64\x65vice\x12>\n\x06\x66ormat\x18\x02 \x01(\x0e\x32\x19.metalstack.api.v2.FormatB\x0b\xbaH\x08\x82\x01\x02\x10\x01\xc8\x01\x01R\x06\x66ormat\x12$\n\x04name\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x01R\x0b\x64\x65scription\x88\x01\x01\x12#\n\x04path\x18\x05 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80 H\x02R\x04path\x88\x01\x01\x12%\n\x05label\x18\x06 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01H\x03R\x05label\x88\x01\x01\x12\x38\n\rmount_options\x18\x07 \x03(\tB\x13\xbaH\x10\x92\x01\r\x10 \x18\x01\"\x07r\x05\x10\x01\x18\x80\x01R\x0cmountOptions\x12:\n\x0e\x63reate_options\x18\x08 \x03(\tB\x13\xbaH\x10\x92\x01\r\x10 \x18\x01\"\x07r\x05\x10\x01\x18\x80\x01R\rcreateOptionsB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x07\n\x05_pathB\x08\n\x06_label\"l\n\x04\x44isk\x12\"\n\x06\x64\x65vice\x18\x01 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01R\x06\x64\x65vice\x12@\n\npartitions\x18\x02 \x03(\x0b\x32 .metalstack.api.v2.DiskPartitionR\npartitions\"\xd4\x01\n\x04Raid\x12\x1d\n\narray_name\x18\x01 \x01(\tR\tarrayName\x12\x18\n\x07\x64\x65vices\x18\x02 \x03(\tR\x07\x64\x65vices\x12?\n\x05level\x18\x03 \x01(\x0e\x32\x1c.metalstack.api.v2.RaidLevelB\x0b\xbaH\x08\x82\x01\x02\x10\x01\xc8\x01\x01R\x05level\x12:\n\x0e\x63reate_options\x18\x04 \x03(\tB\x13\xbaH\x10\x92\x01\r\x10 \x18\x01\"\x07r\x05\x10\x01\x18\x80\x01R\rcreateOptions\x12\x16\n\x06spares\x18\x05 \x01(\x05R\x06spares\"\xb6\x01\n\rDiskPartition\x12\x16\n\x06number\x18\x01 \x01(\rR\x06number\x12\x19\n\x05label\x18\x02 \x01(\tH\x00R\x05label\x88\x01\x01\x12\x12\n\x04size\x18\x03 \x01(\x04R\x04size\x12G\n\x08gpt_type\x18\x04 \x01(\x0e\x32\x1a.metalstack.api.v2.GPTTypeB\x0b\xbaH\x08\x82\x01\x02\x10\x01\xc8\x01\x01H\x01R\x07gptType\x88\x01\x01\x42\x08\n\x06_labelB\x0b\n\t_gpt_type\"\\\n\x0bVolumeGroup\x12\x1f\n\x04name\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04name\x12\x18\n\x07\x64\x65vices\x18\x02 \x03(\tR\x07\x64\x65vices\x12\x12\n\x04tags\x18\x03 \x03(\tR\x04tags\"\xb4\x01\n\rLogicalVolume\x12\x1f\n\x04name\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04name\x12-\n\x0cvolume_group\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01R\x0bvolumeGroup\x12\x12\n\x04size\x18\x03 \x01(\x04R\x04size\x12?\n\x08lvm_type\x18\x04 \x01(\x0e\x32\x1a.metalstack.api.v2.LVMTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x07lvmType*\x86\x01\n\x07LVMType\x12\x18\n\x14LVM_TYPE_UNSPECIFIED\x10\x00\x12\x1f\n\x0fLVM_TYPE_LINEAR\x10\x01\x1a\n\x82\xb2\x19\x06linear\x12!\n\x10LVM_TYPE_STRIPED\x10\x02\x1a\x0b\x82\xb2\x19\x07striped\x12\x1d\n\x0eLVM_TYPE_RAID1\x10\x03\x1a\t\x82\xb2\x19\x05raid1*\xc4\x01\n\x06\x46ormat\x12\x16\n\x12\x46ORMAT_UNSPECIFIED\x10\x00\x12\x19\n\x0b\x46ORMAT_VFAT\x10\x01\x1a\x08\x82\xb2\x19\x04vfat\x12\x19\n\x0b\x46ORMAT_EXT3\x10\x02\x1a\x08\x82\xb2\x19\x04\x65xt3\x12\x19\n\x0b\x46ORMAT_EXT4\x10\x03\x1a\x08\x82\xb2\x19\x04\x65xt4\x12\x19\n\x0b\x46ORMAT_SWAP\x10\x04\x1a\x08\x82\xb2\x19\x04swap\x12\x1b\n\x0c\x46ORMAT_TMPFS\x10\x05\x1a\t\x82\xb2\x19\x05tmpfs\x12\x19\n\x0b\x46ORMAT_NONE\x10\x06\x1a\x08\x82\xb2\x19\x04none*\xa3\x01\n\x07GPTType\x12\x18\n\x14GPT_TYPE_UNSPECIFIED\x10\x00\x12\x1b\n\rGPT_TYPE_BOOT\x10\x01\x1a\x08\x82\xb2\x19\x04\x65\x66\x30\x30\x12\x1c\n\x0eGPT_TYPE_LINUX\x10\x02\x1a\x08\x82\xb2\x19\x04\x38\x33\x30\x30\x12!\n\x13GPT_TYPE_LINUX_RAID\x10\x03\x1a\x08\x82\xb2\x19\x04\x66\x64\x30\x30\x12 \n\x12GPT_TYPE_LINUX_LVM\x10\x04\x1a\x08\x82\xb2\x19\x04\x38\x65\x30\x30*K\n\tRaidLevel\x12\x1a\n\x16RAID_LEVEL_UNSPECIFIED\x10\x00\x12\x10\n\x0cRAID_LEVEL_0\x10\x01\x12\x10\n\x0cRAID_LEVEL_1\x10\x02\x32\xf2\x02\n\x11\x46ilesystemService\x12p\n\x03Get\x12..metalstack.api.v2.FilesystemServiceGetRequest\x1a/.metalstack.api.v2.FilesystemServiceGetResponse\"\x08\xd8\xf3\x18\x02\xe0\xf3\x18\x02\x12s\n\x04List\x12/.metalstack.api.v2.FilesystemServiceListRequest\x1a\x30.metalstack.api.v2.FilesystemServiceListResponse\"\x08\xd8\xf3\x18\x02\xe0\xf3\x18\x02\x12v\n\x05Match\x12\x30.metalstack.api.v2.FilesystemServiceMatchRequest\x1a\x31.metalstack.api.v2.FilesystemServiceMatchResponse\"\x08\xd8\xf3\x18\x02\xe0\xf3\x18\x02\x42\xc5\x01\n\x15\x63om.metalstack.api.v2B\x0f\x46ilesystemProtoP\x01Z5github.com/metal-stack/api/go/metalstack/api/v2;apiv2\xa2\x02\x03MAX\xaa\x02\x11Metalstack.Api.V2\xca\x02\x11Metalstack\\Api\\V2\xe2\x02\x1dMetalstack\\Api\\V2\\GPBMetadata\xea\x02\x13Metalstack::Api::V2b\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"metalstack/api/v2/filesystem.proto\x12\x11metalstack.api.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\x1a(metalstack/api/v2/predefined_rules.proto\":\n\x1b\x46ilesystemServiceGetRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\"G\n\x1c\x46ilesystemServiceListRequest\x12 \n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x02id\x88\x01\x01\x42\x05\n\x03_id\"p\n\x1c\x46ilesystemServiceGetResponse\x12P\n\x11\x66ilesystem_layout\x18\x01 \x01(\x0b\x32#.metalstack.api.v2.FilesystemLayoutR\x10\x66ilesystemLayout\"s\n\x1d\x46ilesystemServiceListResponse\x12R\n\x12\x66ilesystem_layouts\x18\x01 \x03(\x0b\x32#.metalstack.api.v2.FilesystemLayoutR\x11\x66ilesystemLayouts\"\xce\x04\n\x10\x46ilesystemLayout\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x02id\x12+\n\x04meta\x18\x02 \x01(\x0b\x32\x17.metalstack.api.v2.MetaR\x04meta\x12$\n\x04name\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x01R\x0b\x64\x65scription\x88\x01\x01\x12?\n\x0b\x66ilesystems\x18\x05 \x03(\x0b\x32\x1d.metalstack.api.v2.FilesystemR\x0b\x66ilesystems\x12-\n\x05\x64isks\x18\x06 \x03(\x0b\x32\x17.metalstack.api.v2.DiskR\x05\x64isks\x12+\n\x04raid\x18\x07 \x03(\x0b\x32\x17.metalstack.api.v2.RaidR\x04raid\x12\x43\n\rvolume_groups\x18\x08 \x03(\x0b\x32\x1e.metalstack.api.v2.VolumeGroupR\x0cvolumeGroups\x12I\n\x0flogical_volumes\x18\t \x03(\x0b\x32 .metalstack.api.v2.LogicalVolumeR\x0elogicalVolumes\x12P\n\x0b\x63onstraints\x18\n \x01(\x0b\x32..metalstack.api.v2.FilesystemLayoutConstraintsR\x0b\x63onstraintsB\x07\n\x05_nameB\x0e\n\x0c_description\"\xc2\x01\n\x1b\x46ilesystemLayoutConstraints\x12\x14\n\x05sizes\x18\x01 \x03(\tR\x05sizes\x12R\n\x06images\x18\x02 \x03(\x0b\x32:.metalstack.api.v2.FilesystemLayoutConstraints.ImagesEntryR\x06images\x1a\x39\n\x0bImagesEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\xb9\x03\n\nFilesystem\x12#\n\x06\x64\x65vice\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x06\x64\x65vice\x12>\n\x06\x66ormat\x18\x02 \x01(\x0e\x32\x19.metalstack.api.v2.FormatB\x0b\xbaH\x08\x82\x01\x02\x10\x01\xc8\x01\x01R\x06\x66ormat\x12$\n\x04name\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x01R\x0b\x64\x65scription\x88\x01\x01\x12#\n\x04path\x18\x05 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80 H\x02R\x04path\x88\x01\x01\x12%\n\x05label\x18\x06 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01H\x03R\x05label\x88\x01\x01\x12\x38\n\rmount_options\x18\x07 \x03(\tB\x13\xbaH\x10\x92\x01\r\x10 \x18\x01\"\x07r\x05\x10\x01\x18\x80\x01R\x0cmountOptions\x12:\n\x0e\x63reate_options\x18\x08 \x03(\tB\x13\xbaH\x10\x92\x01\r\x10 \x18\x01\"\x07r\x05\x10\x01\x18\x80\x01R\rcreateOptionsB\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x07\n\x05_pathB\x08\n\x06_label\"l\n\x04\x44isk\x12\"\n\x06\x64\x65vice\x18\x01 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01R\x06\x64\x65vice\x12@\n\npartitions\x18\x02 \x03(\x0b\x32 .metalstack.api.v2.DiskPartitionR\npartitions\"\xd4\x01\n\x04Raid\x12\x1d\n\narray_name\x18\x01 \x01(\tR\tarrayName\x12\x18\n\x07\x64\x65vices\x18\x02 \x03(\tR\x07\x64\x65vices\x12?\n\x05level\x18\x03 \x01(\x0e\x32\x1c.metalstack.api.v2.RaidLevelB\x0b\xbaH\x08\x82\x01\x02\x10\x01\xc8\x01\x01R\x05level\x12:\n\x0e\x63reate_options\x18\x04 \x03(\tB\x13\xbaH\x10\x92\x01\r\x10 \x18\x01\"\x07r\x05\x10\x01\x18\x80\x01R\rcreateOptions\x12\x16\n\x06spares\x18\x05 \x01(\x05R\x06spares\"\xb6\x01\n\rDiskPartition\x12\x16\n\x06number\x18\x01 \x01(\rR\x06number\x12\x19\n\x05label\x18\x02 \x01(\tH\x00R\x05label\x88\x01\x01\x12\x12\n\x04size\x18\x03 \x01(\x04R\x04size\x12G\n\x08gpt_type\x18\x04 \x01(\x0e\x32\x1a.metalstack.api.v2.GPTTypeB\x0b\xbaH\x08\x82\x01\x02\x10\x01\xc8\x01\x01H\x01R\x07gptType\x88\x01\x01\x42\x08\n\x06_labelB\x0b\n\t_gpt_type\"\\\n\x0bVolumeGroup\x12\x1f\n\x04name\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04name\x12\x18\n\x07\x64\x65vices\x18\x02 \x03(\tR\x07\x64\x65vices\x12\x12\n\x04tags\x18\x03 \x03(\tR\x04tags\"\xb4\x01\n\rLogicalVolume\x12\x1f\n\x04name\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04name\x12-\n\x0cvolume_group\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01R\x0bvolumeGroup\x12\x12\n\x04size\x18\x03 \x01(\x04R\x04size\x12?\n\x08lvm_type\x18\x04 \x01(\x0e\x32\x1a.metalstack.api.v2.LVMTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x07lvmType*\x86\x01\n\x07LVMType\x12\x18\n\x14LVM_TYPE_UNSPECIFIED\x10\x00\x12\x1f\n\x0fLVM_TYPE_LINEAR\x10\x01\x1a\n\x82\xb2\x19\x06linear\x12!\n\x10LVM_TYPE_STRIPED\x10\x02\x1a\x0b\x82\xb2\x19\x07striped\x12\x1d\n\x0eLVM_TYPE_RAID1\x10\x03\x1a\t\x82\xb2\x19\x05raid1*\xc4\x01\n\x06\x46ormat\x12\x16\n\x12\x46ORMAT_UNSPECIFIED\x10\x00\x12\x19\n\x0b\x46ORMAT_VFAT\x10\x01\x1a\x08\x82\xb2\x19\x04vfat\x12\x19\n\x0b\x46ORMAT_EXT3\x10\x02\x1a\x08\x82\xb2\x19\x04\x65xt3\x12\x19\n\x0b\x46ORMAT_EXT4\x10\x03\x1a\x08\x82\xb2\x19\x04\x65xt4\x12\x19\n\x0b\x46ORMAT_SWAP\x10\x04\x1a\x08\x82\xb2\x19\x04swap\x12\x1b\n\x0c\x46ORMAT_TMPFS\x10\x05\x1a\t\x82\xb2\x19\x05tmpfs\x12\x19\n\x0b\x46ORMAT_NONE\x10\x06\x1a\x08\x82\xb2\x19\x04none*\xa3\x01\n\x07GPTType\x12\x18\n\x14GPT_TYPE_UNSPECIFIED\x10\x00\x12\x1b\n\rGPT_TYPE_BOOT\x10\x01\x1a\x08\x82\xb2\x19\x04\x65\x66\x30\x30\x12\x1c\n\x0eGPT_TYPE_LINUX\x10\x02\x1a\x08\x82\xb2\x19\x04\x38\x33\x30\x30\x12!\n\x13GPT_TYPE_LINUX_RAID\x10\x03\x1a\x08\x82\xb2\x19\x04\x66\x64\x30\x30\x12 \n\x12GPT_TYPE_LINUX_LVM\x10\x04\x1a\x08\x82\xb2\x19\x04\x38\x65\x30\x30*K\n\tRaidLevel\x12\x1a\n\x16RAID_LEVEL_UNSPECIFIED\x10\x00\x12\x10\n\x0cRAID_LEVEL_0\x10\x01\x12\x10\n\x0cRAID_LEVEL_1\x10\x02\x32\xfa\x01\n\x11\x46ilesystemService\x12p\n\x03Get\x12..metalstack.api.v2.FilesystemServiceGetRequest\x1a/.metalstack.api.v2.FilesystemServiceGetResponse\"\x08\xd8\xf3\x18\x02\xe0\xf3\x18\x02\x12s\n\x04List\x12/.metalstack.api.v2.FilesystemServiceListRequest\x1a\x30.metalstack.api.v2.FilesystemServiceListResponse\"\x08\xd8\xf3\x18\x02\xe0\xf3\x18\x02\x42\xc5\x01\n\x15\x63om.metalstack.api.v2B\x0f\x46ilesystemProtoP\x01Z5github.com/metal-stack/api/go/metalstack/api/v2;apiv2\xa2\x02\x03MAX\xaa\x02\x11Metalstack.Api.V2\xca\x02\x11Metalstack\\Api\\V2\xe2\x02\x1dMetalstack\\Api\\V2\\GPBMetadata\xea\x02\x13Metalstack::Api::V2b\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -65,16 +65,6 @@ _globals['_FILESYSTEMSERVICEGETREQUEST'].fields_by_name['id']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' _globals['_FILESYSTEMSERVICELISTREQUEST'].fields_by_name['id']._loaded_options = None _globals['_FILESYSTEMSERVICELISTREQUEST'].fields_by_name['id']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' - _globals['_FILESYSTEMSERVICEMATCHREQUEST'].oneofs_by_name['match']._loaded_options = None - _globals['_FILESYSTEMSERVICEMATCHREQUEST'].oneofs_by_name['match']._serialized_options = b'\272H\002\010\001' - _globals['_MATCHIMAGEANDSIZE'].fields_by_name['size']._loaded_options = None - _globals['_MATCHIMAGEANDSIZE'].fields_by_name['size']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' - _globals['_MATCHIMAGEANDSIZE'].fields_by_name['image']._loaded_options = None - _globals['_MATCHIMAGEANDSIZE'].fields_by_name['image']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' - _globals['_MATCHMACHINEANDFILESYSTEMLAYOUT'].fields_by_name['machine']._loaded_options = None - _globals['_MATCHMACHINEANDFILESYSTEMLAYOUT'].fields_by_name['machine']._serialized_options = b'\272H\005r\003\260\001\001' - _globals['_MATCHMACHINEANDFILESYSTEMLAYOUT'].fields_by_name['filesystem_layout']._loaded_options = None - _globals['_MATCHMACHINEANDFILESYSTEMLAYOUT'].fields_by_name['filesystem_layout']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' _globals['_FILESYSTEMLAYOUT'].fields_by_name['id']._loaded_options = None _globals['_FILESYSTEMLAYOUT'].fields_by_name['id']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' _globals['_FILESYSTEMLAYOUT'].fields_by_name['name']._loaded_options = None @@ -119,16 +109,14 @@ _globals['_FILESYSTEMSERVICE'].methods_by_name['Get']._serialized_options = b'\330\363\030\002\340\363\030\002' _globals['_FILESYSTEMSERVICE'].methods_by_name['List']._loaded_options = None _globals['_FILESYSTEMSERVICE'].methods_by_name['List']._serialized_options = b'\330\363\030\002\340\363\030\002' - _globals['_FILESYSTEMSERVICE'].methods_by_name['Match']._loaded_options = None - _globals['_FILESYSTEMSERVICE'].methods_by_name['Match']._serialized_options = b'\330\363\030\002\340\363\030\002' - _globals['_LVMTYPE']._serialized_start=3128 - _globals['_LVMTYPE']._serialized_end=3262 - _globals['_FORMAT']._serialized_start=3265 - _globals['_FORMAT']._serialized_end=3461 - _globals['_GPTTYPE']._serialized_start=3464 - _globals['_GPTTYPE']._serialized_end=3627 - _globals['_RAIDLEVEL']._serialized_start=3629 - _globals['_RAIDLEVEL']._serialized_end=3704 + _globals['_LVMTYPE']._serialized_start=2546 + _globals['_LVMTYPE']._serialized_end=2680 + _globals['_FORMAT']._serialized_start=2683 + _globals['_FORMAT']._serialized_end=2879 + _globals['_GPTTYPE']._serialized_start=2882 + _globals['_GPTTYPE']._serialized_end=3045 + _globals['_RAIDLEVEL']._serialized_start=3047 + _globals['_RAIDLEVEL']._serialized_end=3122 _globals['_FILESYSTEMSERVICEGETREQUEST']._serialized_start=160 _globals['_FILESYSTEMSERVICEGETREQUEST']._serialized_end=218 _globals['_FILESYSTEMSERVICELISTREQUEST']._serialized_start=220 @@ -137,32 +125,24 @@ _globals['_FILESYSTEMSERVICEGETRESPONSE']._serialized_end=405 _globals['_FILESYSTEMSERVICELISTRESPONSE']._serialized_start=407 _globals['_FILESYSTEMSERVICELISTRESPONSE']._serialized_end=522 - _globals['_FILESYSTEMSERVICEMATCHREQUEST']._serialized_start=525 - _globals['_FILESYSTEMSERVICEMATCHREQUEST']._serialized_end=770 - _globals['_MATCHIMAGEANDSIZE']._serialized_start=772 - _globals['_MATCHIMAGEANDSIZE']._serialized_end=859 - _globals['_MATCHMACHINEANDFILESYSTEMLAYOUT']._serialized_start=861 - _globals['_MATCHMACHINEANDFILESYSTEMLAYOUT']._serialized_end=988 - _globals['_FILESYSTEMSERVICEMATCHRESPONSE']._serialized_start=990 - _globals['_FILESYSTEMSERVICEMATCHRESPONSE']._serialized_end=1104 - _globals['_FILESYSTEMLAYOUT']._serialized_start=1107 - _globals['_FILESYSTEMLAYOUT']._serialized_end=1697 - _globals['_FILESYSTEMLAYOUTCONSTRAINTS']._serialized_start=1700 - _globals['_FILESYSTEMLAYOUTCONSTRAINTS']._serialized_end=1894 - _globals['_FILESYSTEMLAYOUTCONSTRAINTS_IMAGESENTRY']._serialized_start=1837 - _globals['_FILESYSTEMLAYOUTCONSTRAINTS_IMAGESENTRY']._serialized_end=1894 - _globals['_FILESYSTEM']._serialized_start=1897 - _globals['_FILESYSTEM']._serialized_end=2338 - _globals['_DISK']._serialized_start=2340 - _globals['_DISK']._serialized_end=2448 - _globals['_RAID']._serialized_start=2451 - _globals['_RAID']._serialized_end=2663 - _globals['_DISKPARTITION']._serialized_start=2666 - _globals['_DISKPARTITION']._serialized_end=2848 - _globals['_VOLUMEGROUP']._serialized_start=2850 - _globals['_VOLUMEGROUP']._serialized_end=2942 - _globals['_LOGICALVOLUME']._serialized_start=2945 - _globals['_LOGICALVOLUME']._serialized_end=3125 - _globals['_FILESYSTEMSERVICE']._serialized_start=3707 - _globals['_FILESYSTEMSERVICE']._serialized_end=4077 + _globals['_FILESYSTEMLAYOUT']._serialized_start=525 + _globals['_FILESYSTEMLAYOUT']._serialized_end=1115 + _globals['_FILESYSTEMLAYOUTCONSTRAINTS']._serialized_start=1118 + _globals['_FILESYSTEMLAYOUTCONSTRAINTS']._serialized_end=1312 + _globals['_FILESYSTEMLAYOUTCONSTRAINTS_IMAGESENTRY']._serialized_start=1255 + _globals['_FILESYSTEMLAYOUTCONSTRAINTS_IMAGESENTRY']._serialized_end=1312 + _globals['_FILESYSTEM']._serialized_start=1315 + _globals['_FILESYSTEM']._serialized_end=1756 + _globals['_DISK']._serialized_start=1758 + _globals['_DISK']._serialized_end=1866 + _globals['_RAID']._serialized_start=1869 + _globals['_RAID']._serialized_end=2081 + _globals['_DISKPARTITION']._serialized_start=2084 + _globals['_DISKPARTITION']._serialized_end=2266 + _globals['_VOLUMEGROUP']._serialized_start=2268 + _globals['_VOLUMEGROUP']._serialized_end=2360 + _globals['_LOGICALVOLUME']._serialized_start=2363 + _globals['_LOGICALVOLUME']._serialized_end=2543 + _globals['_FILESYSTEMSERVICE']._serialized_start=3125 + _globals['_FILESYSTEMSERVICE']._serialized_end=3375 # @@protoc_insertion_point(module_scope) diff --git a/python/metalstack/api/v2/filesystem_pb2.pyi b/python/metalstack/api/v2/filesystem_pb2.pyi index c9cc5fee..1de31ad9 100644 --- a/python/metalstack/api/v2/filesystem_pb2.pyi +++ b/python/metalstack/api/v2/filesystem_pb2.pyi @@ -84,36 +84,6 @@ class FilesystemServiceListResponse(_message.Message): filesystem_layouts: _containers.RepeatedCompositeFieldContainer[FilesystemLayout] def __init__(self, filesystem_layouts: _Optional[_Iterable[_Union[FilesystemLayout, _Mapping]]] = ...) -> None: ... -class FilesystemServiceMatchRequest(_message.Message): - __slots__ = ("size_and_image", "machine_and_filesystemlayout") - SIZE_AND_IMAGE_FIELD_NUMBER: _ClassVar[int] - MACHINE_AND_FILESYSTEMLAYOUT_FIELD_NUMBER: _ClassVar[int] - size_and_image: MatchImageAndSize - machine_and_filesystemlayout: MatchMachineAndFilesystemLayout - def __init__(self, size_and_image: _Optional[_Union[MatchImageAndSize, _Mapping]] = ..., machine_and_filesystemlayout: _Optional[_Union[MatchMachineAndFilesystemLayout, _Mapping]] = ...) -> None: ... - -class MatchImageAndSize(_message.Message): - __slots__ = ("size", "image") - SIZE_FIELD_NUMBER: _ClassVar[int] - IMAGE_FIELD_NUMBER: _ClassVar[int] - size: str - image: str - def __init__(self, size: _Optional[str] = ..., image: _Optional[str] = ...) -> None: ... - -class MatchMachineAndFilesystemLayout(_message.Message): - __slots__ = ("machine", "filesystem_layout") - MACHINE_FIELD_NUMBER: _ClassVar[int] - FILESYSTEM_LAYOUT_FIELD_NUMBER: _ClassVar[int] - machine: str - filesystem_layout: str - def __init__(self, machine: _Optional[str] = ..., filesystem_layout: _Optional[str] = ...) -> None: ... - -class FilesystemServiceMatchResponse(_message.Message): - __slots__ = ("filesystem_layout",) - FILESYSTEM_LAYOUT_FIELD_NUMBER: _ClassVar[int] - filesystem_layout: FilesystemLayout - def __init__(self, filesystem_layout: _Optional[_Union[FilesystemLayout, _Mapping]] = ...) -> None: ... - class FilesystemLayout(_message.Message): __slots__ = ("id", "meta", "name", "description", "filesystems", "disks", "raid", "volume_groups", "logical_volumes", "constraints") ID_FIELD_NUMBER: _ClassVar[int]