From 0140104fd29df7672f41a2a280d6d4b3af708791 Mon Sep 17 00:00:00 2001 From: Stefan Majer Date: Sat, 23 May 2026 13:46:17 +0200 Subject: [PATCH 1/4] Update deps --- go.mod | 19 ++++++++++--------- go.sum | 38 ++++++++++++++++++-------------------- proto/Makefile | 2 +- proto/buf.gen.yaml | 2 +- 4 files changed, 30 insertions(+), 31 deletions(-) diff --git a/go.mod b/go.mod index 57a363cf..ab2c1032 100644 --- a/go.mod +++ b/go.mod @@ -5,7 +5,7 @@ go 1.26 require ( buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.36.11-20260415201107-50325440f8f2.1 buf.build/go/protovalidate v1.2.0 - connectrpc.com/connect v1.19.2 + connectrpc.com/connect v1.20.0 github.com/bufbuild/protocompile v0.14.1 github.com/go-task/slim-sprig/v3 v3.0.0 github.com/golang-jwt/jwt/v5 v5.3.1 @@ -17,19 +17,20 @@ require ( ) require ( - cel.dev/expr v0.25.1 // indirect + cel.dev/expr v0.25.2 // indirect github.com/antlr4-go/antlr/v4 v4.13.1 // indirect github.com/davecgh/go-spew v1.1.1 // indirect - github.com/google/cel-go v0.28.0 // indirect - github.com/klauspost/compress v1.18.5 // indirect + github.com/google/cel-go v0.28.1 // indirect + github.com/klauspost/compress v1.18.6 // indirect github.com/kr/pretty v0.3.1 // indirect - github.com/minio/minlz v1.1.0 // indirect + github.com/minio/minlz v1.1.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect github.com/stretchr/objx v0.5.3 // indirect - golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f // indirect - golang.org/x/text v0.36.0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20260420184626-e10c466a9529 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20260420184626-e10c466a9529 // indirect + go.yaml.in/yaml/v3 v3.0.4 // indirect + golang.org/x/exp v0.0.0-20260508232706-74f9aab9d74a // indirect + golang.org/x/text v0.37.0 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20260523011958-0a33c5d7ca68 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20260523011958-0a33c5d7ca68 // indirect gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/go.sum b/go.sum index ed0b7f20..3156022c 100644 --- a/go.sum +++ b/go.sum @@ -1,13 +1,11 @@ buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.36.11-20260415201107-50325440f8f2.1 h1:s6hzCXtND/ICdGPTMGk7C+/BFlr2Jg5GyH0NKf4XGXg= buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.36.11-20260415201107-50325440f8f2.1/go.mod h1:tvtbpgaVXZX4g6Pn+AnzFycuRK3MOz5HJfEGeEllXYM= -buf.build/go/protovalidate v1.1.3 h1:m2GVEgQWd7rk+vIoAZ+f0ygGjvQTuqPQapBBdcpWVPE= -buf.build/go/protovalidate v1.1.3/go.mod h1:9XIuohWz+kj+9JVn3WQneHA5LZP50mjvneZMnbLkiIE= buf.build/go/protovalidate v1.2.0 h1:DQVrUWkmGTBij+kOYv/x2LLxwcLaGKMdzShj1/6/3H0= buf.build/go/protovalidate v1.2.0/go.mod h1:7rYiQEhqvAipoazpVNBBH2S2f8bjG4huMVy1V2Yofn4= -cel.dev/expr v0.25.1 h1:1KrZg61W6TWSxuNZ37Xy49ps13NUovb66QLprthtwi4= -cel.dev/expr v0.25.1/go.mod h1:hrXvqGP6G6gyx8UAHSHJ5RGk//1Oj5nXQ2NI02Nrsg4= -connectrpc.com/connect v1.19.2 h1:McQ83FGdzL+t60peksi0gXC7MQ/iLKgLduAnThbM0mo= -connectrpc.com/connect v1.19.2/go.mod h1:tN20fjdGlewnSFeZxLKb0xwIZ6ozc3OQs2hTXy4du9w= +cel.dev/expr v0.25.2 h1:K6j46C81hXtZQfuX60cVWQFBJahKSE2gfRbNuvr5bFs= +cel.dev/expr v0.25.2/go.mod h1:hrXvqGP6G6gyx8UAHSHJ5RGk//1Oj5nXQ2NI02Nrsg4= +connectrpc.com/connect v1.20.0 h1:6TNDAB+WeNd2uolWNlYczB5E0KNNaVMNUEx8JEUsPmQ= +connectrpc.com/connect v1.20.0/go.mod h1:A2ygJrukXwWy32vkCAAHNVguZrqZ+jeZ9rGRnGR4dN4= github.com/antlr4-go/antlr/v4 v4.13.1 h1:SqQKkuVZ+zWkMMNkjy5FZe5mr5WURWnlpmOuzYWrPrQ= github.com/antlr4-go/antlr/v4 v4.13.1/go.mod h1:GKmUxMtwp6ZgGwZSva4eWPC5mS6vUAmOABFgjdkM7Nw= github.com/brianvoe/gofakeit/v6 v6.28.0 h1:Xib46XXuQfmlLS2EXRuJpqcw8St6qSZz75OUo0tgAW4= @@ -21,14 +19,14 @@ github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1v github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8= github.com/golang-jwt/jwt/v5 v5.3.1 h1:kYf81DTWFe7t+1VvL7eS+jKFVWaUnK9cB1qbwn63YCY= github.com/golang-jwt/jwt/v5 v5.3.1/go.mod h1:fxCRLWMO43lRc8nhHWY6LGqRcf+1gQWArsqaEUEa5bE= -github.com/google/cel-go v0.28.0 h1:KjSWstCpz/MN5t4a8gnGJNIYUsJRpdi/r97xWDphIQc= -github.com/google/cel-go v0.28.0/go.mod h1:X0bD6iVNR8pkROSOoHVdgTkzmRcosof7WQqCD6wcMc8= +github.com/google/cel-go v0.28.1 h1:YWIwi77J4xIsYUwAF/iIuS6haffzIHS8yWI8glSbLWM= +github.com/google/cel-go v0.28.1/go.mod h1:X0bD6iVNR8pkROSOoHVdgTkzmRcosof7WQqCD6wcMc8= github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/klauspost/compress v1.18.5 h1:/h1gH5Ce+VWNLSWqPzOVn6XBO+vJbCNGvjoaGBFW2IE= -github.com/klauspost/compress v1.18.5/go.mod h1:cwPg85FWrGar70rWktvGQj8/hthj3wpl0PGDogxkrSQ= +github.com/klauspost/compress v1.18.6 h1:2jupLlAwFm95+YDR+NwD2MEfFO9d4z4Prjl1XXDjuao= +github.com/klauspost/compress v1.18.6/go.mod h1:cwPg85FWrGar70rWktvGQj8/hthj3wpl0PGDogxkrSQ= github.com/klauspost/connect-compress/v2 v2.1.1 h1:ycZNp4rWOZBodVE2Ls5AzK4aHkyK+GteEfzRZgKNs+c= github.com/klauspost/connect-compress/v2 v2.1.1/go.mod h1:9oilsPHJMzGKkjafSBk9J7iVo4mO+dw0G0KSdVpnlVE= github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= @@ -38,8 +36,8 @@ github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/minio/minlz v1.1.0 h1:rUOGu3EP4EqJC5k3qCsIwEnZiJULKqtRyDdqbhlvMmQ= -github.com/minio/minlz v1.1.0/go.mod h1:qT0aEB35q79LLornSzeDH75LBf3aH1MV+jB5w9Wasec= +github.com/minio/minlz v1.1.1 h1:OGmft1V6AnI/Wme332U6bhG54nxEan+VFgkD7lat4KM= +github.com/minio/minlz v1.1.1/go.mod h1:qT0aEB35q79LLornSzeDH75LBf3aH1MV+jB5w9Wasec= github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= @@ -53,14 +51,14 @@ github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= go.yaml.in/yaml/v3 v3.0.4 h1:tfq32ie2Jv2UxXFdLJdh3jXuOzWiL1fo0bu/FbuKpbc= go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg= -golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f h1:W3F4c+6OLc6H2lb//N1q4WpJkhzJCK5J6kUi1NTVXfM= -golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f/go.mod h1:J1xhfL/vlindoeF/aINzNzt2Bket5bjo9sdOYzOsU80= -golang.org/x/text v0.36.0 h1:JfKh3XmcRPqZPKevfXVpI1wXPTqbkE5f7JA92a55Yxg= -golang.org/x/text v0.36.0/go.mod h1:NIdBknypM8iqVmPiuco0Dh6P5Jcdk8lJL0CUebqK164= -google.golang.org/genproto/googleapis/api v0.0.0-20260420184626-e10c466a9529 h1:zUWMZsvo/IJcD1t6MNCPO/azZTwz0TvwCBqr5aifoVY= -google.golang.org/genproto/googleapis/api v0.0.0-20260420184626-e10c466a9529/go.mod h1:a5OGAgyRr4lqco7AG9hQM9Fwh0N2ZV4grR0eXFEsXQg= -google.golang.org/genproto/googleapis/rpc v0.0.0-20260420184626-e10c466a9529 h1:XF8+t6QQiS0o9ArVan/HW8Q7cycNPGsJf6GA2nXxYAg= -google.golang.org/genproto/googleapis/rpc v0.0.0-20260420184626-e10c466a9529/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8= +golang.org/x/exp v0.0.0-20260508232706-74f9aab9d74a h1:+3jdDGGB8NGb1Zktc737jlt3/A5f6UlwSzmvqUuufxw= +golang.org/x/exp v0.0.0-20260508232706-74f9aab9d74a/go.mod h1:d2fgXJLVs4dYDHUk5lwMIfzRzSrWCfGZb0ZqeLa/Vcw= +golang.org/x/text v0.37.0 h1:Cqjiwd9eSg8e0QAkyCaQTNHFIIzWtidPahFWR83rTrc= +golang.org/x/text v0.37.0/go.mod h1:a5sjxXGs9hsn/AJVwuElvCAo9v8QYLzvavO5z2PiM38= +google.golang.org/genproto/googleapis/api v0.0.0-20260523011958-0a33c5d7ca68 h1:WVVw1Nl19li0fMX++FJ3ye1z9+S1N35QODDy5qpnaXw= +google.golang.org/genproto/googleapis/api v0.0.0-20260523011958-0a33c5d7ca68/go.mod h1:1dCETSCY2YKZNXQE3h4fun3TYwF5p8jejRKZgfWAgAY= +google.golang.org/genproto/googleapis/rpc v0.0.0-20260523011958-0a33c5d7ca68 h1:PvEgGJf9C/1u5CHkInMg7UFYYUoiaQmW2LbtH0pjB78= +google.golang.org/genproto/googleapis/rpc v0.0.0-20260523011958-0a33c5d7ca68/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8= google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE= google.golang.org/protobuf v1.36.11/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= diff --git a/proto/Makefile b/proto/Makefile index c7b1e0b0..93484a50 100644 --- a/proto/Makefile +++ b/proto/Makefile @@ -1,5 +1,5 @@ MAKEFLAGS += --no-print-directory -BUF_VERSION := 1.68.4 +BUF_VERSION := 1.69.0 _buf: docker run --rm \ diff --git a/proto/buf.gen.yaml b/proto/buf.gen.yaml index 6fd6b372..a5275673 100644 --- a/proto/buf.gen.yaml +++ b/proto/buf.gen.yaml @@ -16,7 +16,7 @@ plugins: - remote: buf.build/protocolbuffers/go:v1.36.11 out: ../go opt: paths=source_relative - - remote: buf.build/connectrpc/go:v1.19.2 + - remote: buf.build/connectrpc/go:v1.20.0 out: ../go opt: paths=source_relative,simple # python From 11510538af3689958aa9f841b66fa07b1ddb9dec Mon Sep 17 00:00:00 2001 From: Stefan Majer Date: Sat, 23 May 2026 17:23:23 +0200 Subject: [PATCH 2/4] Fix inconsistencies and update dependencies --- doc/index.html | 179 ++------------ findings.md | 205 ++++++++++++++++ go/metalstack/admin/v2/machine.pb.go | 6 +- go/metalstack/api/v2/common.pb.go | 2 +- go/metalstack/api/v2/image.pb.go | 8 +- go/metalstack/api/v2/ip.pb.go | 2 +- go/metalstack/api/v2/machine.pb.go | 20 +- go/metalstack/api/v2/partition.pb.go | 12 +- go/metalstack/api/v2/predefined_rules.pb.go | 2 +- go/metalstack/api/v2/project.pb.go | 6 +- go/metalstack/api/v2/tenant.pb.go | 2 +- go/metalstack/api/v2/vpn.pb.go | 12 +- go/metalstack/infra/v2/event.pb.go | 228 ++---------------- js/metalstack/admin/v2/machine_pb.d.ts | 6 +- js/metalstack/admin/v2/machine_pb.ts | 6 +- js/metalstack/api/v2/common_pb.d.ts | 2 +- js/metalstack/api/v2/common_pb.js | 2 +- js/metalstack/api/v2/common_pb.ts | 2 +- js/metalstack/api/v2/image_pb.d.ts | 8 +- js/metalstack/api/v2/image_pb.ts | 8 +- js/metalstack/api/v2/ip_pb.d.ts | 2 +- js/metalstack/api/v2/ip_pb.ts | 2 +- js/metalstack/api/v2/machine_pb.d.ts | 14 +- js/metalstack/api/v2/machine_pb.js | 2 +- js/metalstack/api/v2/machine_pb.ts | 16 +- js/metalstack/api/v2/partition_pb.d.ts | 6 +- js/metalstack/api/v2/partition_pb.js | 2 +- js/metalstack/api/v2/partition_pb.ts | 8 +- js/metalstack/api/v2/predefined_rules_pb.d.ts | 2 +- js/metalstack/api/v2/predefined_rules_pb.js | 2 +- js/metalstack/api/v2/predefined_rules_pb.ts | 2 +- js/metalstack/api/v2/project_pb.d.ts | 6 +- js/metalstack/api/v2/project_pb.ts | 6 +- js/metalstack/api/v2/tenant_pb.d.ts | 2 +- js/metalstack/api/v2/tenant_pb.ts | 2 +- js/metalstack/api/v2/vpn_pb.js | 4 +- js/metalstack/api/v2/vpn_pb.ts | 4 +- js/metalstack/infra/v2/event_pb.d.ts | 119 +-------- js/metalstack/infra/v2/event_pb.js | 94 +------- js/metalstack/infra/v2/event_pb.ts | 143 +---------- proto/metalstack/admin/v2/machine.proto | 6 +- proto/metalstack/api/v2/common.proto | 2 +- proto/metalstack/api/v2/image.proto | 8 +- proto/metalstack/api/v2/ip.proto | 2 +- proto/metalstack/api/v2/machine.proto | 22 +- proto/metalstack/api/v2/partition.proto | 8 +- .../metalstack/api/v2/predefined_rules.proto | 2 +- proto/metalstack/api/v2/project.proto | 6 +- proto/metalstack/api/v2/tenant.proto | 2 +- proto/metalstack/api/v2/vpn.proto | 8 +- proto/metalstack/infra/v2/event.proto | 41 +--- python/metalstack/api/v2/machine_pb2.py | 74 +++--- python/metalstack/api/v2/partition_pb2.py | 34 +-- python/metalstack/api/v2/vpn_pb2.py | 14 +- python/metalstack/api/v2/vpn_pb2.pyi | 2 + python/metalstack/infra/v2/event_pb2.py | 47 +--- python/metalstack/infra/v2/event_pb2.pyi | 49 +--- 57 files changed, 484 insertions(+), 999 deletions(-) create mode 100644 findings.md diff --git a/doc/index.html b/doc/index.html index 5c16a203..a3305fad 100644 --- a/doc/index.html +++ b/doc/index.html @@ -2632,14 +2632,6 @@

Table of Contents

MEventServiceSendResponse -
  • - MMachineProvisioningEvent -
  • - - -
  • - EProvisioningEventType -
  • @@ -2821,7 +2813,7 @@

    File-level Extensio bool .buf.validate.StringRules 80048951 -

    Macaddress returns true if the given string is a valid macadress

    +

    Macaddress returns true if the given string is a valid macaddress

    @@ -3342,7 +3334,7 @@

    File-level Extensions

    MachineRole .google.protobuf.MethodOptions 51006 -

    MachineRole are used to define which infra role a microservice must provide to call this method

    +

    MachineRole are used to define which machine role a microservice must provide to call this method

    @@ -6383,14 +6375,14 @@

    Image

    id string -

    Id of this imageLayout

    +

    Id of this image

    meta Meta -

    Meta for this ip

    +

    Meta for this image

    @@ -6404,14 +6396,14 @@

    Image

    name string optional -

    Name of this imageLayout

    +

    Name of this image

    description string optional -

    Description of this imageLayout

    +

    Description of this image

    @@ -7576,7 +7568,7 @@

    IPServiceUpdateRequest

    ip string -

    Ip the ip to update

    +

    Ip the ip address to update

    @@ -8888,7 +8880,7 @@

    Partition

    meta Meta -

    Meta for this ip

    +

    Meta for this partition

    @@ -9041,7 +9033,7 @@

    PartitionServiceGetRespon partition Partition -

    Ip the partition

    +

    Partition is the partition

    @@ -9089,7 +9081,7 @@

    PartitionServiceListResp partitions Partition repeated -

    Ips the partitions

    +

    Partitions are the partitions

    @@ -11145,7 +11137,7 @@

    MachineServiceCreateReque string optional

    UUID if this field is set, this specific machine will be allocated if it is not in available state and not currently allocated. -this field overrules size and partition. +this field takes precedence over size and partition. Can only be used with ADMIN_ROLE_EDITOR

    @@ -11279,7 +11271,7 @@

    MachineServiceCreateReque

    MachineServiceCreateResponse

    -

    MachineServiceCreateResponse is the request payload for a machine create response

    +

    MachineServiceCreateResponse is the response payload for a machine create request

    @@ -11334,7 +11326,7 @@

    MachineServiceDeleteReque

    MachineServiceDeleteResponse

    -

    MachineServiceDeleteResponse is the request payload for a machine delete response

    +

    MachineServiceDeleteResponse is the response payload for a machine delete request

    @@ -11347,7 +11339,7 @@

    MachineServiceDeleteResp

    - + @@ -11451,7 +11443,7 @@

    MachineServiceGetRequest

    MachineServiceGetResponse -

    MachineServiceGetResponse is the request payload for a machine get response

    +

    MachineServiceGetResponse is the response payload for a machine get request

    machine Machine

    Machine which was deleteds

    Machine which was deleted

    @@ -11506,7 +11498,7 @@

    MachineServiceListRequestMachineServiceListResponse

    -

    MachineServiceListResponse is the request payload for a machine list response

    +

    MachineServiceListResponse is the response payload for a machine list request

    @@ -11589,7 +11581,7 @@

    MachineServiceUpdateReque

    MachineServiceUpdateResponse

    -

    MachineServiceUpdateResponse is the request payload for a machine update response

    +

    MachineServiceUpdateResponse is the response payload for a machine update request

    @@ -12357,7 +12349,7 @@

    MachineServiceGetRequestMachineServiceGetResponse

    -

    MachineServiceGetResponse is the request payload for a machine get response

    +

    MachineServiceGetResponse is the response payload for a machine get request

    @@ -12394,7 +12386,7 @@

    MachineServiceListBMCR

    - + @@ -12492,7 +12484,7 @@

    MachineServiceListRequest

    MachineServiceListResponse

    -

    MachineServiceListResponse is the request payload for a machine list response

    +

    MachineServiceListResponse is the response payload for a machine list request

    query metalstack.api.v2.MachineBMCQuery

    Query to list one ore more bmcs of more machines

    Query to list one ore more bmcs of many machines

    @@ -13816,7 +13808,7 @@

    ProjectServiceDeleteReque

    - + @@ -13930,7 +13922,7 @@

    ProjectServiceInvit

    ProjectServiceInviteAcceptResponse

    -

    ProjectServiceInvitesListResponse is the response payload to a accept invite request

    +

    ProjectServiceInviteAcceptResponse is the response payload to a accept invite request

    project string

    Project is the uuid of the project to get

    Project is the uuid of the project to delete

    @@ -14078,7 +14070,7 @@

    ProjectServiceInviteReque

    ProjectServiceInviteResponse

    -

    ProjectServiceInviteRequest is the response payload to a invite member request

    +

    ProjectServiceInviteResponse is the response payload to a invite member request

    @@ -18081,7 +18073,7 @@

    TenantServiceInviteA

    TenantServiceInviteAcceptResponse

    -

    TenantServiceInvitesListResponse is the response payload to a accept invite request

    +

    TenantServiceInviteAcceptResponse is the response payload to a accept invite request

    @@ -20809,7 +20801,7 @@

    EventServiceSen

    - + @@ -20852,128 +20844,7 @@

    EventServiceSendResponseMachineProvisioningEvent

    -

    MachineProvisioningEvent contains details about an event.

    - -
    valueMachineProvisioningEventmetalstack.api.v2.MachineProvisioningEvent

    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    FieldTypeLabelDescription
    timegoogle.protobuf.Timestamp

    Time the event occurred at

    eventProvisioningEventType

    Event that occurred

    messagestring

    Message describes the event in more detail

    - - - - - - - -

    ProvisioningEventType

    -

    ProvisioningEventType is a short description of a machine event.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    NameNumberDescription
    PROVISIONING_EVENT_TYPE_UNSPECIFIED0

    PROVISIONING_EVENT_TYPE_UNSPECIFIED is unspecified

    PROVISIONING_EVENT_TYPE_ALIVE1

    PROVISIONING_EVENT_TYPE_ALIVE means the machine has reported itself to the API not long ago

    PROVISIONING_EVENT_TYPE_CRASHED2

    PROVISIONING_EVENT_TYPE_CRASHED means an irregularity in the machine's lifecycle

    PROVISIONING_EVENT_TYPE_PXE_BOOTING3

    PROVISIONING_EVENT_TYPE_PXE_BOOTING is sent when an unprovisioned machine requests a boot image via PXE

    PROVISIONING_EVENT_TYPE_PLANNED_REBOOT4

    PROVISIONING_EVENT_TYPE_PLANNED_REBOOT means the machine was scheduled for reboot

    PROVISIONING_EVENT_TYPE_PREPARING5

    PROVISIONING_EVENT_TYPE_PREPARING means the metal-hammer has started

    PROVISIONING_EVENT_TYPE_REGISTERING6

    PROVISIONING_EVENT_TYPE_REGISTERING means the metal-hammer is attempting to register the machine at the API

    PROVISIONING_EVENT_TYPE_WAITING7

    PROVISIONING_EVENT_TYPE_WAITING means the machine has successfully reached the state where it is waiting for allocation

    PROVISIONING_EVENT_TYPE_INSTALLING8

    PROVISIONING_EVENT_TYPE_INSTALLING means the machine was allocated and the requested OS is being installed

    PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL9

    PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL means the machine has successfully been installed and is now booting into the new OS

    PROVISIONING_EVENT_TYPE_PHONED_HOME10

    PROVISIONING_EVENT_TYPE_PHONED_HOME is sent periodically by an allocated machine to indicate its liveliness

    PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM11

    PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM means the machine was freed and is about to return into the pool of waiting machines

    diff --git a/findings.md b/findings.md new file mode 100644 index 00000000..81f19321 --- /dev/null +++ b/findings.md @@ -0,0 +1,205 @@ +# Proto API Findings + +Prompt: please identify inconsistencies and logical problems and write them into findings.md + +This document captures inconsistencies and logical problems identified across the proto API definitions. + +--- + +## 1. Comment Mismatches with Field / Message Purpose + +### C1. partition.proto - "Meta for this ip" on Partition message (line 27)✅ + +``` +// Meta for this ip +Meta meta = 2; +``` + +The field belongs to the `Partition` message but the comment says "ip". Should be "Meta for this partition". + +### C2. partition.proto - "Ip the partition" on PartitionServiceGetResponse (line 87)✅ + +``` +// Ip the partition +Machine machine = 1; +``` +Comment says "Ip" instead of "Partition". + +### C3. partition.proto - "Ips the partitions" on PartitionServiceListResponse (line 92)✅ +``` +// Ips the partitions +repeated Machine machines = 1; +``` +Comment says "Ips" instead of "Partitions". + +### C4. image.proto - Multiple wrong references ("imageLayout" and "ip")✅ +- Line 70: `// Id of this imageLayout` should say "this image" +- Line 73: `// Meta for this ip` should say "this image" +- Lines 76-78: `// Name of this imageLayout` and `// Description of this imageLayout` should say "this image" + +### C5. project.proto - Delete and Update request comments say "to get"✅ +- Line 191 (`ProjectServiceDeleteRequest`, `uuid` field): `// Project is the uuid of the project to get` should say "to delete" +- Line 203 (`ProjectServiceUpdateRequest`, `uuid` field): same comment, should say "to update" + +### C6. version.proto comments (lines 22-27) - Validation misuse +All four fields (`version`, `revision`, `git_sha1`, `build_date`) use `is_description` which is semantically wrong. These are structured data (semantic version, revision, git SHA1, build date), not free-form description text. + +### C7. machine.proto - `firewall_spec` non-optional with conditional comment +- Line 147-148: `FirewallSpec firewall_spec = 18;` is non-optional, but the comment says `"if allocationType is firewall"`. Since it's not optional, an empty `FirewallSpec` is always sent regardless of `allocation_type`, making the conditional comment misleading. + +### C8. response messages say "request payload"✅ +All machine response messages incorrectly say "request payload" in their comments: +- `MachineServiceGetResponse` (line 73): "request payload" → "response payload" +- `MachineServiceCreateResponse` (line 158): same +- `MachineServiceUpdateResponse` (line 198): same +- `MachineServiceListResponse` (line 212): same +- `MachineServiceDeleteResponse` (line 226): same +- Same pattern in admin/v2/machine.proto lines 57 and 72 + +### C9. machine.proto - "deleteds" typo (line 228)✅ +``` +// Machine which was deleteds +``` + +### C10. common.proto - "Labels consists labels" (line 125) +``` +// Labels consists labels +``` + +### C11. common.proto - "infra role" vs "machine role" (line 104)✅ +``` +// MachineRole are used to define which infra role a microservice must provide to call this method +``` +Should say "which **machine** role" since the extension is for `MachineRole`. + +### C12. project.proto - Wrong type in comment (line 232)✅ +``` +// ProjectServiceInviteRequest is the response payload to a invite member request +``` +Comment says "ProjectServiceInviteRequest" but this is the `InviteResponse` message. + +### C13. project.proto - Wrong type in comment (line 306)✅ +``` +// ProjectServiceInvitesListResponse is the response payload to a accept invite request +``` +Comment says "InvitesListResponse" but this is the `InviteAcceptResponse` message. + +### C14. tenant.proto - Wrong type in comment (line 292)✅ +``` +// TenantServiceInvitesListResponse is the response payload to a accept invite request +``` +Same issue as C13. + +### C15. ip.proto - Awkward comment (lines 121-122)✅ +``` +// Ip the ip to update +``` +Should read "ID of the IP to update" or "IP address to update". + +### C16. machine.proto - "overrules" nonstandard word (line 85)✅ +``` +// this field overrules size and partition. +``` +Should be "overrides" or "takes precedence over". + +### C17. admin/v2/machine.proto - Grammar errors (line 105)✅ +``` +// Query to list one ore more bmcs of more machines +``` +"ore" → "or", "many machines" likely intended instead of "more machines". + +### C18. machine.proto - "store" should be "stored" (lines 112, 178, 332)✅ +``` +// At most 50 keys can be store. +``` +Should be "stored". + +### C19. predefined_rules.proto - "macadress" typo (line 11)✅ +Missing second "s": should be "macaddress". + +--- + +## 2. Validation Rule Misuse + +### V1. machine.proto - BMC fields use `is_description` (lines 279-287) +`MachineBMC` has six fields (`user`, `password`, `interface`, `version`, `power_state`, `address`) all validated with `is_description` (a rule meaning `size() <= 256`). This is wrong: +- `user` (BMC username) should use `is_name` or a dedicated username rule +- `password` should use min/max length validation +- `interface` should use a network interface name validation rule +- `version` should use a version-like pattern validation +- `power_state` should have a reasonable length constraint +- `address` at line 289 already uses `host_and_port` which is correct — only 5 of 6 fields are misvalidated + +### V2. machine.proto - BIOS fields use `is_description` (lines 579-581) +`MachineBios` fields `version`, `vendor`, and `date` all use `is_description`. These are BIOS identifiers, not descriptions. + +### V3. machine.proto - FRU fields all use `is_description` (lines 593-607) +All eight fields in `MachineFRU` (`chassis_part_number`, `chassis_part_serial`, `board_mfg`, `board_mfg_serial`, `board_part_number`, `product_manufacturer`, `product_part_number`, `product_serial`) use `is_description`. These are FRU identifiers. + +### V4. machine.proto - version.proto style issues +Same systematic misuse of `is_description` as in V1 above, applied to BIOS and FRU hardware identifiers that are structured data, not free-form descriptions. + +### V5. v2/size_imageconstraint.proto - semver_match uses `is_description` (lines 57-58) +``` +string semver_match = 2 [(buf.validate.field).string.(metalstack.api.v2.is_description) = true]; +``` +A semver match string (e.g., `">= 20.04.20211011"`) is structured data, not a description. + +### V6. admin/v2/switch.proto - Wrong rules (lines 100, 102) +- `management_user` uses `is_name` (likely wrong for a username, should use a dedicated username rule) +- `console_command` uses `is_description` (should use command-line validation) + +--- + +## 3. Validation Gaps + +### G1. vpn.proto - No validation on VPNNode (lines 15-22)✅ +``` +message VPNNode { + uint64 id = 1; + string name = 2; + string project = 3; + repeated string ip_addresses = 4; + google.protobuf.Timestamp last_seen = 5; + bool online = 6; +} +``` +At minimum, `name` should use `is_name` and `ip_addresses` should be validated for proper IP format. + +### G2. partition.proto - Boot commandline has no validation (line 57) ✅ +``` +string commandline = 3; +``` +Kernel command lines can be long and should have max length validation. + +--- + +## 4. Functional Inconsistencies + +### F1. BMC query cannot search by hostname +- `MachineBMC.address` (machine.proto line 495): uses `host_and_port` (accepts `:` or `:`) +- `MachineBMCQuery.address` (machine.proto line 507): uses `ip` only (pure IP addresses) + +This means you can store and use a BMC with a hostname, but you **cannot query** by that hostname. The query only matches IP addresses, making hostname-based BMC lookup impossible. + +### F2. Duplicate `MachineProvisioningEvent` definitions ✅ +Two completely separate definitions exist with identical structure: +- `metalstack.api.v2.MachineProvisioningEvent` (machine.proto line 690) +- `metalstack.infra.v2.MachineProvisioningEvent` (infra/v2/event.proto line 33) + +Both have enums with identical values ("Alive", "Crashed", "PXE Booting", etc.) but different enum name prefixes. The infra/event.proto does not import machine.proto — it duplicates everything. Risk of drift. + +--- + +## 5. Cross-Version Inconsistencies + +### X1. Partition `min_items` missing in admin update +- `api/v2/size_reservation.proto` (SizeReservation): partitions have `min_items: 1` — at least one required +- `admin/v2/size_reservation.proto` (SizeReservationServiceUpdateRequest): partitions at field 5 is **missing** `min_items: 1`, allowing empty partitions in updates + +--- + +## 6. Naming Pattern Inconsistencies in filesystem.proto + +### N1. `MatchMachine` message confusing naming +The message `MatchMachine` at line 73 has a field called `filesystem_layout` which is a string parameter, but the oneof case name is `machine_and_filesystemlayout`. The naming is inconsistent — the message name and field name don't clearly communicate what this match operation does. diff --git a/go/metalstack/admin/v2/machine.pb.go b/go/metalstack/admin/v2/machine.pb.go index 41d6b03f..fda6a454 100644 --- a/go/metalstack/admin/v2/machine.pb.go +++ b/go/metalstack/admin/v2/machine.pb.go @@ -69,7 +69,7 @@ func (x *MachineServiceGetRequest) GetUuid() string { return "" } -// MachineServiceGetResponse is the request payload for a machine get response +// MachineServiceGetResponse is the response payload for a machine get request type MachineServiceGetResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Machine is the machine requested @@ -171,7 +171,7 @@ func (x *MachineServiceListRequest) GetPartition() string { return "" } -// MachineServiceListResponse is the request payload for a machine list response +// MachineServiceListResponse is the response payload for a machine list request type MachineServiceListResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Machines are the machines requested by a list request @@ -413,7 +413,7 @@ func (x *MachineServiceGetBMCResponse) GetBmc() *v2.MachineBMCReport { // MachineServiceListBMCRequest is the request payload for a machine listbmc request type MachineServiceListBMCRequest struct { state protoimpl.MessageState `protogen:"open.v1"` - // Query to list one ore more bmcs of more machines + // Query to list one ore more bmcs of many machines Query *v2.MachineBMCQuery `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache diff --git a/go/metalstack/api/v2/common.pb.go b/go/metalstack/api/v2/common.pb.go index 3896d258..f8ee0113 100644 --- a/go/metalstack/api/v2/common.pb.go +++ b/go/metalstack/api/v2/common.pb.go @@ -846,7 +846,7 @@ var ( // // repeated metalstack.api.v2.InfraRole infra_roles = 51005; E_InfraRoles = &file_metalstack_api_v2_common_proto_extTypes[5] - // MachineRole are used to define which infra role a microservice must provide to call this method + // MachineRole are used to define which machine role a microservice must provide to call this method // // repeated metalstack.api.v2.MachineRole machine_roles = 51006; E_MachineRoles = &file_metalstack_api_v2_common_proto_extTypes[6] diff --git a/go/metalstack/api/v2/image.pb.go b/go/metalstack/api/v2/image.pb.go index ef94f528..878b13e4 100644 --- a/go/metalstack/api/v2/image.pb.go +++ b/go/metalstack/api/v2/image.pb.go @@ -422,15 +422,15 @@ func (x *ImageServiceLatestResponse) GetImage() *Image { // Image type Image struct { state protoimpl.MessageState `protogen:"open.v1"` - // Id of this imageLayout + // Id of this image Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - // Meta for this ip + // Meta for this image Meta *Meta `protobuf:"bytes,2,opt,name=meta,proto3" json:"meta,omitempty"` // URL where this image is located Url string `protobuf:"bytes,3,opt,name=url,proto3" json:"url,omitempty"` - // Name of this imageLayout + // Name of this image Name *string `protobuf:"bytes,4,opt,name=name,proto3,oneof" json:"name,omitempty"` - // Description of this imageLayout + // Description of this image Description *string `protobuf:"bytes,5,opt,name=description,proto3,oneof" json:"description,omitempty"` // Features of this image Features []ImageFeature `protobuf:"varint,6,rep,packed,name=features,proto3,enum=metalstack.api.v2.ImageFeature" json:"features,omitempty"` diff --git a/go/metalstack/api/v2/ip.pb.go b/go/metalstack/api/v2/ip.pb.go index c7521734..fbbb6eb4 100644 --- a/go/metalstack/api/v2/ip.pb.go +++ b/go/metalstack/api/v2/ip.pb.go @@ -432,7 +432,7 @@ func (x *IPServiceCreateRequest) GetAddressFamily() IPAddressFamily { // IPServiceUpdateRequest is the request payload for a ip update request type IPServiceUpdateRequest struct { state protoimpl.MessageState `protogen:"open.v1"` - // Ip the ip to update + // Ip the ip address to update Ip string `protobuf:"bytes,1,opt,name=ip,proto3" json:"ip,omitempty"` // UpdateMeta contains the timestamp and strategy to be used in this update request UpdateMeta *UpdateMeta `protobuf:"bytes,2,opt,name=update_meta,json=updateMeta,proto3" json:"update_meta,omitempty"` diff --git a/go/metalstack/api/v2/machine.pb.go b/go/metalstack/api/v2/machine.pb.go index fca5ef7e..71fe1033 100644 --- a/go/metalstack/api/v2/machine.pb.go +++ b/go/metalstack/api/v2/machine.pb.go @@ -529,7 +529,7 @@ func (x *MachineServiceGetRequest) GetProject() string { return "" } -// MachineServiceGetResponse is the request payload for a machine get response +// MachineServiceGetResponse is the response payload for a machine get request type MachineServiceGetResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Machine is the machine requested @@ -581,7 +581,7 @@ type MachineServiceCreateRequest struct { // Project of the machine Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"` // UUID if this field is set, this specific machine will be allocated if it is not in available state and not currently allocated. - // this field overrules size and partition. + // this field takes precedence over size and partition. // Can only be used with ADMIN_ROLE_EDITOR Uuid *string `protobuf:"bytes,2,opt,name=uuid,proto3,oneof" json:"uuid,omitempty"` // Name of this machine @@ -832,7 +832,7 @@ func (x *FirewallSpec) GetFirewallRules() *FirewallRules { return nil } -// MachineServiceCreateResponse is the request payload for a machine create response +// MachineServiceCreateResponse is the response payload for a machine create request type MachineServiceCreateResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Machine which was created @@ -969,7 +969,7 @@ func (x *MachineServiceUpdateRequest) GetSshPublicKeys() []string { return nil } -// MachineServiceUpdateResponse is the request payload for a machine update response +// MachineServiceUpdateResponse is the response payload for a machine update request type MachineServiceUpdateResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Machine which was updated @@ -1070,7 +1070,7 @@ func (x *MachineServiceListRequest) GetQuery() *MachineQuery { return nil } -// MachineServiceListResponse is the request payload for a machine list response +// MachineServiceListResponse is the response payload for a machine list request type MachineServiceListResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Machines are the machines requested by a list request @@ -1171,10 +1171,10 @@ func (x *MachineServiceDeleteRequest) GetProject() string { return "" } -// MachineServiceDeleteResponse is the request payload for a machine delete response +// MachineServiceDeleteResponse is the response payload for a machine delete request type MachineServiceDeleteResponse struct { state protoimpl.MessageState `protogen:"open.v1"` - // Machine which was deleteds + // Machine which was deleted Machine *Machine `protobuf:"bytes,1,opt,name=machine,proto3" json:"machine,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache @@ -4415,10 +4415,10 @@ const file_metalstack_api_v2_machine_proto_rawDesc = "" + "\x06events\x18\x01 \x03(\v2+.metalstack.api.v2.MachineProvisioningEventR\x06events\x12B\n" + "\x0flast_event_time\x18\x02 \x01(\v2\x1a.google.protobuf.TimestampR\rlastEventTime\x12U\n" + "\x10last_error_event\x18\x03 \x01(\v2+.metalstack.api.v2.MachineProvisioningEventR\x0elastErrorEvent\x12P\n" + - "\x05state\x18\x04 \x01(\x0e20.metalstack.api.v2.MachineProvisioningEventStateB\b\xbaH\x05\x82\x01\x02\x10\x01R\x05state\"\xab\x01\n" + + "\x05state\x18\x04 \x01(\x0e20.metalstack.api.v2.MachineProvisioningEventStateB\b\xbaH\x05\x82\x01\x02\x10\x01R\x05state\"\xb5\x01\n" + "\x18MachineProvisioningEvent\x12.\n" + - "\x04time\x18\x01 \x01(\v2\x1a.google.protobuf.TimestampR\x04time\x12E\n" + - "\x05event\x18\x02 \x01(\x0e2/.metalstack.api.v2.MachineProvisioningEventTypeR\x05event\x12\x18\n" + + "\x04time\x18\x01 \x01(\v2\x1a.google.protobuf.TimestampR\x04time\x12O\n" + + "\x05event\x18\x02 \x01(\x0e2/.metalstack.api.v2.MachineProvisioningEventTypeB\b\xbaH\x05\x82\x01\x02\x10\x01R\x05event\x12\x18\n" + "\amessage\x18\x03 \x01(\tR\amessage\"\x99\x01\n" + "\n" + "MachineVPN\x122\n" + diff --git a/go/metalstack/api/v2/partition.pb.go b/go/metalstack/api/v2/partition.pb.go index 0bf26223..17402040 100644 --- a/go/metalstack/api/v2/partition.pb.go +++ b/go/metalstack/api/v2/partition.pb.go @@ -27,7 +27,7 @@ type Partition struct { state protoimpl.MessageState `protogen:"open.v1"` // ID of this partition Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - // Meta for this ip + // Meta for this partition Meta *Meta `protobuf:"bytes,2,opt,name=meta,proto3" json:"meta,omitempty"` // Description of this partition Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"` @@ -429,7 +429,7 @@ func (x *PartitionServiceListRequest) GetQuery() *PartitionQuery { // PartitionServiceGetResponse is the response payload for a partition get request type PartitionServiceGetResponse struct { state protoimpl.MessageState `protogen:"open.v1"` - // Ip the partition + // Partition is the partition Partition *Partition `protobuf:"bytes,1,opt,name=partition,proto3" json:"partition,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache @@ -475,7 +475,7 @@ func (x *PartitionServiceGetResponse) GetPartition() *Partition { // PartitionServiceListResponse is the response payload for a partition list request type PartitionServiceListResponse struct { state protoimpl.MessageState `protogen:"open.v1"` - // Ips the partitions + // Partitions are the partitions Partitions []*Partition `protobuf:"bytes,1,rep,name=partitions,proto3" json:"partitions,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache @@ -538,12 +538,12 @@ const file_metalstack_api_v2_partition_proto_rawDesc = "" + "\x02id\x18\x01 \x01(\tB\v\xbaH\br\x06г\xae\xb1\x02\x01H\x00R\x02id\x88\x01\x01\x126\n" + "\x06labels\x18\x02 \x01(\v2\x19.metalstack.api.v2.LabelsH\x01R\x06labels\x88\x01\x01B\x05\n" + "\x03_idB\t\n" + - "\a_labels\"\x94\x01\n" + + "\a_labels\"\x9e\x01\n" + "\x1aPartitionBootConfiguration\x12(\n" + "\timage_url\x18\x01 \x01(\tB\v\xbaH\br\x06೮\xb1\x02\x01R\bimageUrl\x12*\n" + "\n" + - "kernel_url\x18\x02 \x01(\tB\v\xbaH\br\x06೮\xb1\x02\x01R\tkernelUrl\x12 \n" + - "\vcommandline\x18\x03 \x01(\tR\vcommandline\"$\n" + + "kernel_url\x18\x02 \x01(\tB\v\xbaH\br\x06೮\xb1\x02\x01R\tkernelUrl\x12*\n" + + "\vcommandline\x18\x03 \x01(\tB\b\xbaH\x05r\x03\x18\x80 R\vcommandline\"$\n" + "\tDNSServer\x12\x17\n" + "\x02ip\x18\x01 \x01(\tB\a\xbaH\x04r\x02p\x01R\x02ip\"2\n" + "\tNTPServer\x12%\n" + diff --git a/go/metalstack/api/v2/predefined_rules.pb.go b/go/metalstack/api/v2/predefined_rules.pb.go index 0f74480d..d62740be 100644 --- a/go/metalstack/api/v2/predefined_rules.pb.go +++ b/go/metalstack/api/v2/predefined_rules.pb.go @@ -138,7 +138,7 @@ var file_metalstack_api_v2_predefined_rules_proto_extTypes = []protoimpl.Extensi // Extension fields to validate.StringRules. var ( - // Macaddress returns true if the given string is a valid macadress + // Macaddress returns true if the given string is a valid macaddress // // optional bool macaddress = 80048951; E_Macaddress = &file_metalstack_api_v2_predefined_rules_proto_extTypes[0] diff --git a/go/metalstack/api/v2/project.pb.go b/go/metalstack/api/v2/project.pb.go index cef314f9..3a1ed825 100644 --- a/go/metalstack/api/v2/project.pb.go +++ b/go/metalstack/api/v2/project.pb.go @@ -660,7 +660,7 @@ func (x *ProjectServiceCreateResponse) GetProject() *Project { // ProjectServiceDeleteRequest is the request payload to delete a project type ProjectServiceDeleteRequest struct { state protoimpl.MessageState `protogen:"open.v1"` - // Project is the uuid of the project to get + // Project is the uuid of the project to delete Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache @@ -941,7 +941,7 @@ func (x *ProjectServiceInviteRequest) GetRole() ProjectRole { return ProjectRole_PROJECT_ROLE_UNSPECIFIED } -// ProjectServiceInviteRequest is the response payload to a invite member request +// ProjectServiceInviteResponse is the response payload to a invite member request type ProjectServiceInviteResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Inviter contains a secret which can be sent to a potential user @@ -1504,7 +1504,7 @@ func (x *ProjectServiceInviteAcceptRequest) GetSecret() string { return "" } -// ProjectServiceInvitesListResponse is the response payload to a accept invite request +// ProjectServiceInviteAcceptResponse is the response payload to a accept invite request type ProjectServiceInviteAcceptResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Project ID of the project joined diff --git a/go/metalstack/api/v2/tenant.pb.go b/go/metalstack/api/v2/tenant.pb.go index 1a7e75cb..7e2f7e7d 100644 --- a/go/metalstack/api/v2/tenant.pb.go +++ b/go/metalstack/api/v2/tenant.pb.go @@ -1399,7 +1399,7 @@ func (x *TenantServiceInviteAcceptRequest) GetSecret() string { return "" } -// TenantServiceInvitesListResponse is the response payload to a accept invite request +// TenantServiceInviteAcceptResponse is the response payload to a accept invite request type TenantServiceInviteAcceptResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Tenant ID of the joined tenant diff --git a/go/metalstack/api/v2/vpn.pb.go b/go/metalstack/api/v2/vpn.pb.go index 65e7f674..e9058277 100644 --- a/go/metalstack/api/v2/vpn.pb.go +++ b/go/metalstack/api/v2/vpn.pb.go @@ -7,6 +7,7 @@ package apiv2 import ( + _ "buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate" protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" timestamppb "google.golang.org/protobuf/types/known/timestamppb" @@ -117,12 +118,12 @@ var File_metalstack_api_v2_vpn_proto protoreflect.FileDescriptor const file_metalstack_api_v2_vpn_proto_rawDesc = "" + "\n" + - "\x1bmetalstack/api/v2/vpn.proto\x12\x11metalstack.api.v2\x1a\x1fgoogle/protobuf/timestamp.proto\"\xbb\x01\n" + + "\x1bmetalstack/api/v2/vpn.proto\x12\x11metalstack.api.v2\x1a\x1bbuf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a(metalstack/api/v2/predefined_rules.proto\"\xe3\x01\n" + "\aVPNNode\x12\x0e\n" + - "\x02id\x18\x01 \x01(\x04R\x02id\x12\x12\n" + - "\x04name\x18\x02 \x01(\tR\x04name\x12\x18\n" + - "\aproject\x18\x03 \x01(\tR\aproject\x12!\n" + - "\fip_addresses\x18\x04 \x03(\tR\vipAddresses\x127\n" + + "\x02id\x18\x01 \x01(\x04R\x02id\x12\x1f\n" + + "\x04name\x18\x02 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\x04name\x12%\n" + + "\aproject\x18\x03 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01R\aproject\x12/\n" + + "\fip_addresses\x18\x04 \x03(\tB\f\xbaH\t\x92\x01\x06\xc0\xa4\xb3\xb1\x02\x01R\vipAddresses\x127\n" + "\tlast_seen\x18\x05 \x01(\v2\x1a.google.protobuf.TimestampR\blastSeen\x12\x16\n" + "\x06online\x18\x06 \x01(\bR\x06onlineB\xbe\x01\n" + "\x15com.metalstack.api.v2B\bVpnProtoP\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" @@ -158,6 +159,7 @@ func file_metalstack_api_v2_vpn_proto_init() { if File_metalstack_api_v2_vpn_proto != nil { return } + file_metalstack_api_v2_predefined_rules_proto_init() type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ diff --git a/go/metalstack/infra/v2/event.pb.go b/go/metalstack/infra/v2/event.pb.go index d83e200f..7d68bb15 100644 --- a/go/metalstack/infra/v2/event.pb.go +++ b/go/metalstack/infra/v2/event.pb.go @@ -8,10 +8,10 @@ package infrav2 import ( _ "buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate" - _ "github.com/metal-stack/api/go/metalstack/api/v2" + v2 "github.com/metal-stack/api/go/metalstack/api/v2" protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" - timestamppb "google.golang.org/protobuf/types/known/timestamppb" + _ "google.golang.org/protobuf/types/known/timestamppb" reflect "reflect" sync "sync" unsafe "unsafe" @@ -24,100 +24,11 @@ const ( _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) -// ProvisioningEventType is a short description of a machine event. -type ProvisioningEventType int32 - -const ( - // PROVISIONING_EVENT_TYPE_UNSPECIFIED is unspecified - ProvisioningEventType_PROVISIONING_EVENT_TYPE_UNSPECIFIED ProvisioningEventType = 0 - // PROVISIONING_EVENT_TYPE_ALIVE means the machine has reported itself to the API not long ago - ProvisioningEventType_PROVISIONING_EVENT_TYPE_ALIVE ProvisioningEventType = 1 - // PROVISIONING_EVENT_TYPE_CRASHED means an irregularity in the machine's lifecycle - ProvisioningEventType_PROVISIONING_EVENT_TYPE_CRASHED ProvisioningEventType = 2 - // PROVISIONING_EVENT_TYPE_PXE_BOOTING is sent when an unprovisioned machine requests a boot image via PXE - ProvisioningEventType_PROVISIONING_EVENT_TYPE_PXE_BOOTING ProvisioningEventType = 3 - // PROVISIONING_EVENT_TYPE_PLANNED_REBOOT means the machine was scheduled for reboot - ProvisioningEventType_PROVISIONING_EVENT_TYPE_PLANNED_REBOOT ProvisioningEventType = 4 - // PROVISIONING_EVENT_TYPE_PREPARING means the metal-hammer has started - ProvisioningEventType_PROVISIONING_EVENT_TYPE_PREPARING ProvisioningEventType = 5 - // PROVISIONING_EVENT_TYPE_REGISTERING means the metal-hammer is attempting to register the machine at the API - ProvisioningEventType_PROVISIONING_EVENT_TYPE_REGISTERING ProvisioningEventType = 6 - // PROVISIONING_EVENT_TYPE_WAITING means the machine has successfully reached the state where it is waiting for allocation - ProvisioningEventType_PROVISIONING_EVENT_TYPE_WAITING ProvisioningEventType = 7 - // PROVISIONING_EVENT_TYPE_INSTALLING means the machine was allocated and the requested OS is being installed - ProvisioningEventType_PROVISIONING_EVENT_TYPE_INSTALLING ProvisioningEventType = 8 - // PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL means the machine has successfully been installed and is now booting into the new OS - ProvisioningEventType_PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL ProvisioningEventType = 9 - // PROVISIONING_EVENT_TYPE_PHONED_HOME is sent periodically by an allocated machine to indicate its liveliness - ProvisioningEventType_PROVISIONING_EVENT_TYPE_PHONED_HOME ProvisioningEventType = 10 - // PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM means the machine was freed and is about to return into the pool of waiting machines - ProvisioningEventType_PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM ProvisioningEventType = 11 -) - -// Enum value maps for ProvisioningEventType. -var ( - ProvisioningEventType_name = map[int32]string{ - 0: "PROVISIONING_EVENT_TYPE_UNSPECIFIED", - 1: "PROVISIONING_EVENT_TYPE_ALIVE", - 2: "PROVISIONING_EVENT_TYPE_CRASHED", - 3: "PROVISIONING_EVENT_TYPE_PXE_BOOTING", - 4: "PROVISIONING_EVENT_TYPE_PLANNED_REBOOT", - 5: "PROVISIONING_EVENT_TYPE_PREPARING", - 6: "PROVISIONING_EVENT_TYPE_REGISTERING", - 7: "PROVISIONING_EVENT_TYPE_WAITING", - 8: "PROVISIONING_EVENT_TYPE_INSTALLING", - 9: "PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL", - 10: "PROVISIONING_EVENT_TYPE_PHONED_HOME", - 11: "PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM", - } - ProvisioningEventType_value = map[string]int32{ - "PROVISIONING_EVENT_TYPE_UNSPECIFIED": 0, - "PROVISIONING_EVENT_TYPE_ALIVE": 1, - "PROVISIONING_EVENT_TYPE_CRASHED": 2, - "PROVISIONING_EVENT_TYPE_PXE_BOOTING": 3, - "PROVISIONING_EVENT_TYPE_PLANNED_REBOOT": 4, - "PROVISIONING_EVENT_TYPE_PREPARING": 5, - "PROVISIONING_EVENT_TYPE_REGISTERING": 6, - "PROVISIONING_EVENT_TYPE_WAITING": 7, - "PROVISIONING_EVENT_TYPE_INSTALLING": 8, - "PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL": 9, - "PROVISIONING_EVENT_TYPE_PHONED_HOME": 10, - "PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM": 11, - } -) - -func (x ProvisioningEventType) Enum() *ProvisioningEventType { - p := new(ProvisioningEventType) - *p = x - return p -} - -func (x ProvisioningEventType) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (ProvisioningEventType) Descriptor() protoreflect.EnumDescriptor { - return file_metalstack_infra_v2_event_proto_enumTypes[0].Descriptor() -} - -func (ProvisioningEventType) Type() protoreflect.EnumType { - return &file_metalstack_infra_v2_event_proto_enumTypes[0] -} - -func (x ProvisioningEventType) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use ProvisioningEventType.Descriptor instead. -func (ProvisioningEventType) EnumDescriptor() ([]byte, []int) { - return file_metalstack_infra_v2_event_proto_rawDescGZIP(), []int{0} -} - // EventServiceSendRequest is the request payload for sending provisioning events. type EventServiceSendRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // Events grouped by machine IDs - Events map[string]*MachineProvisioningEvent `protobuf:"bytes,1,rep,name=events,proto3" json:"events,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + Events map[string]*v2.MachineProvisioningEvent `protobuf:"bytes,1,rep,name=events,proto3" json:"events,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } @@ -152,7 +63,7 @@ func (*EventServiceSendRequest) Descriptor() ([]byte, []int) { return file_metalstack_infra_v2_event_proto_rawDescGZIP(), []int{0} } -func (x *EventServiceSendRequest) GetEvents() map[string]*MachineProvisioningEvent { +func (x *EventServiceSendRequest) GetEvents() map[string]*v2.MachineProvisioningEvent { if x != nil { return x.Events } @@ -214,102 +125,19 @@ func (x *EventServiceSendResponse) GetFailed() []string { return nil } -// MachineProvisioningEvent contains details about an event. -type MachineProvisioningEvent struct { - state protoimpl.MessageState `protogen:"open.v1"` - // Time the event occurred at - Time *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=time,proto3" json:"time,omitempty"` - // Event that occurred - Event ProvisioningEventType `protobuf:"varint,2,opt,name=event,proto3,enum=metalstack.infra.v2.ProvisioningEventType" json:"event,omitempty"` - // Message describes the event in more detail - Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache -} - -func (x *MachineProvisioningEvent) Reset() { - *x = MachineProvisioningEvent{} - mi := &file_metalstack_infra_v2_event_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *MachineProvisioningEvent) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MachineProvisioningEvent) ProtoMessage() {} - -func (x *MachineProvisioningEvent) ProtoReflect() protoreflect.Message { - mi := &file_metalstack_infra_v2_event_proto_msgTypes[2] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use MachineProvisioningEvent.ProtoReflect.Descriptor instead. -func (*MachineProvisioningEvent) Descriptor() ([]byte, []int) { - return file_metalstack_infra_v2_event_proto_rawDescGZIP(), []int{2} -} - -func (x *MachineProvisioningEvent) GetTime() *timestamppb.Timestamp { - if x != nil { - return x.Time - } - return nil -} - -func (x *MachineProvisioningEvent) GetEvent() ProvisioningEventType { - if x != nil { - return x.Event - } - return ProvisioningEventType_PROVISIONING_EVENT_TYPE_UNSPECIFIED -} - -func (x *MachineProvisioningEvent) GetMessage() string { - if x != nil { - return x.Message - } - return "" -} - var File_metalstack_infra_v2_event_proto protoreflect.FileDescriptor const file_metalstack_infra_v2_event_proto_rawDesc = "" + "\n" + - "\x1fmetalstack/infra/v2/event.proto\x12\x13metalstack.infra.v2\x1a\x1bbuf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1emetalstack/api/v2/common.proto\"\xd5\x01\n" + + "\x1fmetalstack/infra/v2/event.proto\x12\x13metalstack.infra.v2\x1a\x1bbuf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1emetalstack/api/v2/common.proto\x1a\x1fmetalstack/api/v2/machine.proto\"\xd3\x01\n" + "\x17EventServiceSendRequest\x12P\n" + - "\x06events\x18\x01 \x03(\v28.metalstack.infra.v2.EventServiceSendRequest.EventsEntryR\x06events\x1ah\n" + + "\x06events\x18\x01 \x03(\v28.metalstack.infra.v2.EventServiceSendRequest.EventsEntryR\x06events\x1af\n" + "\vEventsEntry\x12\x10\n" + - "\x03key\x18\x01 \x01(\tR\x03key\x12C\n" + - "\x05value\x18\x02 \x01(\v2-.metalstack.infra.v2.MachineProvisioningEventR\x05value:\x028\x01\"J\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12A\n" + + "\x05value\x18\x02 \x01(\v2+.metalstack.api.v2.MachineProvisioningEventR\x05value:\x028\x01\"J\n" + "\x18EventServiceSendResponse\x12\x16\n" + "\x06events\x18\x01 \x01(\x04R\x06events\x12\x16\n" + - "\x06failed\x18\x02 \x03(\tR\x06failed\"\xb0\x01\n" + - "\x18MachineProvisioningEvent\x12.\n" + - "\x04time\x18\x01 \x01(\v2\x1a.google.protobuf.TimestampR\x04time\x12J\n" + - "\x05event\x18\x02 \x01(\x0e2*.metalstack.infra.v2.ProvisioningEventTypeB\b\xbaH\x05\x82\x01\x02\x10\x01R\x05event\x12\x18\n" + - "\amessage\x18\x03 \x01(\tR\amessage*\xb8\x05\n" + - "\x15ProvisioningEventType\x12'\n" + - "#PROVISIONING_EVENT_TYPE_UNSPECIFIED\x10\x00\x12,\n" + - "\x1dPROVISIONING_EVENT_TYPE_ALIVE\x10\x01\x1a\t\x82\xb2\x19\x05Alive\x120\n" + - "\x1fPROVISIONING_EVENT_TYPE_CRASHED\x10\x02\x1a\v\x82\xb2\x19\aCrashed\x128\n" + - "#PROVISIONING_EVENT_TYPE_PXE_BOOTING\x10\x03\x1a\x0f\x82\xb2\x19\vPXE Booting\x12>\n" + - "&PROVISIONING_EVENT_TYPE_PLANNED_REBOOT\x10\x04\x1a\x12\x82\xb2\x19\x0ePlanned Reboot\x124\n" + - "!PROVISIONING_EVENT_TYPE_PREPARING\x10\x05\x1a\r\x82\xb2\x19\tPreparing\x128\n" + - "#PROVISIONING_EVENT_TYPE_REGISTERING\x10\x06\x1a\x0f\x82\xb2\x19\vRegistering\x120\n" + - "\x1fPROVISIONING_EVENT_TYPE_WAITING\x10\a\x1a\v\x82\xb2\x19\aWaiting\x126\n" + - "\"PROVISIONING_EVENT_TYPE_INSTALLING\x10\b\x1a\x0e\x82\xb2\x19\n" + - "Installing\x12F\n" + - "*PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL\x10\t\x1a\x16\x82\xb2\x19\x12Booting New Kernel\x128\n" + - "#PROVISIONING_EVENT_TYPE_PHONED_HOME\x10\n" + - "\x1a\x0f\x82\xb2\x19\vPhoned Home\x12@\n" + - "'PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM\x10\v\x1a\x13\x82\xb2\x19\x0fMachine Reclaim2~\n" + + "\x06failed\x18\x02 \x03(\tR\x06failed2~\n" + "\fEventService\x12n\n" + "\x04Send\x12,.metalstack.infra.v2.EventServiceSendRequest\x1a-.metalstack.infra.v2.EventServiceSendResponse\"\t\xe0\xf3\x18\x02\xea\xf3\x18\x01\x01B\xce\x01\n" + "\x17com.metalstack.infra.v2B\n" + @@ -327,28 +155,23 @@ func file_metalstack_infra_v2_event_proto_rawDescGZIP() []byte { return file_metalstack_infra_v2_event_proto_rawDescData } -var file_metalstack_infra_v2_event_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_metalstack_infra_v2_event_proto_msgTypes = make([]protoimpl.MessageInfo, 4) +var file_metalstack_infra_v2_event_proto_msgTypes = make([]protoimpl.MessageInfo, 3) var file_metalstack_infra_v2_event_proto_goTypes = []any{ - (ProvisioningEventType)(0), // 0: metalstack.infra.v2.ProvisioningEventType - (*EventServiceSendRequest)(nil), // 1: metalstack.infra.v2.EventServiceSendRequest - (*EventServiceSendResponse)(nil), // 2: metalstack.infra.v2.EventServiceSendResponse - (*MachineProvisioningEvent)(nil), // 3: metalstack.infra.v2.MachineProvisioningEvent - nil, // 4: metalstack.infra.v2.EventServiceSendRequest.EventsEntry - (*timestamppb.Timestamp)(nil), // 5: google.protobuf.Timestamp + (*EventServiceSendRequest)(nil), // 0: metalstack.infra.v2.EventServiceSendRequest + (*EventServiceSendResponse)(nil), // 1: metalstack.infra.v2.EventServiceSendResponse + nil, // 2: metalstack.infra.v2.EventServiceSendRequest.EventsEntry + (*v2.MachineProvisioningEvent)(nil), // 3: metalstack.api.v2.MachineProvisioningEvent } var file_metalstack_infra_v2_event_proto_depIdxs = []int32{ - 4, // 0: metalstack.infra.v2.EventServiceSendRequest.events:type_name -> metalstack.infra.v2.EventServiceSendRequest.EventsEntry - 5, // 1: metalstack.infra.v2.MachineProvisioningEvent.time:type_name -> google.protobuf.Timestamp - 0, // 2: metalstack.infra.v2.MachineProvisioningEvent.event:type_name -> metalstack.infra.v2.ProvisioningEventType - 3, // 3: metalstack.infra.v2.EventServiceSendRequest.EventsEntry.value:type_name -> metalstack.infra.v2.MachineProvisioningEvent - 1, // 4: metalstack.infra.v2.EventService.Send:input_type -> metalstack.infra.v2.EventServiceSendRequest - 2, // 5: metalstack.infra.v2.EventService.Send:output_type -> metalstack.infra.v2.EventServiceSendResponse - 5, // [5:6] is the sub-list for method output_type - 4, // [4:5] is the sub-list for method input_type - 4, // [4:4] is the sub-list for extension type_name - 4, // [4:4] is the sub-list for extension extendee - 0, // [0:4] is the sub-list for field type_name + 2, // 0: metalstack.infra.v2.EventServiceSendRequest.events:type_name -> metalstack.infra.v2.EventServiceSendRequest.EventsEntry + 3, // 1: metalstack.infra.v2.EventServiceSendRequest.EventsEntry.value:type_name -> metalstack.api.v2.MachineProvisioningEvent + 0, // 2: metalstack.infra.v2.EventService.Send:input_type -> metalstack.infra.v2.EventServiceSendRequest + 1, // 3: metalstack.infra.v2.EventService.Send:output_type -> metalstack.infra.v2.EventServiceSendResponse + 3, // [3:4] is the sub-list for method output_type + 2, // [2:3] is the sub-list for method input_type + 2, // [2:2] is the sub-list for extension type_name + 2, // [2:2] is the sub-list for extension extendee + 0, // [0:2] is the sub-list for field type_name } func init() { file_metalstack_infra_v2_event_proto_init() } @@ -361,14 +184,13 @@ func file_metalstack_infra_v2_event_proto_init() { File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: unsafe.Slice(unsafe.StringData(file_metalstack_infra_v2_event_proto_rawDesc), len(file_metalstack_infra_v2_event_proto_rawDesc)), - NumEnums: 1, - NumMessages: 4, + NumEnums: 0, + NumMessages: 3, NumExtensions: 0, NumServices: 1, }, GoTypes: file_metalstack_infra_v2_event_proto_goTypes, DependencyIndexes: file_metalstack_infra_v2_event_proto_depIdxs, - EnumInfos: file_metalstack_infra_v2_event_proto_enumTypes, MessageInfos: file_metalstack_infra_v2_event_proto_msgTypes, }.Build() File_metalstack_infra_v2_event_proto = out.File diff --git a/js/metalstack/admin/v2/machine_pb.d.ts b/js/metalstack/admin/v2/machine_pb.d.ts index 263975f5..ae88180d 100644 --- a/js/metalstack/admin/v2/machine_pb.d.ts +++ b/js/metalstack/admin/v2/machine_pb.d.ts @@ -24,7 +24,7 @@ export type MachineServiceGetRequest = Message<"metalstack.admin.v2.MachineServi */ export declare const MachineServiceGetRequestSchema: GenMessage; /** - * MachineServiceGetResponse is the request payload for a machine get response + * MachineServiceGetResponse is the response payload for a machine get request * * @generated from message metalstack.admin.v2.MachineServiceGetResponse */ @@ -67,7 +67,7 @@ export type MachineServiceListRequest = Message<"metalstack.admin.v2.MachineServ */ export declare const MachineServiceListRequestSchema: GenMessage; /** - * MachineServiceListResponse is the request payload for a machine list response + * MachineServiceListResponse is the response payload for a machine list request * * @generated from message metalstack.admin.v2.MachineServiceListResponse */ @@ -168,7 +168,7 @@ export declare const MachineServiceGetBMCResponseSchema: GenMessage & { /** - * Query to list one ore more bmcs of more machines + * Query to list one ore more bmcs of many machines * * @generated from field: metalstack.api.v2.MachineBMCQuery query = 1; */ diff --git a/js/metalstack/admin/v2/machine_pb.ts b/js/metalstack/admin/v2/machine_pb.ts index 206aa4d6..2aadf756 100644 --- a/js/metalstack/admin/v2/machine_pb.ts +++ b/js/metalstack/admin/v2/machine_pb.ts @@ -39,7 +39,7 @@ export const MachineServiceGetRequestSchema: GenMessage & { /** - * Query to list one ore more bmcs of more machines + * Query to list one ore more bmcs of many machines * * @generated from field: metalstack.api.v2.MachineBMCQuery query = 1; */ diff --git a/js/metalstack/api/v2/common_pb.d.ts b/js/metalstack/api/v2/common_pb.d.ts index 8aca0824..aeae00ba 100644 --- a/js/metalstack/api/v2/common_pb.d.ts +++ b/js/metalstack/api/v2/common_pb.d.ts @@ -429,7 +429,7 @@ export declare const auditing: GenExtension; */ export declare const infra_roles: GenExtension; /** - * MachineRole are used to define which infra role a microservice must provide to call this method + * MachineRole are used to define which machine role a microservice must provide to call this method * * @generated from extension: repeated metalstack.api.v2.MachineRole machine_roles = 51006; */ diff --git a/js/metalstack/api/v2/common_pb.js b/js/metalstack/api/v2/common_pb.js index 5d760ef0..c29ff725 100644 --- a/js/metalstack/api/v2/common_pb.js +++ b/js/metalstack/api/v2/common_pb.js @@ -335,7 +335,7 @@ export const auditing = /*@__PURE__*/ extDesc(file_metalstack_api_v2_common, 4); */ export const infra_roles = /*@__PURE__*/ extDesc(file_metalstack_api_v2_common, 5); /** - * MachineRole are used to define which infra role a microservice must provide to call this method + * MachineRole are used to define which machine role a microservice must provide to call this method * * @generated from extension: repeated metalstack.api.v2.MachineRole machine_roles = 51006; */ diff --git a/js/metalstack/api/v2/common_pb.ts b/js/metalstack/api/v2/common_pb.ts index 1ccb4a6b..0907101f 100644 --- a/js/metalstack/api/v2/common_pb.ts +++ b/js/metalstack/api/v2/common_pb.ts @@ -514,7 +514,7 @@ export const infra_roles: GenExtension = /*@__PURE__ extDesc(file_metalstack_api_v2_common, 5); /** - * MachineRole are used to define which infra role a microservice must provide to call this method + * MachineRole are used to define which machine role a microservice must provide to call this method * * @generated from extension: repeated metalstack.api.v2.MachineRole machine_roles = 51006; */ diff --git a/js/metalstack/api/v2/image_pb.d.ts b/js/metalstack/api/v2/image_pb.d.ts index 0092b79e..2c2b2ca8 100644 --- a/js/metalstack/api/v2/image_pb.d.ts +++ b/js/metalstack/api/v2/image_pb.d.ts @@ -128,13 +128,13 @@ export declare const ImageServiceLatestResponseSchema: GenMessage & { /** - * Id of this imageLayout + * Id of this image * * @generated from field: string id = 1; */ id: string; /** - * Meta for this ip + * Meta for this image * * @generated from field: metalstack.api.v2.Meta meta = 2; */ @@ -146,13 +146,13 @@ export type Image = Message<"metalstack.api.v2.Image"> & { */ url: string; /** - * Name of this imageLayout + * Name of this image * * @generated from field: optional string name = 4; */ name?: string | undefined; /** - * Description of this imageLayout + * Description of this image * * @generated from field: optional string description = 5; */ diff --git a/js/metalstack/api/v2/image_pb.ts b/js/metalstack/api/v2/image_pb.ts index d248e8a7..e93b7f7b 100644 --- a/js/metalstack/api/v2/image_pb.ts +++ b/js/metalstack/api/v2/image_pb.ts @@ -159,14 +159,14 @@ export const ImageServiceLatestResponseSchema: GenMessage & { /** - * Id of this imageLayout + * Id of this image * * @generated from field: string id = 1; */ id: string; /** - * Meta for this ip + * Meta for this image * * @generated from field: metalstack.api.v2.Meta meta = 2; */ @@ -180,14 +180,14 @@ export type Image = Message<"metalstack.api.v2.Image"> & { url: string; /** - * Name of this imageLayout + * Name of this image * * @generated from field: optional string name = 4; */ name?: string | undefined; /** - * Description of this imageLayout + * Description of this image * * @generated from field: optional string description = 5; */ diff --git a/js/metalstack/api/v2/ip_pb.d.ts b/js/metalstack/api/v2/ip_pb.d.ts index a421b308..ab94f1f2 100644 --- a/js/metalstack/api/v2/ip_pb.d.ts +++ b/js/metalstack/api/v2/ip_pb.d.ts @@ -175,7 +175,7 @@ export declare const IPServiceCreateRequestSchema: GenMessage & { /** - * Ip the ip to update + * Ip the ip address to update * * @generated from field: string ip = 1; */ diff --git a/js/metalstack/api/v2/ip_pb.ts b/js/metalstack/api/v2/ip_pb.ts index 23479e05..128faa69 100644 --- a/js/metalstack/api/v2/ip_pb.ts +++ b/js/metalstack/api/v2/ip_pb.ts @@ -213,7 +213,7 @@ export const IPServiceCreateRequestSchema: GenMessage = */ export type IPServiceUpdateRequest = Message<"metalstack.api.v2.IPServiceUpdateRequest"> & { /** - * Ip the ip to update + * Ip the ip address to update * * @generated from field: string ip = 1; */ diff --git a/js/metalstack/api/v2/machine_pb.d.ts b/js/metalstack/api/v2/machine_pb.d.ts index 56b57a0e..3f8aa41e 100644 --- a/js/metalstack/api/v2/machine_pb.d.ts +++ b/js/metalstack/api/v2/machine_pb.d.ts @@ -36,7 +36,7 @@ export type MachineServiceGetRequest = Message<"metalstack.api.v2.MachineService */ export declare const MachineServiceGetRequestSchema: GenMessage; /** - * MachineServiceGetResponse is the request payload for a machine get response + * MachineServiceGetResponse is the response payload for a machine get request * * @generated from message metalstack.api.v2.MachineServiceGetResponse */ @@ -67,7 +67,7 @@ export type MachineServiceCreateRequest = Message<"metalstack.api.v2.MachineServ project: string; /** * UUID if this field is set, this specific machine will be allocated if it is not in available state and not currently allocated. - * this field overrules size and partition. + * this field takes precedence over size and partition. * Can only be used with ADMIN_ROLE_EDITOR * * @generated from field: optional string uuid = 2; @@ -204,7 +204,7 @@ export type FirewallSpec = Message<"metalstack.api.v2.FirewallSpec"> & { */ export declare const FirewallSpecSchema: GenMessage; /** - * MachineServiceCreateResponse is the request payload for a machine create response + * MachineServiceCreateResponse is the response payload for a machine create request * * @generated from message metalstack.api.v2.MachineServiceCreateResponse */ @@ -270,7 +270,7 @@ export type MachineServiceUpdateRequest = Message<"metalstack.api.v2.MachineServ */ export declare const MachineServiceUpdateRequestSchema: GenMessage; /** - * MachineServiceUpdateResponse is the request payload for a machine update response + * MachineServiceUpdateResponse is the response payload for a machine update request * * @generated from message metalstack.api.v2.MachineServiceUpdateResponse */ @@ -312,7 +312,7 @@ export type MachineServiceListRequest = Message<"metalstack.api.v2.MachineServic */ export declare const MachineServiceListRequestSchema: GenMessage; /** - * MachineServiceListResponse is the request payload for a machine list response + * MachineServiceListResponse is the response payload for a machine list request * * @generated from message metalstack.api.v2.MachineServiceListResponse */ @@ -354,13 +354,13 @@ export type MachineServiceDeleteRequest = Message<"metalstack.api.v2.MachineServ */ export declare const MachineServiceDeleteRequestSchema: GenMessage; /** - * MachineServiceDeleteResponse is the request payload for a machine delete response + * MachineServiceDeleteResponse is the response payload for a machine delete request * * @generated from message metalstack.api.v2.MachineServiceDeleteResponse */ export type MachineServiceDeleteResponse = Message<"metalstack.api.v2.MachineServiceDeleteResponse"> & { /** - * Machine which was deleteds + * Machine which was deleted * * @generated from field: metalstack.api.v2.Machine machine = 1; */ diff --git a/js/metalstack/api/v2/machine_pb.js b/js/metalstack/api/v2/machine_pb.js index 97ee0862..21914f1d 100644 --- a/js/metalstack/api/v2/machine_pb.js +++ b/js/metalstack/api/v2/machine_pb.js @@ -14,7 +14,7 @@ import { file_metalstack_api_v2_size } from "./size_pb"; /** * Describes the file metalstack/api/v2/machine.proto. */ -export const file_metalstack_api_v2_machine = /*@__PURE__*/ fileDesc("Ch9tZXRhbHN0YWNrL2FwaS92Mi9tYWNoaW5lLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiJNChhNYWNoaW5lU2VydmljZUdldFJlcXVlc3QSFgoEdXVpZBgBIAEoCUIIukgFcgOwAQESGQoHcHJvamVjdBgCIAEoCUIIukgFcgOwAQEiSAoZTWFjaGluZVNlcnZpY2VHZXRSZXNwb25zZRIrCgdtYWNoaW5lGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZSKUBwobTWFjaGluZVNlcnZpY2VDcmVhdGVSZXF1ZXN0EhkKB3Byb2plY3QYASABKAlCCLpIBXIDsAEBEhsKBHV1aWQYAiABKAlCCLpIBXIDsAEBSACIAQESGQoEbmFtZRgDIAEoCUILukgIcgbAs66xAgESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSAGIAQESHgoIaG9zdG5hbWUYBSABKAlCB7pIBHICaAFIAogBARIjCglwYXJ0aXRpb24YBiABKAlCC7pICHIG0LOusQIBSAOIAQESHgoEc2l6ZRgHIAEoCUILukgIcgbAs66xAgFIBIgBARIaCgVpbWFnZRgIIAEoCUILukgIcgbAs66xAgESKwoRZmlsZXN5c3RlbV9sYXlvdXQYCSABKAlCC7pICHIGwLOusQIBSAWIAQESMAoPc3NoX3B1YmxpY19rZXlzGAogAygJQhe6SBSSARHQpLOxAgEQMiIHcgUQARiAQBImCgh1c2VyZGF0YRgLIAEoCUIPukgMcgrws66xAgEYgIACSAaIAQESKQoGbGFiZWxzGAwgASgLMhkubWV0YWxzdGFjay5hcGkudjIuTGFiZWxzEkcKCG5ldHdvcmtzGA0gAygLMisubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUFsbG9jYXRpb25OZXR3b3JrQgi6SAWSAQIIARIgCg5wbGFjZW1lbnRfdGFncxgOIAMoCUIIukgFkgECEEASOwoLZG5zX3NlcnZlcnMYDyADKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5ETlNTZXJ2ZXJCCLpIBZIBAhADEjsKC250cF9zZXJ2ZXJzGBAgAygLMhwubWV0YWxzdGFjay5hcGkudjIuTlRQU2VydmVyQgi6SAWSAQIQChJLCg9hbGxvY2F0aW9uX3R5cGUYESABKA4yKC5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lQWxsb2NhdGlvblR5cGVCCLpIBYIBAhABEjYKDWZpcmV3YWxsX3NwZWMYEiABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5GaXJld2FsbFNwZWNCBwoFX3V1aWRCDgoMX2Rlc2NyaXB0aW9uQgsKCV9ob3N0bmFtZUIMCgpfcGFydGl0aW9uQgcKBV9zaXplQhQKEl9maWxlc3lzdGVtX2xheW91dEILCglfdXNlcmRhdGEiSAoMRmlyZXdhbGxTcGVjEjgKDmZpcmV3YWxsX3J1bGVzGAEgASgLMiAubWV0YWxzdGFjay5hcGkudjIuRmlyZXdhbGxSdWxlcyJLChxNYWNoaW5lU2VydmljZUNyZWF0ZVJlc3BvbnNlEisKB21hY2hpbmUYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lIrYCChtNYWNoaW5lU2VydmljZVVwZGF0ZVJlcXVlc3QSFgoEdXVpZBgBIAEoCUIIukgFcgOwAQESOgoLdXBkYXRlX21ldGEYAiABKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5VcGRhdGVNZXRhQga6SAPIAQESGQoHcHJvamVjdBgDIAEoCUIIukgFcgOwAQESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSACIAQESNAoGbGFiZWxzGAUgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuVXBkYXRlTGFiZWxzSAGIAQESMAoPc3NoX3B1YmxpY19rZXlzGAYgAygJQhe6SBSSARHQpLOxAgEQMiIHcgUQARiAQEIOCgxfZGVzY3JpcHRpb25CCQoHX2xhYmVscyJLChxNYWNoaW5lU2VydmljZVVwZGF0ZVJlc3BvbnNlEisKB21hY2hpbmUYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lImYKGU1hY2hpbmVTZXJ2aWNlTGlzdFJlcXVlc3QSGQoHcHJvamVjdBgBIAEoCUIIukgFcgOwAQESLgoFcXVlcnkYAiABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lUXVlcnkiSgoaTWFjaGluZVNlcnZpY2VMaXN0UmVzcG9uc2USLAoIbWFjaGluZXMYASADKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lIlAKG01hY2hpbmVTZXJ2aWNlRGVsZXRlUmVxdWVzdBIWCgR1dWlkGAEgASgJQgi6SAVyA7ABARIZCgdwcm9qZWN0GAIgASgJQgi6SAVyA7ABASJLChxNYWNoaW5lU2VydmljZURlbGV0ZVJlc3BvbnNlEisKB21hY2hpbmUYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lIpUBCh9NYWNoaW5lU2VydmljZUJNQ0NvbW1hbmRSZXF1ZXN0EhYKBHV1aWQYASABKAlCCLpIBXIDsAEBEhkKB3Byb2plY3QYAiABKAlCCLpIBXIDsAEBEj8KB2NvbW1hbmQYAyABKA4yJC5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lQk1DQ29tbWFuZEIIukgFggECEAEiIgogTWFjaGluZVNlcnZpY2VCTUNDb21tYW5kUmVzcG9uc2UiUAobTWFjaGluZVNlcnZpY2VHZXRCTUNSZXF1ZXN0EhYKBHV1aWQYASABKAlCCLpIBXIDsAEBEhkKB3Byb2plY3QYAiABKAlCCLpIBXIDsAEBImgKHE1hY2hpbmVTZXJ2aWNlR2V0Qk1DUmVzcG9uc2USFgoEdXVpZBgBIAEoCUIIukgFcgOwAQESMAoDYm1jGAIgASgLMiMubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUJNQ1JlcG9ydCKyAwoHTWFjaGluZRIWCgR1dWlkGAEgASgJQgi6SAVyA7ABARIlCgRtZXRhGAIgASgLMhcubWV0YWxzdGFjay5hcGkudjIuTWV0YRIvCglwYXJ0aXRpb24YAyABKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5QYXJ0aXRpb24SFgoEcmFjaxgEIAEoCUIIukgFcgMYgAESJQoEc2l6ZRgFIAEoCzIXLm1ldGFsc3RhY2suYXBpLnYyLlNpemUSNAoIaGFyZHdhcmUYBiABKAsyIi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lSGFyZHdhcmUSOAoKYWxsb2NhdGlvbhgHIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVBbGxvY2F0aW9uEjAKBnN0YXR1cxgIIAEoCzIgLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTdGF0dXMSVgoacmVjZW50X3Byb3Zpc2lvbmluZ19ldmVudHMYCSABKAsyMi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lUmVjZW50UHJvdmlzaW9uaW5nRXZlbnRzIu8BCg1NYWNoaW5lU3RhdHVzEjYKCWNvbmRpdGlvbhgBIAEoCzIjLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVDb25kaXRpb24SRAoJbGVkX3N0YXRlGAIgASgLMjEubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUNoYXNzaXNJZGVudGlmeUxFRFN0YXRlEkIKCmxpdmVsaW5lc3MYAyABKA4yJC5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTGl2ZWxpbmVzc0IIukgFggECEAESHAoUbWV0YWxfaGFtbWVyX3ZlcnNpb24YBCABKAkiiAEKEE1hY2hpbmVDb25kaXRpb24SOAoFc3RhdGUYASABKA4yHy5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lU3RhdGVCCLpIBYIBAhABEiAKC2Rlc2NyaXB0aW9uGAIgASgJQgu6SAhyBsizrrECARIYCgZpc3N1ZXIYAyABKAlCCLpIBXIDGIACIoMGChFNYWNoaW5lQWxsb2NhdGlvbhIWCgR1dWlkGAEgASgJQgi6SAVyA7ABARIlCgRtZXRhGAIgASgLMhcubWV0YWxzdGFjay5hcGkudjIuTWV0YRIZCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECARIgCgtkZXNjcmlwdGlvbhgEIAEoCUILukgIcgbIs66xAgESHAoKY3JlYXRlZF9ieRgFIAEoCUIIukgFcgMYgAESGQoHcHJvamVjdBgGIAEoCUIIukgFcgOwAQESJwoFaW1hZ2UYByABKAsyGC5tZXRhbHN0YWNrLmFwaS52Mi5JbWFnZRI+ChFmaWxlc3lzdGVtX2xheW91dBgIIAEoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQSMwoIbmV0d29ya3MYCSADKAsyIS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTmV0d29yaxIZCghob3N0bmFtZRgKIAEoCUIHukgEcgJoARIwCg9zc2hfcHVibGljX2tleXMYCyADKAlCF7pIFJIBEdCks7ECARAyIgdyBRABGIBAEiEKCHVzZXJkYXRhGAwgASgJQg+6SAxyCvCzrrECARiAgAISSwoPYWxsb2NhdGlvbl90eXBlGA0gASgOMigubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUFsbG9jYXRpb25UeXBlQgi6SAWCAQIQARI4Cg5maXJld2FsbF9ydWxlcxgOIAEoCzIgLm1ldGFsc3RhY2suYXBpLnYyLkZpcmV3YWxsUnVsZXMSOwoLZG5zX3NlcnZlcnMYDyADKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5ETlNTZXJ2ZXJCCLpIBZIBAhADEjsKC250cF9zZXJ2ZXJzGBAgAygLMhwubWV0YWxzdGFjay5hcGkudjIuTlRQU2VydmVyQgi6SAWSAQIQChIqCgN2cG4YESABKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lVlBOIlMKGE1hY2hpbmVBbGxvY2F0aW9uTmV0d29yaxIcCgduZXR3b3JrGAEgASgJQgu6SAhyBsCzrrECARIZCgNpcHMYAiADKAlCDLpICZIBBsCks7ECASJ/Cg1GaXJld2FsbFJ1bGVzEjUKBmVncmVzcxgBIAMoCzIlLm1ldGFsc3RhY2suYXBpLnYyLkZpcmV3YWxsRWdyZXNzUnVsZRI3CgdpbmdyZXNzGAIgAygLMiYubWV0YWxzdGFjay5hcGkudjIuRmlyZXdhbGxJbmdyZXNzUnVsZSKyAQoSRmlyZXdhbGxFZ3Jlc3NSdWxlEjkKCHByb3RvY29sGAEgASgOMh0ubWV0YWxzdGFjay5hcGkudjIuSVBQcm90b2NvbEIIukgFggECEAESHQoFcG9ydHMYAiADKA1CDrpIC5IBCCIGKgQY/P8DEhgKAnRvGAMgAygJQgy6SAmSAQa4pLOxAgESKAoHY29tbWVudBgEIAEoCUIXukgU2AEBcg8YZDILXlthLXpfIC1dKiQizwEKE0ZpcmV3YWxsSW5ncmVzc1J1bGUSOQoIcHJvdG9jb2wYASABKA4yHS5tZXRhbHN0YWNrLmFwaS52Mi5JUFByb3RvY29sQgi6SAWCAQIQARIdCgVwb3J0cxgCIAMoDUIOukgLkgEIIgYqBBj8/wMSGAoCdG8YAyADKAlCDLpICZIBBriks7ECARIaCgRmcm9tGAQgAygJQgy6SAmSAQa4pLOxAgESKAoHY29tbWVudBgFIAEoCUIXukgU2AEBcg8YZDILXlthLXpfIC1dKiQixgIKDk1hY2hpbmVOZXR3b3JrEg8KB25ldHdvcmsYASABKAkSHgoIcHJlZml4ZXMYAiADKAlCDLpICZIBBriks7ECARIqChRkZXN0aW5hdGlvbl9wcmVmaXhlcxgDIAMoCUIMukgJkgEGuKSzsQIBEhkKA2lwcxgEIAMoCUIMukgJkgEGwKSzsQIBEj4KDG5ldHdvcmtfdHlwZRgFIAEoDjIeLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtUeXBlQgi6SAWCAQIQARI2CghuYXRfdHlwZRgGIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABEgsKA3ZyZhgHIAEoBBILCgNhc24YCCABKA0SHgoHcHJvamVjdBgJIAEoCUIIukgFcgOwAQFIAIgBAUIKCghfcHJvamVjdCLaAQoPTWFjaGluZUhhcmR3YXJlEg4KBm1lbW9yeRgBIAEoBBI0CgVkaXNrcxgCIAMoCzIlLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVCbG9ja0RldmljZRIpCgRjcHVzGAMgAygLMhsubWV0YWxzdGFjay5hcGkudjIuTWV0YWxDUFUSKQoEZ3B1cxgEIAMoCzIbLm1ldGFsc3RhY2suYXBpLnYyLk1ldGFsR1BVEisKBG5pY3MYBSADKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTmljIl0KCE1ldGFsQ1BVEhgKBnZlbmRvchgBIAEoCUIIukgFcgMYgAISFwoFbW9kZWwYAiABKAlCCLpIBXIDGIACEg0KBWNvcmVzGAMgASgNEg8KB3RocmVhZHMYBCABKA0iPQoITWV0YWxHUFUSGAoGdmVuZG9yGAEgASgJQgi6SAVyAxiAAhIXCgVtb2RlbBgCIAEoCUIIukgFcgMYgAIi5QEKCk1hY2hpbmVOaWMSGAoDbWFjGAEgASgJQgu6SAhyBrizrrECARIZCgRuYW1lGAIgASgJQgu6SAhyBsCzrrECARIcCgppZGVudGlmaWVyGAMgASgJQgi6SAVyAxiAARIYCgZ2ZW5kb3IYBCABKAlCCLpIBXIDGIABEhcKBW1vZGVsGAUgASgJQgi6SAVyAxiAARINCgVzcGVlZBgGIAEoBBIwCgluZWlnaGJvcnMYByADKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTmljEhAKCGhvc3RuYW1lGAggASgJIj0KEk1hY2hpbmVCbG9ja0RldmljZRIZCgRuYW1lGAEgASgJQgu6SAhyBsCzrrECARIMCgRzaXplGAIgASgEIlsKHk1hY2hpbmVDaGFzc2lzSWRlbnRpZnlMRURTdGF0ZRIXCgV2YWx1ZRgBIAEoCUIIukgFcgMYgAESIAoLZGVzY3JpcHRpb24YAiABKAlCC7pICHIGyLOusQIBIooDChBNYWNoaW5lQk1DUmVwb3J0EioKA2JtYxgBIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVCTUMSLAoEYmlvcxgCIAEoCzIeLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVCaW9zEioKA2ZydRgDIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVGUlUSOwoMcG93ZXJfbWV0cmljGAQgASgLMiUubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVBvd2VyTWV0cmljEj0KDnBvd2VyX3N1cHBsaWVzGAUgAygLMiUubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVBvd2VyU3VwcGx5EkQKCWxlZF9zdGF0ZRgGIAEoCzIxLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVDaGFzc2lzSWRlbnRpZnlMRURTdGF0ZRIuCgp1cGRhdGVkX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCJjCgtNYWNoaW5lQmlvcxIcCgd2ZXJzaW9uGAEgASgJQgu6SAhyBsizrrECARIbCgZ2ZW5kb3IYAiABKAlCC7pICHIGyLOusQIBEhkKBGRhdGUYAyABKAlCC7pICHIGyLOusQIBItsBCgpNYWNoaW5lQk1DEhkKB2FkZHJlc3MYASABKAlCCLpIBXIDgAIBEhgKA21hYxgCIAEoCUILukgIcga4s66xAgESGQoEdXNlchgDIAEoCUILukgIcgbIs66xAgESHQoIcGFzc3dvcmQYBCABKAlCC7pICHIGyLOusQIBEh4KCWludGVyZmFjZRgFIAEoCUILukgIcgbIs66xAgESHAoHdmVyc2lvbhgGIAEoCUILukgIcgbIs66xAgESIAoLcG93ZXJfc3RhdGUYByABKAlCC7pICHIGyLOusQIBIp4ECgpNYWNoaW5lRlJVEi0KE2NoYXNzaXNfcGFydF9udW1iZXIYASABKAlCC7pICHIGyLOusQIBSACIAQESLQoTY2hhc3Npc19wYXJ0X3NlcmlhbBgCIAEoCUILukgIcgbIs66xAgFIAYgBARIjCglib2FyZF9tZmcYAyABKAlCC7pICHIGyLOusQIBSAKIAQESKgoQYm9hcmRfbWZnX3NlcmlhbBgEIAEoCUILukgIcgbIs66xAgFIA4gBARIrChFib2FyZF9wYXJ0X251bWJlchgFIAEoCUILukgIcgbIs66xAgFIBIgBARIuChRwcm9kdWN0X21hbnVmYWN0dXJlchgGIAEoCUILukgIcgbIs66xAgFIBYgBARItChNwcm9kdWN0X3BhcnRfbnVtYmVyGAcgASgJQgu6SAhyBsizrrECAUgGiAEBEigKDnByb2R1Y3Rfc2VyaWFsGAggASgJQgu6SAhyBsizrrECAUgHiAEBQhYKFF9jaGFzc2lzX3BhcnRfbnVtYmVyQhYKFF9jaGFzc2lzX3BhcnRfc2VyaWFsQgwKCl9ib2FyZF9tZmdCEwoRX2JvYXJkX21mZ19zZXJpYWxCFAoSX2JvYXJkX3BhcnRfbnVtYmVyQhcKFV9wcm9kdWN0X21hbnVmYWN0dXJlckIWChRfcHJvZHVjdF9wYXJ0X251bWJlckIRCg9fcHJvZHVjdF9zZXJpYWwihQEKEk1hY2hpbmVQb3dlck1ldHJpYxIeChZhdmVyYWdlX2NvbnN1bWVkX3dhdHRzGAEgASgCEhcKD2ludGVydmFsX2luX21pbhgCIAEoAhIaChJtYXhfY29uc3VtZWRfd2F0dHMYAyABKAISGgoSbWluX2NvbnN1bWVkX3dhdHRzGAQgASgCIjMKEk1hY2hpbmVQb3dlclN1cHBseRIOCgZoZWFsdGgYASABKAkSDQoFc3RhdGUYAiABKAkipQIKH01hY2hpbmVSZWNlbnRQcm92aXNpb25pbmdFdmVudHMSOwoGZXZlbnRzGAEgAygLMisubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50EjMKD2xhc3RfZXZlbnRfdGltZRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASRQoQbGFzdF9lcnJvcl9ldmVudBgDIAEoCzIrLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVQcm92aXNpb25pbmdFdmVudBJJCgVzdGF0ZRgEIAEoDjIwLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVQcm92aXNpb25pbmdFdmVudFN0YXRlQgi6SAWCAQIQASKVAQoYTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50EigKBHRpbWUYASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEj4KBWV2ZW50GAIgASgOMi8ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50VHlwZRIPCgdtZXNzYWdlGAMgASgJImsKCk1hY2hpbmVWUE4SHQoVY29udHJvbF9wbGFuZV9hZGRyZXNzGAEgASgJEhAKCGF1dGhfa2V5GAIgASgJEhEKCWNvbm5lY3RlZBgDIAEoCBIZCgNpcHMYBCADKAlCDLpICZIBBsCks7ECASK8BwoMTWFjaGluZVF1ZXJ5EhsKBHV1aWQYASABKAlCCLpIBXIDsAEBSACIAQESHgoEbmFtZRgCIAEoCUILukgIcgbAs66xAgFIAYgBARIjCglwYXJ0aXRpb24YAyABKAlCC7pICHIG0LOusQIBSAKIAQESHgoEc2l6ZRgEIAEoCUILukgIcgbAs66xAgFIA4gBARIdCgRyYWNrGAUgASgJQgq6SAdyBRACGIABSASIAQESLgoGbGFiZWxzGAYgASgLMhkubWV0YWxzdGFjay5hcGkudjIuTGFiZWxzSAWIAQESQgoKYWxsb2NhdGlvbhgHIAEoCzIpLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVBbGxvY2F0aW9uUXVlcnlIBogBARI8CgduZXR3b3JrGAggASgLMiYubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZU5ldHdvcmtRdWVyeUgHiAEBEjQKA25pYxgJIAEoCzIiLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVOaWNRdWVyeUgIiAEBEjYKBGRpc2sYCiABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lRGlza1F1ZXJ5SAmIAQESNAoDYm1jGAsgASgLMiIubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUJNQ1F1ZXJ5SAqIAQESNAoDZnJ1GAwgASgLMiIubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUZSVVF1ZXJ5SAuIAQESPgoIaGFyZHdhcmUYDSABKAsyJy5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lSGFyZHdhcmVRdWVyeUgMiAEBEjMKBXN0YXRlGA4gASgOMh8ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVN0YXRlSA2IAQESFAoHd2FpdGluZxgPIAEoCEgOiAEBEhkKDHByZWFsbG9jYXRlZBgQIAEoCEgPiAEBEhoKDW5vdF9hbGxvY2F0ZWQYESABKAhIEIgBAUIHCgVfdXVpZEIHCgVfbmFtZUIMCgpfcGFydGl0aW9uQgcKBV9zaXplQgcKBV9yYWNrQgkKB19sYWJlbHNCDQoLX2FsbG9jYXRpb25CCgoIX25ldHdvcmtCBgoEX25pY0IHCgVfZGlza0IGCgRfYm1jQgYKBF9mcnVCCwoJX2hhcmR3YXJlQggKBl9zdGF0ZUIKCghfd2FpdGluZ0IPCg1fcHJlYWxsb2NhdGVkQhAKDl9ub3RfYWxsb2NhdGVkIogEChZNYWNoaW5lQWxsb2NhdGlvblF1ZXJ5EhsKBHV1aWQYASABKAlCCLpIBXIDsAEBSACIAQESHgoEbmFtZRgCIAEoCUILukgIcgbAs66xAgFIAYgBARIeCgdwcm9qZWN0GAMgASgJQgi6SAVyA7ABAUgCiAEBEh8KBWltYWdlGAQgASgJQgu6SAhyBsCzrrECAUgDiAEBEisKEWZpbGVzeXN0ZW1fbGF5b3V0GAUgASgJQgu6SAhyBsCzrrECAUgEiAEBEh4KCGhvc3RuYW1lGAYgASgJQge6SARyAmgBSAWIAQESUAoPYWxsb2NhdGlvbl90eXBlGAcgASgOMigubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUFsbG9jYXRpb25UeXBlQgi6SAWCAQIQAUgGiAEBEi4KBmxhYmVscxgIIAEoCzIZLm1ldGFsc3RhY2suYXBpLnYyLkxhYmVsc0gHiAEBEi8KA3ZwbhgJIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVWUE5ICIgBAUIHCgVfdXVpZEIHCgVfbmFtZUIKCghfcHJvamVjdEIICgZfaW1hZ2VCFAoSX2ZpbGVzeXN0ZW1fbGF5b3V0QgsKCV9ob3N0bmFtZUISChBfYWxsb2NhdGlvbl90eXBlQgkKB19sYWJlbHNCBgoEX3ZwbiKqAQoTTWFjaGluZU5ldHdvcmtRdWVyeRIQCghuZXR3b3JrcxgBIAMoCRIeCghwcmVmaXhlcxgCIAMoCUIMukgJkgEGuKSzsQIBEioKFGRlc3RpbmF0aW9uX3ByZWZpeGVzGAMgAygJQgy6SAmSAQa4pLOxAgESGQoDaXBzGAQgAygJQgy6SAmSAQbApLOxAgESDAoEdnJmcxgFIAMoBBIMCgRhc25zGAYgAygNIq8BCg9NYWNoaW5lTmljUXVlcnkSIgoEbWFjcxgBIAMoCUIUukgRkgEOEGQYASIIcga4s66xAgESIAoFbmFtZXMYAiADKAlCEbpIDpIBCxBkGAEiBXIDGIABEisKDW5laWdoYm9yX21hY3MYAyADKAlCFLpIEZIBDhBkGAEiCHIGuLOusQIBEikKDm5laWdoYm9yX25hbWVzGAQgAygJQhG6SA6SAQsQZBgBIgVyAxiAASJLChBNYWNoaW5lRGlza1F1ZXJ5Eh4KBW5hbWVzGAEgAygJQg+6SAySAQkQZCIFcgMYgAESFwoFc2l6ZXMYAiADKARCCLpIBZIBAhBkIrkBCg9NYWNoaW5lQk1DUXVlcnkSHQoHYWRkcmVzcxgBIAEoCUIHukgEcgJwAUgAiAEBEh0KA21hYxgCIAEoCUILukgIcga4s66xAgFIAYgBARIbCgR1c2VyGAMgASgJQgi6SAVyAxiAAUgCiAEBEiAKCWludGVyZmFjZRgEIAEoCUIIukgFcgMYgAFIA4gBAUIKCghfYWRkcmVzc0IGCgRfbWFjQgcKBV91c2VyQgwKCl9pbnRlcmZhY2UigwQKD01hY2hpbmVGUlVRdWVyeRIqChNjaGFzc2lzX3BhcnRfbnVtYmVyGAEgASgJQgi6SAVyAxiAAUgAiAEBEioKE2NoYXNzaXNfcGFydF9zZXJpYWwYAiABKAlCCLpIBXIDGIABSAGIAQESIAoJYm9hcmRfbWZnGAMgASgJQgi6SAVyAxiAAUgCiAEBEiMKDGJvYXJkX3NlcmlhbBgEIAEoCUIIukgFcgMYgAFIA4gBARIoChFib2FyZF9wYXJ0X251bWJlchgFIAEoCUIIukgFcgMYgAFIBIgBARIrChRwcm9kdWN0X21hbnVmYWN0dXJlchgGIAEoCUIIukgFcgMYgAFIBYgBARIqChNwcm9kdWN0X3BhcnRfbnVtYmVyGAcgASgJQgi6SAVyAxiAAUgGiAEBEiUKDnByb2R1Y3Rfc2VyaWFsGAggASgJQgi6SAVyAxiAAUgHiAEBQhYKFF9jaGFzc2lzX3BhcnRfbnVtYmVyQhYKFF9jaGFzc2lzX3BhcnRfc2VyaWFsQgwKCl9ib2FyZF9tZmdCDwoNX2JvYXJkX3NlcmlhbEIUChJfYm9hcmRfcGFydF9udW1iZXJCFwoVX3Byb2R1Y3RfbWFudWZhY3R1cmVyQhYKFF9wcm9kdWN0X3BhcnRfbnVtYmVyQhEKD19wcm9kdWN0X3NlcmlhbCJcChRNYWNoaW5lSGFyZHdhcmVRdWVyeRITCgZtZW1vcnkYASABKARIAIgBARIWCgljcHVfY29yZXMYAiABKA1IAYgBAUIJCgdfbWVtb3J5QgwKCl9jcHVfY29yZXMqZQoKSVBQcm90b2NvbBIbChdJUF9QUk9UT0NPTF9VTlNQRUNJRklFRBAAEhwKD0lQX1BST1RPQ09MX1RDUBABGgeCshkDdGNwEhwKD0lQX1BST1RPQ09MX1VEUBACGgeCshkDdWRwKq0BCgxNYWNoaW5lU3RhdGUSIwoZTUFDSElORV9TVEFURV9VTlNQRUNJRklFRBAAGgSCshkAEiYKFU1BQ0hJTkVfU1RBVEVfVEFJTlRFRBABGguCshkHdGFpbnRlZBIkChRNQUNISU5FX1NUQVRFX0xPQ0tFRBACGgqCshkGbG9ja2VkEioKF01BQ0hJTkVfU1RBVEVfQVZBSUxBQkxFEAMaDYKyGQlhdmFpbGFibGUq3wEKHU1hY2hpbmVQcm92aXNpb25pbmdFdmVudFN0YXRlEjYKLE1BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1NUQVRFX1VOU1BFQ0lGSUVEEAAaBIKyGQASPQoqTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfU1RBVEVfQ1JBU0hMT09QEAEaDYKyGQljcmFzaGxvb3ASRwovTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfU1RBVEVfRkFJTEVEX1JFQ0xBSU0QAhoSgrIZDmZhaWxlZC1yZWNsYWltKp8GChxNYWNoaW5lUHJvdmlzaW9uaW5nRXZlbnRUeXBlEi8KK01BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfVU5TUEVDSUZJRUQQABI0CiVNQUNISU5FX1BST1ZJU0lPTklOR19FVkVOVF9UWVBFX0FMSVZFEAEaCYKyGQVBbGl2ZRI4CidNQUNISU5FX1BST1ZJU0lPTklOR19FVkVOVF9UWVBFX0NSQVNIRUQQAhoLgrIZB0NyYXNoZWQSQAorTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9QWEVfQk9PVElORxADGg+CshkLUFhFIEJvb3RpbmcSRgouTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9QTEFOTkVEX1JFQk9PVBAEGhKCshkOUGxhbm5lZCBSZWJvb3QSPAopTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9QUkVQQVJJTkcQBRoNgrIZCVByZXBhcmluZxJACitNQUNISU5FX1BST1ZJU0lPTklOR19FVkVOVF9UWVBFX1JFR0lTVEVSSU5HEAYaD4KyGQtSZWdpc3RlcmluZxI4CidNQUNISU5FX1BST1ZJU0lPTklOR19FVkVOVF9UWVBFX1dBSVRJTkcQBxoLgrIZB1dhaXRpbmcSPgoqTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9JTlNUQUxMSU5HEAgaDoKyGQpJbnN0YWxsaW5nEk4KMk1BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfQk9PVElOR19ORVdfS0VSTkVMEAkaFoKyGRJCb290aW5nIE5ldyBLZXJuZWwSQAorTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9QSE9ORURfSE9NRRAKGg+CshkLUGhvbmVkIEhvbWUSSAovTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9NQUNISU5FX1JFQ0xBSU0QCxoTgrIZD01hY2hpbmUgUmVjbGFpbSq6AQoRTWFjaGluZUxpdmVsaW5lc3MSKAoeTUFDSElORV9MSVZFTElORVNTX1VOU1BFQ0lGSUVEEAAaBIKyGQASJwoYTUFDSElORV9MSVZFTElORVNTX0FMSVZFEAEaCYKyGQVhbGl2ZRIlChdNQUNISU5FX0xJVkVMSU5FU1NfREVBRBACGgiCshkEZGVhZBIrChpNQUNISU5FX0xJVkVMSU5FU1NfVU5LTk9XThADGguCshkHdW5rbm93biqsAQoVTWFjaGluZUFsbG9jYXRpb25UeXBlEi0KI01BQ0hJTkVfQUxMT0NBVElPTl9UWVBFX1VOU1BFQ0lGSUVEEAAaBIKyGQASMAofTUFDSElORV9BTExPQ0FUSU9OX1RZUEVfTUFDSElORRABGguCshkHbWFjaGluZRIyCiBNQUNISU5FX0FMTE9DQVRJT05fVFlQRV9GSVJFV0FMTBACGgyCshkIZmlyZXdhbGwq/gQKEU1hY2hpbmVCTUNDb21tYW5kEiMKH01BQ0hJTkVfQk1DX0NPTU1BTkRfVU5TUEVDSUZJRUQQABIiChZNQUNISU5FX0JNQ19DT01NQU5EX09OEAEaBoKyGQJvbhIkChdNQUNISU5FX0JNQ19DT01NQU5EX09GRhACGgeCshkDb2ZmEigKGU1BQ0hJTkVfQk1DX0NPTU1BTkRfUkVTRVQQAxoJgrIZBXJlc2V0EigKGU1BQ0hJTkVfQk1DX0NPTU1BTkRfQ1lDTEUQBBoJgrIZBWN5Y2xlEjYKIE1BQ0hJTkVfQk1DX0NPTU1BTkRfQk9PVF9UT19CSU9TEAUaEIKyGQxib290LXRvLWJpb3MSOgoiTUFDSElORV9CTUNfQ09NTUFORF9CT09UX0ZST01fRElTSxAGGhKCshkOYm9vdC1mcm9tLWRpc2sSOAohTUFDSElORV9CTUNfQ09NTUFORF9CT09UX0ZST01fUFhFEAcaEYKyGQ1ib290LWZyb20tcHhlEjwKI01BQ0hJTkVfQk1DX0NPTU1BTkRfSURFTlRJRllfTEVEX09OEAgaE4KyGQ9pZGVudGlmeS1sZWQtb24SPgokTUFDSElORV9CTUNfQ09NTUFORF9JREVOVElGWV9MRURfT0ZGEAkaFIKyGRBpZGVudGlmeS1sZWQtb2ZmEjwKI01BQ0hJTkVfQk1DX0NPTU1BTkRfTUFDSElORV9ERUxFVEVEEAoaE4KyGQ9tYWNoaW5lLWRlbGV0ZWQSPAojTUFDSElORV9CTUNfQ09NTUFORF9NQUNISU5FX0NSRUFURUQQCxoTgrIZD21hY2hpbmUtY3JlYXRlZDLRBgoOTWFjaGluZVNlcnZpY2USbQoDR2V0EisubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VHZXRSZXF1ZXN0GiwubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VHZXRSZXNwb25zZSILyvMYAwECA+DzGAISdQoGQ3JlYXRlEi4ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VDcmVhdGVSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VDcmVhdGVSZXNwb25zZSIKyvMYAgEC4PMYARJ1CgZVcGRhdGUSLi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lU2VydmljZVVwZGF0ZVJlcXVlc3QaLy5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lU2VydmljZVVwZGF0ZVJlc3BvbnNlIgrK8xgCAQLg8xgBEnAKBExpc3QSLC5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lU2VydmljZUxpc3RSZXF1ZXN0Gi0ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VMaXN0UmVzcG9uc2UiC8rzGAMBAgPg8xgCEnUKBkRlbGV0ZRIuLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlRGVsZXRlUmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlRGVsZXRlUmVzcG9uc2UiCsrzGAIBAuDzGAESgQEKCkJNQ0NvbW1hbmQSMi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lU2VydmljZUJNQ0NvbW1hbmRSZXF1ZXN0GjMubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VCTUNDb21tYW5kUmVzcG9uc2UiCsrzGAIBAuDzGAESdQoGR2V0Qk1DEi4ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VHZXRCTUNSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VHZXRCTUNSZXNwb25zZSIKyvMYAgEC4PMYAULCAQoVY29tLm1ldGFsc3RhY2suYXBpLnYyQgxNYWNoaW5lUHJvdG9QAVo1Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9hcGkvdjI7YXBpdjKiAgNNQViqAhFNZXRhbHN0YWNrLkFwaS5WMsoCEU1ldGFsc3RhY2tcQXBpXFYy4gIdTWV0YWxzdGFja1xBcGlcVjJcR1BCTWV0YWRhdGHqAhNNZXRhbHN0YWNrOjpBcGk6OlYyYgZwcm90bzM", [file_buf_validate_validate, file_google_protobuf_timestamp, file_metalstack_api_v2_common, file_metalstack_api_v2_filesystem, file_metalstack_api_v2_image, file_metalstack_api_v2_network, file_metalstack_api_v2_partition, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_size]); +export const file_metalstack_api_v2_machine = /*@__PURE__*/ fileDesc("Ch9tZXRhbHN0YWNrL2FwaS92Mi9tYWNoaW5lLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiJNChhNYWNoaW5lU2VydmljZUdldFJlcXVlc3QSFgoEdXVpZBgBIAEoCUIIukgFcgOwAQESGQoHcHJvamVjdBgCIAEoCUIIukgFcgOwAQEiSAoZTWFjaGluZVNlcnZpY2VHZXRSZXNwb25zZRIrCgdtYWNoaW5lGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZSKUBwobTWFjaGluZVNlcnZpY2VDcmVhdGVSZXF1ZXN0EhkKB3Byb2plY3QYASABKAlCCLpIBXIDsAEBEhsKBHV1aWQYAiABKAlCCLpIBXIDsAEBSACIAQESGQoEbmFtZRgDIAEoCUILukgIcgbAs66xAgESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSAGIAQESHgoIaG9zdG5hbWUYBSABKAlCB7pIBHICaAFIAogBARIjCglwYXJ0aXRpb24YBiABKAlCC7pICHIG0LOusQIBSAOIAQESHgoEc2l6ZRgHIAEoCUILukgIcgbAs66xAgFIBIgBARIaCgVpbWFnZRgIIAEoCUILukgIcgbAs66xAgESKwoRZmlsZXN5c3RlbV9sYXlvdXQYCSABKAlCC7pICHIGwLOusQIBSAWIAQESMAoPc3NoX3B1YmxpY19rZXlzGAogAygJQhe6SBSSARHQpLOxAgEQMiIHcgUQARiAQBImCgh1c2VyZGF0YRgLIAEoCUIPukgMcgrws66xAgEYgIACSAaIAQESKQoGbGFiZWxzGAwgASgLMhkubWV0YWxzdGFjay5hcGkudjIuTGFiZWxzEkcKCG5ldHdvcmtzGA0gAygLMisubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUFsbG9jYXRpb25OZXR3b3JrQgi6SAWSAQIIARIgCg5wbGFjZW1lbnRfdGFncxgOIAMoCUIIukgFkgECEEASOwoLZG5zX3NlcnZlcnMYDyADKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5ETlNTZXJ2ZXJCCLpIBZIBAhADEjsKC250cF9zZXJ2ZXJzGBAgAygLMhwubWV0YWxzdGFjay5hcGkudjIuTlRQU2VydmVyQgi6SAWSAQIQChJLCg9hbGxvY2F0aW9uX3R5cGUYESABKA4yKC5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lQWxsb2NhdGlvblR5cGVCCLpIBYIBAhABEjYKDWZpcmV3YWxsX3NwZWMYEiABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5GaXJld2FsbFNwZWNCBwoFX3V1aWRCDgoMX2Rlc2NyaXB0aW9uQgsKCV9ob3N0bmFtZUIMCgpfcGFydGl0aW9uQgcKBV9zaXplQhQKEl9maWxlc3lzdGVtX2xheW91dEILCglfdXNlcmRhdGEiSAoMRmlyZXdhbGxTcGVjEjgKDmZpcmV3YWxsX3J1bGVzGAEgASgLMiAubWV0YWxzdGFjay5hcGkudjIuRmlyZXdhbGxSdWxlcyJLChxNYWNoaW5lU2VydmljZUNyZWF0ZVJlc3BvbnNlEisKB21hY2hpbmUYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lIrYCChtNYWNoaW5lU2VydmljZVVwZGF0ZVJlcXVlc3QSFgoEdXVpZBgBIAEoCUIIukgFcgOwAQESOgoLdXBkYXRlX21ldGEYAiABKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5VcGRhdGVNZXRhQga6SAPIAQESGQoHcHJvamVjdBgDIAEoCUIIukgFcgOwAQESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSACIAQESNAoGbGFiZWxzGAUgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuVXBkYXRlTGFiZWxzSAGIAQESMAoPc3NoX3B1YmxpY19rZXlzGAYgAygJQhe6SBSSARHQpLOxAgEQMiIHcgUQARiAQEIOCgxfZGVzY3JpcHRpb25CCQoHX2xhYmVscyJLChxNYWNoaW5lU2VydmljZVVwZGF0ZVJlc3BvbnNlEisKB21hY2hpbmUYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lImYKGU1hY2hpbmVTZXJ2aWNlTGlzdFJlcXVlc3QSGQoHcHJvamVjdBgBIAEoCUIIukgFcgOwAQESLgoFcXVlcnkYAiABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lUXVlcnkiSgoaTWFjaGluZVNlcnZpY2VMaXN0UmVzcG9uc2USLAoIbWFjaGluZXMYASADKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lIlAKG01hY2hpbmVTZXJ2aWNlRGVsZXRlUmVxdWVzdBIWCgR1dWlkGAEgASgJQgi6SAVyA7ABARIZCgdwcm9qZWN0GAIgASgJQgi6SAVyA7ABASJLChxNYWNoaW5lU2VydmljZURlbGV0ZVJlc3BvbnNlEisKB21hY2hpbmUYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lIpUBCh9NYWNoaW5lU2VydmljZUJNQ0NvbW1hbmRSZXF1ZXN0EhYKBHV1aWQYASABKAlCCLpIBXIDsAEBEhkKB3Byb2plY3QYAiABKAlCCLpIBXIDsAEBEj8KB2NvbW1hbmQYAyABKA4yJC5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lQk1DQ29tbWFuZEIIukgFggECEAEiIgogTWFjaGluZVNlcnZpY2VCTUNDb21tYW5kUmVzcG9uc2UiUAobTWFjaGluZVNlcnZpY2VHZXRCTUNSZXF1ZXN0EhYKBHV1aWQYASABKAlCCLpIBXIDsAEBEhkKB3Byb2plY3QYAiABKAlCCLpIBXIDsAEBImgKHE1hY2hpbmVTZXJ2aWNlR2V0Qk1DUmVzcG9uc2USFgoEdXVpZBgBIAEoCUIIukgFcgOwAQESMAoDYm1jGAIgASgLMiMubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUJNQ1JlcG9ydCKyAwoHTWFjaGluZRIWCgR1dWlkGAEgASgJQgi6SAVyA7ABARIlCgRtZXRhGAIgASgLMhcubWV0YWxzdGFjay5hcGkudjIuTWV0YRIvCglwYXJ0aXRpb24YAyABKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5QYXJ0aXRpb24SFgoEcmFjaxgEIAEoCUIIukgFcgMYgAESJQoEc2l6ZRgFIAEoCzIXLm1ldGFsc3RhY2suYXBpLnYyLlNpemUSNAoIaGFyZHdhcmUYBiABKAsyIi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lSGFyZHdhcmUSOAoKYWxsb2NhdGlvbhgHIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVBbGxvY2F0aW9uEjAKBnN0YXR1cxgIIAEoCzIgLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTdGF0dXMSVgoacmVjZW50X3Byb3Zpc2lvbmluZ19ldmVudHMYCSABKAsyMi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lUmVjZW50UHJvdmlzaW9uaW5nRXZlbnRzIu8BCg1NYWNoaW5lU3RhdHVzEjYKCWNvbmRpdGlvbhgBIAEoCzIjLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVDb25kaXRpb24SRAoJbGVkX3N0YXRlGAIgASgLMjEubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUNoYXNzaXNJZGVudGlmeUxFRFN0YXRlEkIKCmxpdmVsaW5lc3MYAyABKA4yJC5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTGl2ZWxpbmVzc0IIukgFggECEAESHAoUbWV0YWxfaGFtbWVyX3ZlcnNpb24YBCABKAkiiAEKEE1hY2hpbmVDb25kaXRpb24SOAoFc3RhdGUYASABKA4yHy5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lU3RhdGVCCLpIBYIBAhABEiAKC2Rlc2NyaXB0aW9uGAIgASgJQgu6SAhyBsizrrECARIYCgZpc3N1ZXIYAyABKAlCCLpIBXIDGIACIoMGChFNYWNoaW5lQWxsb2NhdGlvbhIWCgR1dWlkGAEgASgJQgi6SAVyA7ABARIlCgRtZXRhGAIgASgLMhcubWV0YWxzdGFjay5hcGkudjIuTWV0YRIZCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECARIgCgtkZXNjcmlwdGlvbhgEIAEoCUILukgIcgbIs66xAgESHAoKY3JlYXRlZF9ieRgFIAEoCUIIukgFcgMYgAESGQoHcHJvamVjdBgGIAEoCUIIukgFcgOwAQESJwoFaW1hZ2UYByABKAsyGC5tZXRhbHN0YWNrLmFwaS52Mi5JbWFnZRI+ChFmaWxlc3lzdGVtX2xheW91dBgIIAEoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQSMwoIbmV0d29ya3MYCSADKAsyIS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTmV0d29yaxIZCghob3N0bmFtZRgKIAEoCUIHukgEcgJoARIwCg9zc2hfcHVibGljX2tleXMYCyADKAlCF7pIFJIBEdCks7ECARAyIgdyBRABGIBAEiEKCHVzZXJkYXRhGAwgASgJQg+6SAxyCvCzrrECARiAgAISSwoPYWxsb2NhdGlvbl90eXBlGA0gASgOMigubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUFsbG9jYXRpb25UeXBlQgi6SAWCAQIQARI4Cg5maXJld2FsbF9ydWxlcxgOIAEoCzIgLm1ldGFsc3RhY2suYXBpLnYyLkZpcmV3YWxsUnVsZXMSOwoLZG5zX3NlcnZlcnMYDyADKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5ETlNTZXJ2ZXJCCLpIBZIBAhADEjsKC250cF9zZXJ2ZXJzGBAgAygLMhwubWV0YWxzdGFjay5hcGkudjIuTlRQU2VydmVyQgi6SAWSAQIQChIqCgN2cG4YESABKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lVlBOIlMKGE1hY2hpbmVBbGxvY2F0aW9uTmV0d29yaxIcCgduZXR3b3JrGAEgASgJQgu6SAhyBsCzrrECARIZCgNpcHMYAiADKAlCDLpICZIBBsCks7ECASJ/Cg1GaXJld2FsbFJ1bGVzEjUKBmVncmVzcxgBIAMoCzIlLm1ldGFsc3RhY2suYXBpLnYyLkZpcmV3YWxsRWdyZXNzUnVsZRI3CgdpbmdyZXNzGAIgAygLMiYubWV0YWxzdGFjay5hcGkudjIuRmlyZXdhbGxJbmdyZXNzUnVsZSKyAQoSRmlyZXdhbGxFZ3Jlc3NSdWxlEjkKCHByb3RvY29sGAEgASgOMh0ubWV0YWxzdGFjay5hcGkudjIuSVBQcm90b2NvbEIIukgFggECEAESHQoFcG9ydHMYAiADKA1CDrpIC5IBCCIGKgQY/P8DEhgKAnRvGAMgAygJQgy6SAmSAQa4pLOxAgESKAoHY29tbWVudBgEIAEoCUIXukgU2AEBcg8YZDILXlthLXpfIC1dKiQizwEKE0ZpcmV3YWxsSW5ncmVzc1J1bGUSOQoIcHJvdG9jb2wYASABKA4yHS5tZXRhbHN0YWNrLmFwaS52Mi5JUFByb3RvY29sQgi6SAWCAQIQARIdCgVwb3J0cxgCIAMoDUIOukgLkgEIIgYqBBj8/wMSGAoCdG8YAyADKAlCDLpICZIBBriks7ECARIaCgRmcm9tGAQgAygJQgy6SAmSAQa4pLOxAgESKAoHY29tbWVudBgFIAEoCUIXukgU2AEBcg8YZDILXlthLXpfIC1dKiQixgIKDk1hY2hpbmVOZXR3b3JrEg8KB25ldHdvcmsYASABKAkSHgoIcHJlZml4ZXMYAiADKAlCDLpICZIBBriks7ECARIqChRkZXN0aW5hdGlvbl9wcmVmaXhlcxgDIAMoCUIMukgJkgEGuKSzsQIBEhkKA2lwcxgEIAMoCUIMukgJkgEGwKSzsQIBEj4KDG5ldHdvcmtfdHlwZRgFIAEoDjIeLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtUeXBlQgi6SAWCAQIQARI2CghuYXRfdHlwZRgGIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABEgsKA3ZyZhgHIAEoBBILCgNhc24YCCABKA0SHgoHcHJvamVjdBgJIAEoCUIIukgFcgOwAQFIAIgBAUIKCghfcHJvamVjdCLaAQoPTWFjaGluZUhhcmR3YXJlEg4KBm1lbW9yeRgBIAEoBBI0CgVkaXNrcxgCIAMoCzIlLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVCbG9ja0RldmljZRIpCgRjcHVzGAMgAygLMhsubWV0YWxzdGFjay5hcGkudjIuTWV0YWxDUFUSKQoEZ3B1cxgEIAMoCzIbLm1ldGFsc3RhY2suYXBpLnYyLk1ldGFsR1BVEisKBG5pY3MYBSADKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTmljIl0KCE1ldGFsQ1BVEhgKBnZlbmRvchgBIAEoCUIIukgFcgMYgAISFwoFbW9kZWwYAiABKAlCCLpIBXIDGIACEg0KBWNvcmVzGAMgASgNEg8KB3RocmVhZHMYBCABKA0iPQoITWV0YWxHUFUSGAoGdmVuZG9yGAEgASgJQgi6SAVyAxiAAhIXCgVtb2RlbBgCIAEoCUIIukgFcgMYgAIi5QEKCk1hY2hpbmVOaWMSGAoDbWFjGAEgASgJQgu6SAhyBrizrrECARIZCgRuYW1lGAIgASgJQgu6SAhyBsCzrrECARIcCgppZGVudGlmaWVyGAMgASgJQgi6SAVyAxiAARIYCgZ2ZW5kb3IYBCABKAlCCLpIBXIDGIABEhcKBW1vZGVsGAUgASgJQgi6SAVyAxiAARINCgVzcGVlZBgGIAEoBBIwCgluZWlnaGJvcnMYByADKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTmljEhAKCGhvc3RuYW1lGAggASgJIj0KEk1hY2hpbmVCbG9ja0RldmljZRIZCgRuYW1lGAEgASgJQgu6SAhyBsCzrrECARIMCgRzaXplGAIgASgEIlsKHk1hY2hpbmVDaGFzc2lzSWRlbnRpZnlMRURTdGF0ZRIXCgV2YWx1ZRgBIAEoCUIIukgFcgMYgAESIAoLZGVzY3JpcHRpb24YAiABKAlCC7pICHIGyLOusQIBIooDChBNYWNoaW5lQk1DUmVwb3J0EioKA2JtYxgBIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVCTUMSLAoEYmlvcxgCIAEoCzIeLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVCaW9zEioKA2ZydRgDIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVGUlUSOwoMcG93ZXJfbWV0cmljGAQgASgLMiUubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVBvd2VyTWV0cmljEj0KDnBvd2VyX3N1cHBsaWVzGAUgAygLMiUubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVBvd2VyU3VwcGx5EkQKCWxlZF9zdGF0ZRgGIAEoCzIxLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVDaGFzc2lzSWRlbnRpZnlMRURTdGF0ZRIuCgp1cGRhdGVkX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCJjCgtNYWNoaW5lQmlvcxIcCgd2ZXJzaW9uGAEgASgJQgu6SAhyBsizrrECARIbCgZ2ZW5kb3IYAiABKAlCC7pICHIGyLOusQIBEhkKBGRhdGUYAyABKAlCC7pICHIGyLOusQIBItsBCgpNYWNoaW5lQk1DEhkKB2FkZHJlc3MYASABKAlCCLpIBXIDgAIBEhgKA21hYxgCIAEoCUILukgIcga4s66xAgESGQoEdXNlchgDIAEoCUILukgIcgbIs66xAgESHQoIcGFzc3dvcmQYBCABKAlCC7pICHIGyLOusQIBEh4KCWludGVyZmFjZRgFIAEoCUILukgIcgbIs66xAgESHAoHdmVyc2lvbhgGIAEoCUILukgIcgbIs66xAgESIAoLcG93ZXJfc3RhdGUYByABKAlCC7pICHIGyLOusQIBIp4ECgpNYWNoaW5lRlJVEi0KE2NoYXNzaXNfcGFydF9udW1iZXIYASABKAlCC7pICHIGyLOusQIBSACIAQESLQoTY2hhc3Npc19wYXJ0X3NlcmlhbBgCIAEoCUILukgIcgbIs66xAgFIAYgBARIjCglib2FyZF9tZmcYAyABKAlCC7pICHIGyLOusQIBSAKIAQESKgoQYm9hcmRfbWZnX3NlcmlhbBgEIAEoCUILukgIcgbIs66xAgFIA4gBARIrChFib2FyZF9wYXJ0X251bWJlchgFIAEoCUILukgIcgbIs66xAgFIBIgBARIuChRwcm9kdWN0X21hbnVmYWN0dXJlchgGIAEoCUILukgIcgbIs66xAgFIBYgBARItChNwcm9kdWN0X3BhcnRfbnVtYmVyGAcgASgJQgu6SAhyBsizrrECAUgGiAEBEigKDnByb2R1Y3Rfc2VyaWFsGAggASgJQgu6SAhyBsizrrECAUgHiAEBQhYKFF9jaGFzc2lzX3BhcnRfbnVtYmVyQhYKFF9jaGFzc2lzX3BhcnRfc2VyaWFsQgwKCl9ib2FyZF9tZmdCEwoRX2JvYXJkX21mZ19zZXJpYWxCFAoSX2JvYXJkX3BhcnRfbnVtYmVyQhcKFV9wcm9kdWN0X21hbnVmYWN0dXJlckIWChRfcHJvZHVjdF9wYXJ0X251bWJlckIRCg9fcHJvZHVjdF9zZXJpYWwihQEKEk1hY2hpbmVQb3dlck1ldHJpYxIeChZhdmVyYWdlX2NvbnN1bWVkX3dhdHRzGAEgASgCEhcKD2ludGVydmFsX2luX21pbhgCIAEoAhIaChJtYXhfY29uc3VtZWRfd2F0dHMYAyABKAISGgoSbWluX2NvbnN1bWVkX3dhdHRzGAQgASgCIjMKEk1hY2hpbmVQb3dlclN1cHBseRIOCgZoZWFsdGgYASABKAkSDQoFc3RhdGUYAiABKAkipQIKH01hY2hpbmVSZWNlbnRQcm92aXNpb25pbmdFdmVudHMSOwoGZXZlbnRzGAEgAygLMisubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50EjMKD2xhc3RfZXZlbnRfdGltZRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASRQoQbGFzdF9lcnJvcl9ldmVudBgDIAEoCzIrLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVQcm92aXNpb25pbmdFdmVudBJJCgVzdGF0ZRgEIAEoDjIwLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVQcm92aXNpb25pbmdFdmVudFN0YXRlQgi6SAWCAQIQASKfAQoYTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50EigKBHRpbWUYASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEkgKBWV2ZW50GAIgASgOMi8ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50VHlwZUIIukgFggECEAESDwoHbWVzc2FnZRgDIAEoCSJrCgpNYWNoaW5lVlBOEh0KFWNvbnRyb2xfcGxhbmVfYWRkcmVzcxgBIAEoCRIQCghhdXRoX2tleRgCIAEoCRIRCgljb25uZWN0ZWQYAyABKAgSGQoDaXBzGAQgAygJQgy6SAmSAQbApLOxAgEivAcKDE1hY2hpbmVRdWVyeRIbCgR1dWlkGAEgASgJQgi6SAVyA7ABAUgAiAEBEh4KBG5hbWUYAiABKAlCC7pICHIGwLOusQIBSAGIAQESIwoJcGFydGl0aW9uGAMgASgJQgu6SAhyBtCzrrECAUgCiAEBEh4KBHNpemUYBCABKAlCC7pICHIGwLOusQIBSAOIAQESHQoEcmFjaxgFIAEoCUIKukgHcgUQAhiAAUgEiAEBEi4KBmxhYmVscxgGIAEoCzIZLm1ldGFsc3RhY2suYXBpLnYyLkxhYmVsc0gFiAEBEkIKCmFsbG9jYXRpb24YByABKAsyKS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lQWxsb2NhdGlvblF1ZXJ5SAaIAQESPAoHbmV0d29yaxgIIAEoCzImLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVOZXR3b3JrUXVlcnlIB4gBARI0CgNuaWMYCSABKAsyIi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTmljUXVlcnlICIgBARI2CgRkaXNrGAogASgLMiMubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZURpc2tRdWVyeUgJiAEBEjQKA2JtYxgLIAEoCzIiLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVCTUNRdWVyeUgKiAEBEjQKA2ZydRgMIAEoCzIiLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVGUlVRdWVyeUgLiAEBEj4KCGhhcmR3YXJlGA0gASgLMicubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUhhcmR3YXJlUXVlcnlIDIgBARIzCgVzdGF0ZRgOIAEoDjIfLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTdGF0ZUgNiAEBEhQKB3dhaXRpbmcYDyABKAhIDogBARIZCgxwcmVhbGxvY2F0ZWQYECABKAhID4gBARIaCg1ub3RfYWxsb2NhdGVkGBEgASgISBCIAQFCBwoFX3V1aWRCBwoFX25hbWVCDAoKX3BhcnRpdGlvbkIHCgVfc2l6ZUIHCgVfcmFja0IJCgdfbGFiZWxzQg0KC19hbGxvY2F0aW9uQgoKCF9uZXR3b3JrQgYKBF9uaWNCBwoFX2Rpc2tCBgoEX2JtY0IGCgRfZnJ1QgsKCV9oYXJkd2FyZUIICgZfc3RhdGVCCgoIX3dhaXRpbmdCDwoNX3ByZWFsbG9jYXRlZEIQCg5fbm90X2FsbG9jYXRlZCKIBAoWTWFjaGluZUFsbG9jYXRpb25RdWVyeRIbCgR1dWlkGAEgASgJQgi6SAVyA7ABAUgAiAEBEh4KBG5hbWUYAiABKAlCC7pICHIGwLOusQIBSAGIAQESHgoHcHJvamVjdBgDIAEoCUIIukgFcgOwAQFIAogBARIfCgVpbWFnZRgEIAEoCUILukgIcgbAs66xAgFIA4gBARIrChFmaWxlc3lzdGVtX2xheW91dBgFIAEoCUILukgIcgbAs66xAgFIBIgBARIeCghob3N0bmFtZRgGIAEoCUIHukgEcgJoAUgFiAEBElAKD2FsbG9jYXRpb25fdHlwZRgHIAEoDjIoLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVBbGxvY2F0aW9uVHlwZUIIukgFggECEAFIBogBARIuCgZsYWJlbHMYCCABKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5MYWJlbHNIB4gBARIvCgN2cG4YCSABKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lVlBOSAiIAQFCBwoFX3V1aWRCBwoFX25hbWVCCgoIX3Byb2plY3RCCAoGX2ltYWdlQhQKEl9maWxlc3lzdGVtX2xheW91dEILCglfaG9zdG5hbWVCEgoQX2FsbG9jYXRpb25fdHlwZUIJCgdfbGFiZWxzQgYKBF92cG4iqgEKE01hY2hpbmVOZXR3b3JrUXVlcnkSEAoIbmV0d29ya3MYASADKAkSHgoIcHJlZml4ZXMYAiADKAlCDLpICZIBBriks7ECARIqChRkZXN0aW5hdGlvbl9wcmVmaXhlcxgDIAMoCUIMukgJkgEGuKSzsQIBEhkKA2lwcxgEIAMoCUIMukgJkgEGwKSzsQIBEgwKBHZyZnMYBSADKAQSDAoEYXNucxgGIAMoDSKvAQoPTWFjaGluZU5pY1F1ZXJ5EiIKBG1hY3MYASADKAlCFLpIEZIBDhBkGAEiCHIGuLOusQIBEiAKBW5hbWVzGAIgAygJQhG6SA6SAQsQZBgBIgVyAxiAARIrCg1uZWlnaGJvcl9tYWNzGAMgAygJQhS6SBGSAQ4QZBgBIghyBrizrrECARIpCg5uZWlnaGJvcl9uYW1lcxgEIAMoCUIRukgOkgELEGQYASIFcgMYgAEiSwoQTWFjaGluZURpc2tRdWVyeRIeCgVuYW1lcxgBIAMoCUIPukgMkgEJEGQiBXIDGIABEhcKBXNpemVzGAIgAygEQgi6SAWSAQIQZCK5AQoPTWFjaGluZUJNQ1F1ZXJ5Eh0KB2FkZHJlc3MYASABKAlCB7pIBHICcAFIAIgBARIdCgNtYWMYAiABKAlCC7pICHIGuLOusQIBSAGIAQESGwoEdXNlchgDIAEoCUIIukgFcgMYgAFIAogBARIgCglpbnRlcmZhY2UYBCABKAlCCLpIBXIDGIABSAOIAQFCCgoIX2FkZHJlc3NCBgoEX21hY0IHCgVfdXNlckIMCgpfaW50ZXJmYWNlIoMECg9NYWNoaW5lRlJVUXVlcnkSKgoTY2hhc3Npc19wYXJ0X251bWJlchgBIAEoCUIIukgFcgMYgAFIAIgBARIqChNjaGFzc2lzX3BhcnRfc2VyaWFsGAIgASgJQgi6SAVyAxiAAUgBiAEBEiAKCWJvYXJkX21mZxgDIAEoCUIIukgFcgMYgAFIAogBARIjCgxib2FyZF9zZXJpYWwYBCABKAlCCLpIBXIDGIABSAOIAQESKAoRYm9hcmRfcGFydF9udW1iZXIYBSABKAlCCLpIBXIDGIABSASIAQESKwoUcHJvZHVjdF9tYW51ZmFjdHVyZXIYBiABKAlCCLpIBXIDGIABSAWIAQESKgoTcHJvZHVjdF9wYXJ0X251bWJlchgHIAEoCUIIukgFcgMYgAFIBogBARIlCg5wcm9kdWN0X3NlcmlhbBgIIAEoCUIIukgFcgMYgAFIB4gBAUIWChRfY2hhc3Npc19wYXJ0X251bWJlckIWChRfY2hhc3Npc19wYXJ0X3NlcmlhbEIMCgpfYm9hcmRfbWZnQg8KDV9ib2FyZF9zZXJpYWxCFAoSX2JvYXJkX3BhcnRfbnVtYmVyQhcKFV9wcm9kdWN0X21hbnVmYWN0dXJlckIWChRfcHJvZHVjdF9wYXJ0X251bWJlckIRCg9fcHJvZHVjdF9zZXJpYWwiXAoUTWFjaGluZUhhcmR3YXJlUXVlcnkSEwoGbWVtb3J5GAEgASgESACIAQESFgoJY3B1X2NvcmVzGAIgASgNSAGIAQFCCQoHX21lbW9yeUIMCgpfY3B1X2NvcmVzKmUKCklQUHJvdG9jb2wSGwoXSVBfUFJPVE9DT0xfVU5TUEVDSUZJRUQQABIcCg9JUF9QUk9UT0NPTF9UQ1AQARoHgrIZA3RjcBIcCg9JUF9QUk9UT0NPTF9VRFAQAhoHgrIZA3VkcCqtAQoMTWFjaGluZVN0YXRlEiMKGU1BQ0hJTkVfU1RBVEVfVU5TUEVDSUZJRUQQABoEgrIZABImChVNQUNISU5FX1NUQVRFX1RBSU5URUQQARoLgrIZB3RhaW50ZWQSJAoUTUFDSElORV9TVEFURV9MT0NLRUQQAhoKgrIZBmxvY2tlZBIqChdNQUNISU5FX1NUQVRFX0FWQUlMQUJMRRADGg2CshkJYXZhaWxhYmxlKt8BCh1NYWNoaW5lUHJvdmlzaW9uaW5nRXZlbnRTdGF0ZRI2CixNQUNISU5FX1BST1ZJU0lPTklOR19FVkVOVF9TVEFURV9VTlNQRUNJRklFRBAAGgSCshkAEj0KKk1BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1NUQVRFX0NSQVNITE9PUBABGg2CshkJY3Jhc2hsb29wEkcKL01BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1NUQVRFX0ZBSUxFRF9SRUNMQUlNEAIaEoKyGQ5mYWlsZWQtcmVjbGFpbSqfBgocTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50VHlwZRIvCitNQUNISU5FX1BST1ZJU0lPTklOR19FVkVOVF9UWVBFX1VOU1BFQ0lGSUVEEAASNAolTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9BTElWRRABGgmCshkFQWxpdmUSOAonTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9DUkFTSEVEEAIaC4KyGQdDcmFzaGVkEkAKK01BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfUFhFX0JPT1RJTkcQAxoPgrIZC1BYRSBCb290aW5nEkYKLk1BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfUExBTk5FRF9SRUJPT1QQBBoSgrIZDlBsYW5uZWQgUmVib290EjwKKU1BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfUFJFUEFSSU5HEAUaDYKyGQlQcmVwYXJpbmcSQAorTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9SRUdJU1RFUklORxAGGg+CshkLUmVnaXN0ZXJpbmcSOAonTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9XQUlUSU5HEAcaC4KyGQdXYWl0aW5nEj4KKk1BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfSU5TVEFMTElORxAIGg6CshkKSW5zdGFsbGluZxJOCjJNQUNISU5FX1BST1ZJU0lPTklOR19FVkVOVF9UWVBFX0JPT1RJTkdfTkVXX0tFUk5FTBAJGhaCshkSQm9vdGluZyBOZXcgS2VybmVsEkAKK01BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfUEhPTkVEX0hPTUUQChoPgrIZC1Bob25lZCBIb21lEkgKL01BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfTUFDSElORV9SRUNMQUlNEAsaE4KyGQ9NYWNoaW5lIFJlY2xhaW0qugEKEU1hY2hpbmVMaXZlbGluZXNzEigKHk1BQ0hJTkVfTElWRUxJTkVTU19VTlNQRUNJRklFRBAAGgSCshkAEicKGE1BQ0hJTkVfTElWRUxJTkVTU19BTElWRRABGgmCshkFYWxpdmUSJQoXTUFDSElORV9MSVZFTElORVNTX0RFQUQQAhoIgrIZBGRlYWQSKwoaTUFDSElORV9MSVZFTElORVNTX1VOS05PV04QAxoLgrIZB3Vua25vd24qrAEKFU1hY2hpbmVBbGxvY2F0aW9uVHlwZRItCiNNQUNISU5FX0FMTE9DQVRJT05fVFlQRV9VTlNQRUNJRklFRBAAGgSCshkAEjAKH01BQ0hJTkVfQUxMT0NBVElPTl9UWVBFX01BQ0hJTkUQARoLgrIZB21hY2hpbmUSMgogTUFDSElORV9BTExPQ0FUSU9OX1RZUEVfRklSRVdBTEwQAhoMgrIZCGZpcmV3YWxsKv4EChFNYWNoaW5lQk1DQ29tbWFuZBIjCh9NQUNISU5FX0JNQ19DT01NQU5EX1VOU1BFQ0lGSUVEEAASIgoWTUFDSElORV9CTUNfQ09NTUFORF9PThABGgaCshkCb24SJAoXTUFDSElORV9CTUNfQ09NTUFORF9PRkYQAhoHgrIZA29mZhIoChlNQUNISU5FX0JNQ19DT01NQU5EX1JFU0VUEAMaCYKyGQVyZXNldBIoChlNQUNISU5FX0JNQ19DT01NQU5EX0NZQ0xFEAQaCYKyGQVjeWNsZRI2CiBNQUNISU5FX0JNQ19DT01NQU5EX0JPT1RfVE9fQklPUxAFGhCCshkMYm9vdC10by1iaW9zEjoKIk1BQ0hJTkVfQk1DX0NPTU1BTkRfQk9PVF9GUk9NX0RJU0sQBhoSgrIZDmJvb3QtZnJvbS1kaXNrEjgKIU1BQ0hJTkVfQk1DX0NPTU1BTkRfQk9PVF9GUk9NX1BYRRAHGhGCshkNYm9vdC1mcm9tLXB4ZRI8CiNNQUNISU5FX0JNQ19DT01NQU5EX0lERU5USUZZX0xFRF9PThAIGhOCshkPaWRlbnRpZnktbGVkLW9uEj4KJE1BQ0hJTkVfQk1DX0NPTU1BTkRfSURFTlRJRllfTEVEX09GRhAJGhSCshkQaWRlbnRpZnktbGVkLW9mZhI8CiNNQUNISU5FX0JNQ19DT01NQU5EX01BQ0hJTkVfREVMRVRFRBAKGhOCshkPbWFjaGluZS1kZWxldGVkEjwKI01BQ0hJTkVfQk1DX0NPTU1BTkRfTUFDSElORV9DUkVBVEVEEAsaE4KyGQ9tYWNoaW5lLWNyZWF0ZWQy0QYKDk1hY2hpbmVTZXJ2aWNlEm0KA0dldBIrLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlR2V0UmVxdWVzdBosLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlR2V0UmVzcG9uc2UiC8rzGAMBAgPg8xgCEnUKBkNyZWF0ZRIuLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlQ3JlYXRlUmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlQ3JlYXRlUmVzcG9uc2UiCsrzGAIBAuDzGAESdQoGVXBkYXRlEi4ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VVcGRhdGVSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VVcGRhdGVSZXNwb25zZSIKyvMYAgEC4PMYARJwCgRMaXN0EiwubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VMaXN0UmVxdWVzdBotLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlTGlzdFJlc3BvbnNlIgvK8xgDAQID4PMYAhJ1CgZEZWxldGUSLi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lU2VydmljZURlbGV0ZVJlcXVlc3QaLy5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lU2VydmljZURlbGV0ZVJlc3BvbnNlIgrK8xgCAQLg8xgBEoEBCgpCTUNDb21tYW5kEjIubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VCTUNDb21tYW5kUmVxdWVzdBozLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlQk1DQ29tbWFuZFJlc3BvbnNlIgrK8xgCAQLg8xgBEnUKBkdldEJNQxIuLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlR2V0Qk1DUmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlR2V0Qk1DUmVzcG9uc2UiCsrzGAIBAuDzGAFCwgEKFWNvbS5tZXRhbHN0YWNrLmFwaS52MkIMTWFjaGluZVByb3RvUAFaNWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYXBpL3YyO2FwaXYyogIDTUFYqgIRTWV0YWxzdGFjay5BcGkuVjLKAhFNZXRhbHN0YWNrXEFwaVxWMuICHU1ldGFsc3RhY2tcQXBpXFYyXEdQQk1ldGFkYXRh6gITTWV0YWxzdGFjazo6QXBpOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_google_protobuf_timestamp, file_metalstack_api_v2_common, file_metalstack_api_v2_filesystem, file_metalstack_api_v2_image, file_metalstack_api_v2_network, file_metalstack_api_v2_partition, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_size]); /** * Describes the message metalstack.api.v2.MachineServiceGetRequest. * Use `create(MachineServiceGetRequestSchema)` to create a new message. diff --git a/js/metalstack/api/v2/machine_pb.ts b/js/metalstack/api/v2/machine_pb.ts index 3dcfd79d..59a7bd6d 100644 --- a/js/metalstack/api/v2/machine_pb.ts +++ b/js/metalstack/api/v2/machine_pb.ts @@ -26,7 +26,7 @@ import type { Message } from "@bufbuild/protobuf"; * Describes the file metalstack/api/v2/machine.proto. */ export const file_metalstack_api_v2_machine: GenFile = /*@__PURE__*/ - fileDesc("Ch9tZXRhbHN0YWNrL2FwaS92Mi9tYWNoaW5lLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiJNChhNYWNoaW5lU2VydmljZUdldFJlcXVlc3QSFgoEdXVpZBgBIAEoCUIIukgFcgOwAQESGQoHcHJvamVjdBgCIAEoCUIIukgFcgOwAQEiSAoZTWFjaGluZVNlcnZpY2VHZXRSZXNwb25zZRIrCgdtYWNoaW5lGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZSKUBwobTWFjaGluZVNlcnZpY2VDcmVhdGVSZXF1ZXN0EhkKB3Byb2plY3QYASABKAlCCLpIBXIDsAEBEhsKBHV1aWQYAiABKAlCCLpIBXIDsAEBSACIAQESGQoEbmFtZRgDIAEoCUILukgIcgbAs66xAgESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSAGIAQESHgoIaG9zdG5hbWUYBSABKAlCB7pIBHICaAFIAogBARIjCglwYXJ0aXRpb24YBiABKAlCC7pICHIG0LOusQIBSAOIAQESHgoEc2l6ZRgHIAEoCUILukgIcgbAs66xAgFIBIgBARIaCgVpbWFnZRgIIAEoCUILukgIcgbAs66xAgESKwoRZmlsZXN5c3RlbV9sYXlvdXQYCSABKAlCC7pICHIGwLOusQIBSAWIAQESMAoPc3NoX3B1YmxpY19rZXlzGAogAygJQhe6SBSSARHQpLOxAgEQMiIHcgUQARiAQBImCgh1c2VyZGF0YRgLIAEoCUIPukgMcgrws66xAgEYgIACSAaIAQESKQoGbGFiZWxzGAwgASgLMhkubWV0YWxzdGFjay5hcGkudjIuTGFiZWxzEkcKCG5ldHdvcmtzGA0gAygLMisubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUFsbG9jYXRpb25OZXR3b3JrQgi6SAWSAQIIARIgCg5wbGFjZW1lbnRfdGFncxgOIAMoCUIIukgFkgECEEASOwoLZG5zX3NlcnZlcnMYDyADKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5ETlNTZXJ2ZXJCCLpIBZIBAhADEjsKC250cF9zZXJ2ZXJzGBAgAygLMhwubWV0YWxzdGFjay5hcGkudjIuTlRQU2VydmVyQgi6SAWSAQIQChJLCg9hbGxvY2F0aW9uX3R5cGUYESABKA4yKC5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lQWxsb2NhdGlvblR5cGVCCLpIBYIBAhABEjYKDWZpcmV3YWxsX3NwZWMYEiABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5GaXJld2FsbFNwZWNCBwoFX3V1aWRCDgoMX2Rlc2NyaXB0aW9uQgsKCV9ob3N0bmFtZUIMCgpfcGFydGl0aW9uQgcKBV9zaXplQhQKEl9maWxlc3lzdGVtX2xheW91dEILCglfdXNlcmRhdGEiSAoMRmlyZXdhbGxTcGVjEjgKDmZpcmV3YWxsX3J1bGVzGAEgASgLMiAubWV0YWxzdGFjay5hcGkudjIuRmlyZXdhbGxSdWxlcyJLChxNYWNoaW5lU2VydmljZUNyZWF0ZVJlc3BvbnNlEisKB21hY2hpbmUYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lIrYCChtNYWNoaW5lU2VydmljZVVwZGF0ZVJlcXVlc3QSFgoEdXVpZBgBIAEoCUIIukgFcgOwAQESOgoLdXBkYXRlX21ldGEYAiABKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5VcGRhdGVNZXRhQga6SAPIAQESGQoHcHJvamVjdBgDIAEoCUIIukgFcgOwAQESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSACIAQESNAoGbGFiZWxzGAUgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuVXBkYXRlTGFiZWxzSAGIAQESMAoPc3NoX3B1YmxpY19rZXlzGAYgAygJQhe6SBSSARHQpLOxAgEQMiIHcgUQARiAQEIOCgxfZGVzY3JpcHRpb25CCQoHX2xhYmVscyJLChxNYWNoaW5lU2VydmljZVVwZGF0ZVJlc3BvbnNlEisKB21hY2hpbmUYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lImYKGU1hY2hpbmVTZXJ2aWNlTGlzdFJlcXVlc3QSGQoHcHJvamVjdBgBIAEoCUIIukgFcgOwAQESLgoFcXVlcnkYAiABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lUXVlcnkiSgoaTWFjaGluZVNlcnZpY2VMaXN0UmVzcG9uc2USLAoIbWFjaGluZXMYASADKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lIlAKG01hY2hpbmVTZXJ2aWNlRGVsZXRlUmVxdWVzdBIWCgR1dWlkGAEgASgJQgi6SAVyA7ABARIZCgdwcm9qZWN0GAIgASgJQgi6SAVyA7ABASJLChxNYWNoaW5lU2VydmljZURlbGV0ZVJlc3BvbnNlEisKB21hY2hpbmUYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lIpUBCh9NYWNoaW5lU2VydmljZUJNQ0NvbW1hbmRSZXF1ZXN0EhYKBHV1aWQYASABKAlCCLpIBXIDsAEBEhkKB3Byb2plY3QYAiABKAlCCLpIBXIDsAEBEj8KB2NvbW1hbmQYAyABKA4yJC5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lQk1DQ29tbWFuZEIIukgFggECEAEiIgogTWFjaGluZVNlcnZpY2VCTUNDb21tYW5kUmVzcG9uc2UiUAobTWFjaGluZVNlcnZpY2VHZXRCTUNSZXF1ZXN0EhYKBHV1aWQYASABKAlCCLpIBXIDsAEBEhkKB3Byb2plY3QYAiABKAlCCLpIBXIDsAEBImgKHE1hY2hpbmVTZXJ2aWNlR2V0Qk1DUmVzcG9uc2USFgoEdXVpZBgBIAEoCUIIukgFcgOwAQESMAoDYm1jGAIgASgLMiMubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUJNQ1JlcG9ydCKyAwoHTWFjaGluZRIWCgR1dWlkGAEgASgJQgi6SAVyA7ABARIlCgRtZXRhGAIgASgLMhcubWV0YWxzdGFjay5hcGkudjIuTWV0YRIvCglwYXJ0aXRpb24YAyABKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5QYXJ0aXRpb24SFgoEcmFjaxgEIAEoCUIIukgFcgMYgAESJQoEc2l6ZRgFIAEoCzIXLm1ldGFsc3RhY2suYXBpLnYyLlNpemUSNAoIaGFyZHdhcmUYBiABKAsyIi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lSGFyZHdhcmUSOAoKYWxsb2NhdGlvbhgHIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVBbGxvY2F0aW9uEjAKBnN0YXR1cxgIIAEoCzIgLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTdGF0dXMSVgoacmVjZW50X3Byb3Zpc2lvbmluZ19ldmVudHMYCSABKAsyMi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lUmVjZW50UHJvdmlzaW9uaW5nRXZlbnRzIu8BCg1NYWNoaW5lU3RhdHVzEjYKCWNvbmRpdGlvbhgBIAEoCzIjLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVDb25kaXRpb24SRAoJbGVkX3N0YXRlGAIgASgLMjEubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUNoYXNzaXNJZGVudGlmeUxFRFN0YXRlEkIKCmxpdmVsaW5lc3MYAyABKA4yJC5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTGl2ZWxpbmVzc0IIukgFggECEAESHAoUbWV0YWxfaGFtbWVyX3ZlcnNpb24YBCABKAkiiAEKEE1hY2hpbmVDb25kaXRpb24SOAoFc3RhdGUYASABKA4yHy5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lU3RhdGVCCLpIBYIBAhABEiAKC2Rlc2NyaXB0aW9uGAIgASgJQgu6SAhyBsizrrECARIYCgZpc3N1ZXIYAyABKAlCCLpIBXIDGIACIoMGChFNYWNoaW5lQWxsb2NhdGlvbhIWCgR1dWlkGAEgASgJQgi6SAVyA7ABARIlCgRtZXRhGAIgASgLMhcubWV0YWxzdGFjay5hcGkudjIuTWV0YRIZCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECARIgCgtkZXNjcmlwdGlvbhgEIAEoCUILukgIcgbIs66xAgESHAoKY3JlYXRlZF9ieRgFIAEoCUIIukgFcgMYgAESGQoHcHJvamVjdBgGIAEoCUIIukgFcgOwAQESJwoFaW1hZ2UYByABKAsyGC5tZXRhbHN0YWNrLmFwaS52Mi5JbWFnZRI+ChFmaWxlc3lzdGVtX2xheW91dBgIIAEoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQSMwoIbmV0d29ya3MYCSADKAsyIS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTmV0d29yaxIZCghob3N0bmFtZRgKIAEoCUIHukgEcgJoARIwCg9zc2hfcHVibGljX2tleXMYCyADKAlCF7pIFJIBEdCks7ECARAyIgdyBRABGIBAEiEKCHVzZXJkYXRhGAwgASgJQg+6SAxyCvCzrrECARiAgAISSwoPYWxsb2NhdGlvbl90eXBlGA0gASgOMigubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUFsbG9jYXRpb25UeXBlQgi6SAWCAQIQARI4Cg5maXJld2FsbF9ydWxlcxgOIAEoCzIgLm1ldGFsc3RhY2suYXBpLnYyLkZpcmV3YWxsUnVsZXMSOwoLZG5zX3NlcnZlcnMYDyADKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5ETlNTZXJ2ZXJCCLpIBZIBAhADEjsKC250cF9zZXJ2ZXJzGBAgAygLMhwubWV0YWxzdGFjay5hcGkudjIuTlRQU2VydmVyQgi6SAWSAQIQChIqCgN2cG4YESABKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lVlBOIlMKGE1hY2hpbmVBbGxvY2F0aW9uTmV0d29yaxIcCgduZXR3b3JrGAEgASgJQgu6SAhyBsCzrrECARIZCgNpcHMYAiADKAlCDLpICZIBBsCks7ECASJ/Cg1GaXJld2FsbFJ1bGVzEjUKBmVncmVzcxgBIAMoCzIlLm1ldGFsc3RhY2suYXBpLnYyLkZpcmV3YWxsRWdyZXNzUnVsZRI3CgdpbmdyZXNzGAIgAygLMiYubWV0YWxzdGFjay5hcGkudjIuRmlyZXdhbGxJbmdyZXNzUnVsZSKyAQoSRmlyZXdhbGxFZ3Jlc3NSdWxlEjkKCHByb3RvY29sGAEgASgOMh0ubWV0YWxzdGFjay5hcGkudjIuSVBQcm90b2NvbEIIukgFggECEAESHQoFcG9ydHMYAiADKA1CDrpIC5IBCCIGKgQY/P8DEhgKAnRvGAMgAygJQgy6SAmSAQa4pLOxAgESKAoHY29tbWVudBgEIAEoCUIXukgU2AEBcg8YZDILXlthLXpfIC1dKiQizwEKE0ZpcmV3YWxsSW5ncmVzc1J1bGUSOQoIcHJvdG9jb2wYASABKA4yHS5tZXRhbHN0YWNrLmFwaS52Mi5JUFByb3RvY29sQgi6SAWCAQIQARIdCgVwb3J0cxgCIAMoDUIOukgLkgEIIgYqBBj8/wMSGAoCdG8YAyADKAlCDLpICZIBBriks7ECARIaCgRmcm9tGAQgAygJQgy6SAmSAQa4pLOxAgESKAoHY29tbWVudBgFIAEoCUIXukgU2AEBcg8YZDILXlthLXpfIC1dKiQixgIKDk1hY2hpbmVOZXR3b3JrEg8KB25ldHdvcmsYASABKAkSHgoIcHJlZml4ZXMYAiADKAlCDLpICZIBBriks7ECARIqChRkZXN0aW5hdGlvbl9wcmVmaXhlcxgDIAMoCUIMukgJkgEGuKSzsQIBEhkKA2lwcxgEIAMoCUIMukgJkgEGwKSzsQIBEj4KDG5ldHdvcmtfdHlwZRgFIAEoDjIeLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtUeXBlQgi6SAWCAQIQARI2CghuYXRfdHlwZRgGIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABEgsKA3ZyZhgHIAEoBBILCgNhc24YCCABKA0SHgoHcHJvamVjdBgJIAEoCUIIukgFcgOwAQFIAIgBAUIKCghfcHJvamVjdCLaAQoPTWFjaGluZUhhcmR3YXJlEg4KBm1lbW9yeRgBIAEoBBI0CgVkaXNrcxgCIAMoCzIlLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVCbG9ja0RldmljZRIpCgRjcHVzGAMgAygLMhsubWV0YWxzdGFjay5hcGkudjIuTWV0YWxDUFUSKQoEZ3B1cxgEIAMoCzIbLm1ldGFsc3RhY2suYXBpLnYyLk1ldGFsR1BVEisKBG5pY3MYBSADKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTmljIl0KCE1ldGFsQ1BVEhgKBnZlbmRvchgBIAEoCUIIukgFcgMYgAISFwoFbW9kZWwYAiABKAlCCLpIBXIDGIACEg0KBWNvcmVzGAMgASgNEg8KB3RocmVhZHMYBCABKA0iPQoITWV0YWxHUFUSGAoGdmVuZG9yGAEgASgJQgi6SAVyAxiAAhIXCgVtb2RlbBgCIAEoCUIIukgFcgMYgAIi5QEKCk1hY2hpbmVOaWMSGAoDbWFjGAEgASgJQgu6SAhyBrizrrECARIZCgRuYW1lGAIgASgJQgu6SAhyBsCzrrECARIcCgppZGVudGlmaWVyGAMgASgJQgi6SAVyAxiAARIYCgZ2ZW5kb3IYBCABKAlCCLpIBXIDGIABEhcKBW1vZGVsGAUgASgJQgi6SAVyAxiAARINCgVzcGVlZBgGIAEoBBIwCgluZWlnaGJvcnMYByADKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTmljEhAKCGhvc3RuYW1lGAggASgJIj0KEk1hY2hpbmVCbG9ja0RldmljZRIZCgRuYW1lGAEgASgJQgu6SAhyBsCzrrECARIMCgRzaXplGAIgASgEIlsKHk1hY2hpbmVDaGFzc2lzSWRlbnRpZnlMRURTdGF0ZRIXCgV2YWx1ZRgBIAEoCUIIukgFcgMYgAESIAoLZGVzY3JpcHRpb24YAiABKAlCC7pICHIGyLOusQIBIooDChBNYWNoaW5lQk1DUmVwb3J0EioKA2JtYxgBIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVCTUMSLAoEYmlvcxgCIAEoCzIeLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVCaW9zEioKA2ZydRgDIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVGUlUSOwoMcG93ZXJfbWV0cmljGAQgASgLMiUubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVBvd2VyTWV0cmljEj0KDnBvd2VyX3N1cHBsaWVzGAUgAygLMiUubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVBvd2VyU3VwcGx5EkQKCWxlZF9zdGF0ZRgGIAEoCzIxLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVDaGFzc2lzSWRlbnRpZnlMRURTdGF0ZRIuCgp1cGRhdGVkX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCJjCgtNYWNoaW5lQmlvcxIcCgd2ZXJzaW9uGAEgASgJQgu6SAhyBsizrrECARIbCgZ2ZW5kb3IYAiABKAlCC7pICHIGyLOusQIBEhkKBGRhdGUYAyABKAlCC7pICHIGyLOusQIBItsBCgpNYWNoaW5lQk1DEhkKB2FkZHJlc3MYASABKAlCCLpIBXIDgAIBEhgKA21hYxgCIAEoCUILukgIcga4s66xAgESGQoEdXNlchgDIAEoCUILukgIcgbIs66xAgESHQoIcGFzc3dvcmQYBCABKAlCC7pICHIGyLOusQIBEh4KCWludGVyZmFjZRgFIAEoCUILukgIcgbIs66xAgESHAoHdmVyc2lvbhgGIAEoCUILukgIcgbIs66xAgESIAoLcG93ZXJfc3RhdGUYByABKAlCC7pICHIGyLOusQIBIp4ECgpNYWNoaW5lRlJVEi0KE2NoYXNzaXNfcGFydF9udW1iZXIYASABKAlCC7pICHIGyLOusQIBSACIAQESLQoTY2hhc3Npc19wYXJ0X3NlcmlhbBgCIAEoCUILukgIcgbIs66xAgFIAYgBARIjCglib2FyZF9tZmcYAyABKAlCC7pICHIGyLOusQIBSAKIAQESKgoQYm9hcmRfbWZnX3NlcmlhbBgEIAEoCUILukgIcgbIs66xAgFIA4gBARIrChFib2FyZF9wYXJ0X251bWJlchgFIAEoCUILukgIcgbIs66xAgFIBIgBARIuChRwcm9kdWN0X21hbnVmYWN0dXJlchgGIAEoCUILukgIcgbIs66xAgFIBYgBARItChNwcm9kdWN0X3BhcnRfbnVtYmVyGAcgASgJQgu6SAhyBsizrrECAUgGiAEBEigKDnByb2R1Y3Rfc2VyaWFsGAggASgJQgu6SAhyBsizrrECAUgHiAEBQhYKFF9jaGFzc2lzX3BhcnRfbnVtYmVyQhYKFF9jaGFzc2lzX3BhcnRfc2VyaWFsQgwKCl9ib2FyZF9tZmdCEwoRX2JvYXJkX21mZ19zZXJpYWxCFAoSX2JvYXJkX3BhcnRfbnVtYmVyQhcKFV9wcm9kdWN0X21hbnVmYWN0dXJlckIWChRfcHJvZHVjdF9wYXJ0X251bWJlckIRCg9fcHJvZHVjdF9zZXJpYWwihQEKEk1hY2hpbmVQb3dlck1ldHJpYxIeChZhdmVyYWdlX2NvbnN1bWVkX3dhdHRzGAEgASgCEhcKD2ludGVydmFsX2luX21pbhgCIAEoAhIaChJtYXhfY29uc3VtZWRfd2F0dHMYAyABKAISGgoSbWluX2NvbnN1bWVkX3dhdHRzGAQgASgCIjMKEk1hY2hpbmVQb3dlclN1cHBseRIOCgZoZWFsdGgYASABKAkSDQoFc3RhdGUYAiABKAkipQIKH01hY2hpbmVSZWNlbnRQcm92aXNpb25pbmdFdmVudHMSOwoGZXZlbnRzGAEgAygLMisubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50EjMKD2xhc3RfZXZlbnRfdGltZRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASRQoQbGFzdF9lcnJvcl9ldmVudBgDIAEoCzIrLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVQcm92aXNpb25pbmdFdmVudBJJCgVzdGF0ZRgEIAEoDjIwLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVQcm92aXNpb25pbmdFdmVudFN0YXRlQgi6SAWCAQIQASKVAQoYTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50EigKBHRpbWUYASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEj4KBWV2ZW50GAIgASgOMi8ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50VHlwZRIPCgdtZXNzYWdlGAMgASgJImsKCk1hY2hpbmVWUE4SHQoVY29udHJvbF9wbGFuZV9hZGRyZXNzGAEgASgJEhAKCGF1dGhfa2V5GAIgASgJEhEKCWNvbm5lY3RlZBgDIAEoCBIZCgNpcHMYBCADKAlCDLpICZIBBsCks7ECASK8BwoMTWFjaGluZVF1ZXJ5EhsKBHV1aWQYASABKAlCCLpIBXIDsAEBSACIAQESHgoEbmFtZRgCIAEoCUILukgIcgbAs66xAgFIAYgBARIjCglwYXJ0aXRpb24YAyABKAlCC7pICHIG0LOusQIBSAKIAQESHgoEc2l6ZRgEIAEoCUILukgIcgbAs66xAgFIA4gBARIdCgRyYWNrGAUgASgJQgq6SAdyBRACGIABSASIAQESLgoGbGFiZWxzGAYgASgLMhkubWV0YWxzdGFjay5hcGkudjIuTGFiZWxzSAWIAQESQgoKYWxsb2NhdGlvbhgHIAEoCzIpLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVBbGxvY2F0aW9uUXVlcnlIBogBARI8CgduZXR3b3JrGAggASgLMiYubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZU5ldHdvcmtRdWVyeUgHiAEBEjQKA25pYxgJIAEoCzIiLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVOaWNRdWVyeUgIiAEBEjYKBGRpc2sYCiABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lRGlza1F1ZXJ5SAmIAQESNAoDYm1jGAsgASgLMiIubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUJNQ1F1ZXJ5SAqIAQESNAoDZnJ1GAwgASgLMiIubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUZSVVF1ZXJ5SAuIAQESPgoIaGFyZHdhcmUYDSABKAsyJy5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lSGFyZHdhcmVRdWVyeUgMiAEBEjMKBXN0YXRlGA4gASgOMh8ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVN0YXRlSA2IAQESFAoHd2FpdGluZxgPIAEoCEgOiAEBEhkKDHByZWFsbG9jYXRlZBgQIAEoCEgPiAEBEhoKDW5vdF9hbGxvY2F0ZWQYESABKAhIEIgBAUIHCgVfdXVpZEIHCgVfbmFtZUIMCgpfcGFydGl0aW9uQgcKBV9zaXplQgcKBV9yYWNrQgkKB19sYWJlbHNCDQoLX2FsbG9jYXRpb25CCgoIX25ldHdvcmtCBgoEX25pY0IHCgVfZGlza0IGCgRfYm1jQgYKBF9mcnVCCwoJX2hhcmR3YXJlQggKBl9zdGF0ZUIKCghfd2FpdGluZ0IPCg1fcHJlYWxsb2NhdGVkQhAKDl9ub3RfYWxsb2NhdGVkIogEChZNYWNoaW5lQWxsb2NhdGlvblF1ZXJ5EhsKBHV1aWQYASABKAlCCLpIBXIDsAEBSACIAQESHgoEbmFtZRgCIAEoCUILukgIcgbAs66xAgFIAYgBARIeCgdwcm9qZWN0GAMgASgJQgi6SAVyA7ABAUgCiAEBEh8KBWltYWdlGAQgASgJQgu6SAhyBsCzrrECAUgDiAEBEisKEWZpbGVzeXN0ZW1fbGF5b3V0GAUgASgJQgu6SAhyBsCzrrECAUgEiAEBEh4KCGhvc3RuYW1lGAYgASgJQge6SARyAmgBSAWIAQESUAoPYWxsb2NhdGlvbl90eXBlGAcgASgOMigubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUFsbG9jYXRpb25UeXBlQgi6SAWCAQIQAUgGiAEBEi4KBmxhYmVscxgIIAEoCzIZLm1ldGFsc3RhY2suYXBpLnYyLkxhYmVsc0gHiAEBEi8KA3ZwbhgJIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVWUE5ICIgBAUIHCgVfdXVpZEIHCgVfbmFtZUIKCghfcHJvamVjdEIICgZfaW1hZ2VCFAoSX2ZpbGVzeXN0ZW1fbGF5b3V0QgsKCV9ob3N0bmFtZUISChBfYWxsb2NhdGlvbl90eXBlQgkKB19sYWJlbHNCBgoEX3ZwbiKqAQoTTWFjaGluZU5ldHdvcmtRdWVyeRIQCghuZXR3b3JrcxgBIAMoCRIeCghwcmVmaXhlcxgCIAMoCUIMukgJkgEGuKSzsQIBEioKFGRlc3RpbmF0aW9uX3ByZWZpeGVzGAMgAygJQgy6SAmSAQa4pLOxAgESGQoDaXBzGAQgAygJQgy6SAmSAQbApLOxAgESDAoEdnJmcxgFIAMoBBIMCgRhc25zGAYgAygNIq8BCg9NYWNoaW5lTmljUXVlcnkSIgoEbWFjcxgBIAMoCUIUukgRkgEOEGQYASIIcga4s66xAgESIAoFbmFtZXMYAiADKAlCEbpIDpIBCxBkGAEiBXIDGIABEisKDW5laWdoYm9yX21hY3MYAyADKAlCFLpIEZIBDhBkGAEiCHIGuLOusQIBEikKDm5laWdoYm9yX25hbWVzGAQgAygJQhG6SA6SAQsQZBgBIgVyAxiAASJLChBNYWNoaW5lRGlza1F1ZXJ5Eh4KBW5hbWVzGAEgAygJQg+6SAySAQkQZCIFcgMYgAESFwoFc2l6ZXMYAiADKARCCLpIBZIBAhBkIrkBCg9NYWNoaW5lQk1DUXVlcnkSHQoHYWRkcmVzcxgBIAEoCUIHukgEcgJwAUgAiAEBEh0KA21hYxgCIAEoCUILukgIcga4s66xAgFIAYgBARIbCgR1c2VyGAMgASgJQgi6SAVyAxiAAUgCiAEBEiAKCWludGVyZmFjZRgEIAEoCUIIukgFcgMYgAFIA4gBAUIKCghfYWRkcmVzc0IGCgRfbWFjQgcKBV91c2VyQgwKCl9pbnRlcmZhY2UigwQKD01hY2hpbmVGUlVRdWVyeRIqChNjaGFzc2lzX3BhcnRfbnVtYmVyGAEgASgJQgi6SAVyAxiAAUgAiAEBEioKE2NoYXNzaXNfcGFydF9zZXJpYWwYAiABKAlCCLpIBXIDGIABSAGIAQESIAoJYm9hcmRfbWZnGAMgASgJQgi6SAVyAxiAAUgCiAEBEiMKDGJvYXJkX3NlcmlhbBgEIAEoCUIIukgFcgMYgAFIA4gBARIoChFib2FyZF9wYXJ0X251bWJlchgFIAEoCUIIukgFcgMYgAFIBIgBARIrChRwcm9kdWN0X21hbnVmYWN0dXJlchgGIAEoCUIIukgFcgMYgAFIBYgBARIqChNwcm9kdWN0X3BhcnRfbnVtYmVyGAcgASgJQgi6SAVyAxiAAUgGiAEBEiUKDnByb2R1Y3Rfc2VyaWFsGAggASgJQgi6SAVyAxiAAUgHiAEBQhYKFF9jaGFzc2lzX3BhcnRfbnVtYmVyQhYKFF9jaGFzc2lzX3BhcnRfc2VyaWFsQgwKCl9ib2FyZF9tZmdCDwoNX2JvYXJkX3NlcmlhbEIUChJfYm9hcmRfcGFydF9udW1iZXJCFwoVX3Byb2R1Y3RfbWFudWZhY3R1cmVyQhYKFF9wcm9kdWN0X3BhcnRfbnVtYmVyQhEKD19wcm9kdWN0X3NlcmlhbCJcChRNYWNoaW5lSGFyZHdhcmVRdWVyeRITCgZtZW1vcnkYASABKARIAIgBARIWCgljcHVfY29yZXMYAiABKA1IAYgBAUIJCgdfbWVtb3J5QgwKCl9jcHVfY29yZXMqZQoKSVBQcm90b2NvbBIbChdJUF9QUk9UT0NPTF9VTlNQRUNJRklFRBAAEhwKD0lQX1BST1RPQ09MX1RDUBABGgeCshkDdGNwEhwKD0lQX1BST1RPQ09MX1VEUBACGgeCshkDdWRwKq0BCgxNYWNoaW5lU3RhdGUSIwoZTUFDSElORV9TVEFURV9VTlNQRUNJRklFRBAAGgSCshkAEiYKFU1BQ0hJTkVfU1RBVEVfVEFJTlRFRBABGguCshkHdGFpbnRlZBIkChRNQUNISU5FX1NUQVRFX0xPQ0tFRBACGgqCshkGbG9ja2VkEioKF01BQ0hJTkVfU1RBVEVfQVZBSUxBQkxFEAMaDYKyGQlhdmFpbGFibGUq3wEKHU1hY2hpbmVQcm92aXNpb25pbmdFdmVudFN0YXRlEjYKLE1BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1NUQVRFX1VOU1BFQ0lGSUVEEAAaBIKyGQASPQoqTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfU1RBVEVfQ1JBU0hMT09QEAEaDYKyGQljcmFzaGxvb3ASRwovTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfU1RBVEVfRkFJTEVEX1JFQ0xBSU0QAhoSgrIZDmZhaWxlZC1yZWNsYWltKp8GChxNYWNoaW5lUHJvdmlzaW9uaW5nRXZlbnRUeXBlEi8KK01BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfVU5TUEVDSUZJRUQQABI0CiVNQUNISU5FX1BST1ZJU0lPTklOR19FVkVOVF9UWVBFX0FMSVZFEAEaCYKyGQVBbGl2ZRI4CidNQUNISU5FX1BST1ZJU0lPTklOR19FVkVOVF9UWVBFX0NSQVNIRUQQAhoLgrIZB0NyYXNoZWQSQAorTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9QWEVfQk9PVElORxADGg+CshkLUFhFIEJvb3RpbmcSRgouTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9QTEFOTkVEX1JFQk9PVBAEGhKCshkOUGxhbm5lZCBSZWJvb3QSPAopTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9QUkVQQVJJTkcQBRoNgrIZCVByZXBhcmluZxJACitNQUNISU5FX1BST1ZJU0lPTklOR19FVkVOVF9UWVBFX1JFR0lTVEVSSU5HEAYaD4KyGQtSZWdpc3RlcmluZxI4CidNQUNISU5FX1BST1ZJU0lPTklOR19FVkVOVF9UWVBFX1dBSVRJTkcQBxoLgrIZB1dhaXRpbmcSPgoqTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9JTlNUQUxMSU5HEAgaDoKyGQpJbnN0YWxsaW5nEk4KMk1BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfQk9PVElOR19ORVdfS0VSTkVMEAkaFoKyGRJCb290aW5nIE5ldyBLZXJuZWwSQAorTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9QSE9ORURfSE9NRRAKGg+CshkLUGhvbmVkIEhvbWUSSAovTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9NQUNISU5FX1JFQ0xBSU0QCxoTgrIZD01hY2hpbmUgUmVjbGFpbSq6AQoRTWFjaGluZUxpdmVsaW5lc3MSKAoeTUFDSElORV9MSVZFTElORVNTX1VOU1BFQ0lGSUVEEAAaBIKyGQASJwoYTUFDSElORV9MSVZFTElORVNTX0FMSVZFEAEaCYKyGQVhbGl2ZRIlChdNQUNISU5FX0xJVkVMSU5FU1NfREVBRBACGgiCshkEZGVhZBIrChpNQUNISU5FX0xJVkVMSU5FU1NfVU5LTk9XThADGguCshkHdW5rbm93biqsAQoVTWFjaGluZUFsbG9jYXRpb25UeXBlEi0KI01BQ0hJTkVfQUxMT0NBVElPTl9UWVBFX1VOU1BFQ0lGSUVEEAAaBIKyGQASMAofTUFDSElORV9BTExPQ0FUSU9OX1RZUEVfTUFDSElORRABGguCshkHbWFjaGluZRIyCiBNQUNISU5FX0FMTE9DQVRJT05fVFlQRV9GSVJFV0FMTBACGgyCshkIZmlyZXdhbGwq/gQKEU1hY2hpbmVCTUNDb21tYW5kEiMKH01BQ0hJTkVfQk1DX0NPTU1BTkRfVU5TUEVDSUZJRUQQABIiChZNQUNISU5FX0JNQ19DT01NQU5EX09OEAEaBoKyGQJvbhIkChdNQUNISU5FX0JNQ19DT01NQU5EX09GRhACGgeCshkDb2ZmEigKGU1BQ0hJTkVfQk1DX0NPTU1BTkRfUkVTRVQQAxoJgrIZBXJlc2V0EigKGU1BQ0hJTkVfQk1DX0NPTU1BTkRfQ1lDTEUQBBoJgrIZBWN5Y2xlEjYKIE1BQ0hJTkVfQk1DX0NPTU1BTkRfQk9PVF9UT19CSU9TEAUaEIKyGQxib290LXRvLWJpb3MSOgoiTUFDSElORV9CTUNfQ09NTUFORF9CT09UX0ZST01fRElTSxAGGhKCshkOYm9vdC1mcm9tLWRpc2sSOAohTUFDSElORV9CTUNfQ09NTUFORF9CT09UX0ZST01fUFhFEAcaEYKyGQ1ib290LWZyb20tcHhlEjwKI01BQ0hJTkVfQk1DX0NPTU1BTkRfSURFTlRJRllfTEVEX09OEAgaE4KyGQ9pZGVudGlmeS1sZWQtb24SPgokTUFDSElORV9CTUNfQ09NTUFORF9JREVOVElGWV9MRURfT0ZGEAkaFIKyGRBpZGVudGlmeS1sZWQtb2ZmEjwKI01BQ0hJTkVfQk1DX0NPTU1BTkRfTUFDSElORV9ERUxFVEVEEAoaE4KyGQ9tYWNoaW5lLWRlbGV0ZWQSPAojTUFDSElORV9CTUNfQ09NTUFORF9NQUNISU5FX0NSRUFURUQQCxoTgrIZD21hY2hpbmUtY3JlYXRlZDLRBgoOTWFjaGluZVNlcnZpY2USbQoDR2V0EisubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VHZXRSZXF1ZXN0GiwubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VHZXRSZXNwb25zZSILyvMYAwECA+DzGAISdQoGQ3JlYXRlEi4ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VDcmVhdGVSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VDcmVhdGVSZXNwb25zZSIKyvMYAgEC4PMYARJ1CgZVcGRhdGUSLi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lU2VydmljZVVwZGF0ZVJlcXVlc3QaLy5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lU2VydmljZVVwZGF0ZVJlc3BvbnNlIgrK8xgCAQLg8xgBEnAKBExpc3QSLC5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lU2VydmljZUxpc3RSZXF1ZXN0Gi0ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VMaXN0UmVzcG9uc2UiC8rzGAMBAgPg8xgCEnUKBkRlbGV0ZRIuLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlRGVsZXRlUmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlRGVsZXRlUmVzcG9uc2UiCsrzGAIBAuDzGAESgQEKCkJNQ0NvbW1hbmQSMi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lU2VydmljZUJNQ0NvbW1hbmRSZXF1ZXN0GjMubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VCTUNDb21tYW5kUmVzcG9uc2UiCsrzGAIBAuDzGAESdQoGR2V0Qk1DEi4ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VHZXRCTUNSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VHZXRCTUNSZXNwb25zZSIKyvMYAgEC4PMYAULCAQoVY29tLm1ldGFsc3RhY2suYXBpLnYyQgxNYWNoaW5lUHJvdG9QAVo1Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9hcGkvdjI7YXBpdjKiAgNNQViqAhFNZXRhbHN0YWNrLkFwaS5WMsoCEU1ldGFsc3RhY2tcQXBpXFYy4gIdTWV0YWxzdGFja1xBcGlcVjJcR1BCTWV0YWRhdGHqAhNNZXRhbHN0YWNrOjpBcGk6OlYyYgZwcm90bzM", [file_buf_validate_validate, file_google_protobuf_timestamp, file_metalstack_api_v2_common, file_metalstack_api_v2_filesystem, file_metalstack_api_v2_image, file_metalstack_api_v2_network, file_metalstack_api_v2_partition, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_size]); + fileDesc("Ch9tZXRhbHN0YWNrL2FwaS92Mi9tYWNoaW5lLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiJNChhNYWNoaW5lU2VydmljZUdldFJlcXVlc3QSFgoEdXVpZBgBIAEoCUIIukgFcgOwAQESGQoHcHJvamVjdBgCIAEoCUIIukgFcgOwAQEiSAoZTWFjaGluZVNlcnZpY2VHZXRSZXNwb25zZRIrCgdtYWNoaW5lGAEgASgLMhoubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZSKUBwobTWFjaGluZVNlcnZpY2VDcmVhdGVSZXF1ZXN0EhkKB3Byb2plY3QYASABKAlCCLpIBXIDsAEBEhsKBHV1aWQYAiABKAlCCLpIBXIDsAEBSACIAQESGQoEbmFtZRgDIAEoCUILukgIcgbAs66xAgESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSAGIAQESHgoIaG9zdG5hbWUYBSABKAlCB7pIBHICaAFIAogBARIjCglwYXJ0aXRpb24YBiABKAlCC7pICHIG0LOusQIBSAOIAQESHgoEc2l6ZRgHIAEoCUILukgIcgbAs66xAgFIBIgBARIaCgVpbWFnZRgIIAEoCUILukgIcgbAs66xAgESKwoRZmlsZXN5c3RlbV9sYXlvdXQYCSABKAlCC7pICHIGwLOusQIBSAWIAQESMAoPc3NoX3B1YmxpY19rZXlzGAogAygJQhe6SBSSARHQpLOxAgEQMiIHcgUQARiAQBImCgh1c2VyZGF0YRgLIAEoCUIPukgMcgrws66xAgEYgIACSAaIAQESKQoGbGFiZWxzGAwgASgLMhkubWV0YWxzdGFjay5hcGkudjIuTGFiZWxzEkcKCG5ldHdvcmtzGA0gAygLMisubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUFsbG9jYXRpb25OZXR3b3JrQgi6SAWSAQIIARIgCg5wbGFjZW1lbnRfdGFncxgOIAMoCUIIukgFkgECEEASOwoLZG5zX3NlcnZlcnMYDyADKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5ETlNTZXJ2ZXJCCLpIBZIBAhADEjsKC250cF9zZXJ2ZXJzGBAgAygLMhwubWV0YWxzdGFjay5hcGkudjIuTlRQU2VydmVyQgi6SAWSAQIQChJLCg9hbGxvY2F0aW9uX3R5cGUYESABKA4yKC5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lQWxsb2NhdGlvblR5cGVCCLpIBYIBAhABEjYKDWZpcmV3YWxsX3NwZWMYEiABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5GaXJld2FsbFNwZWNCBwoFX3V1aWRCDgoMX2Rlc2NyaXB0aW9uQgsKCV9ob3N0bmFtZUIMCgpfcGFydGl0aW9uQgcKBV9zaXplQhQKEl9maWxlc3lzdGVtX2xheW91dEILCglfdXNlcmRhdGEiSAoMRmlyZXdhbGxTcGVjEjgKDmZpcmV3YWxsX3J1bGVzGAEgASgLMiAubWV0YWxzdGFjay5hcGkudjIuRmlyZXdhbGxSdWxlcyJLChxNYWNoaW5lU2VydmljZUNyZWF0ZVJlc3BvbnNlEisKB21hY2hpbmUYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lIrYCChtNYWNoaW5lU2VydmljZVVwZGF0ZVJlcXVlc3QSFgoEdXVpZBgBIAEoCUIIukgFcgOwAQESOgoLdXBkYXRlX21ldGEYAiABKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5VcGRhdGVNZXRhQga6SAPIAQESGQoHcHJvamVjdBgDIAEoCUIIukgFcgOwAQESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSACIAQESNAoGbGFiZWxzGAUgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuVXBkYXRlTGFiZWxzSAGIAQESMAoPc3NoX3B1YmxpY19rZXlzGAYgAygJQhe6SBSSARHQpLOxAgEQMiIHcgUQARiAQEIOCgxfZGVzY3JpcHRpb25CCQoHX2xhYmVscyJLChxNYWNoaW5lU2VydmljZVVwZGF0ZVJlc3BvbnNlEisKB21hY2hpbmUYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lImYKGU1hY2hpbmVTZXJ2aWNlTGlzdFJlcXVlc3QSGQoHcHJvamVjdBgBIAEoCUIIukgFcgOwAQESLgoFcXVlcnkYAiABKAsyHy5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lUXVlcnkiSgoaTWFjaGluZVNlcnZpY2VMaXN0UmVzcG9uc2USLAoIbWFjaGluZXMYASADKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lIlAKG01hY2hpbmVTZXJ2aWNlRGVsZXRlUmVxdWVzdBIWCgR1dWlkGAEgASgJQgi6SAVyA7ABARIZCgdwcm9qZWN0GAIgASgJQgi6SAVyA7ABASJLChxNYWNoaW5lU2VydmljZURlbGV0ZVJlc3BvbnNlEisKB21hY2hpbmUYASABKAsyGi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lIpUBCh9NYWNoaW5lU2VydmljZUJNQ0NvbW1hbmRSZXF1ZXN0EhYKBHV1aWQYASABKAlCCLpIBXIDsAEBEhkKB3Byb2plY3QYAiABKAlCCLpIBXIDsAEBEj8KB2NvbW1hbmQYAyABKA4yJC5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lQk1DQ29tbWFuZEIIukgFggECEAEiIgogTWFjaGluZVNlcnZpY2VCTUNDb21tYW5kUmVzcG9uc2UiUAobTWFjaGluZVNlcnZpY2VHZXRCTUNSZXF1ZXN0EhYKBHV1aWQYASABKAlCCLpIBXIDsAEBEhkKB3Byb2plY3QYAiABKAlCCLpIBXIDsAEBImgKHE1hY2hpbmVTZXJ2aWNlR2V0Qk1DUmVzcG9uc2USFgoEdXVpZBgBIAEoCUIIukgFcgOwAQESMAoDYm1jGAIgASgLMiMubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUJNQ1JlcG9ydCKyAwoHTWFjaGluZRIWCgR1dWlkGAEgASgJQgi6SAVyA7ABARIlCgRtZXRhGAIgASgLMhcubWV0YWxzdGFjay5hcGkudjIuTWV0YRIvCglwYXJ0aXRpb24YAyABKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5QYXJ0aXRpb24SFgoEcmFjaxgEIAEoCUIIukgFcgMYgAESJQoEc2l6ZRgFIAEoCzIXLm1ldGFsc3RhY2suYXBpLnYyLlNpemUSNAoIaGFyZHdhcmUYBiABKAsyIi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lSGFyZHdhcmUSOAoKYWxsb2NhdGlvbhgHIAEoCzIkLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVBbGxvY2F0aW9uEjAKBnN0YXR1cxgIIAEoCzIgLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTdGF0dXMSVgoacmVjZW50X3Byb3Zpc2lvbmluZ19ldmVudHMYCSABKAsyMi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lUmVjZW50UHJvdmlzaW9uaW5nRXZlbnRzIu8BCg1NYWNoaW5lU3RhdHVzEjYKCWNvbmRpdGlvbhgBIAEoCzIjLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVDb25kaXRpb24SRAoJbGVkX3N0YXRlGAIgASgLMjEubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUNoYXNzaXNJZGVudGlmeUxFRFN0YXRlEkIKCmxpdmVsaW5lc3MYAyABKA4yJC5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTGl2ZWxpbmVzc0IIukgFggECEAESHAoUbWV0YWxfaGFtbWVyX3ZlcnNpb24YBCABKAkiiAEKEE1hY2hpbmVDb25kaXRpb24SOAoFc3RhdGUYASABKA4yHy5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lU3RhdGVCCLpIBYIBAhABEiAKC2Rlc2NyaXB0aW9uGAIgASgJQgu6SAhyBsizrrECARIYCgZpc3N1ZXIYAyABKAlCCLpIBXIDGIACIoMGChFNYWNoaW5lQWxsb2NhdGlvbhIWCgR1dWlkGAEgASgJQgi6SAVyA7ABARIlCgRtZXRhGAIgASgLMhcubWV0YWxzdGFjay5hcGkudjIuTWV0YRIZCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECARIgCgtkZXNjcmlwdGlvbhgEIAEoCUILukgIcgbIs66xAgESHAoKY3JlYXRlZF9ieRgFIAEoCUIIukgFcgMYgAESGQoHcHJvamVjdBgGIAEoCUIIukgFcgOwAQESJwoFaW1hZ2UYByABKAsyGC5tZXRhbHN0YWNrLmFwaS52Mi5JbWFnZRI+ChFmaWxlc3lzdGVtX2xheW91dBgIIAEoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQSMwoIbmV0d29ya3MYCSADKAsyIS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTmV0d29yaxIZCghob3N0bmFtZRgKIAEoCUIHukgEcgJoARIwCg9zc2hfcHVibGljX2tleXMYCyADKAlCF7pIFJIBEdCks7ECARAyIgdyBRABGIBAEiEKCHVzZXJkYXRhGAwgASgJQg+6SAxyCvCzrrECARiAgAISSwoPYWxsb2NhdGlvbl90eXBlGA0gASgOMigubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUFsbG9jYXRpb25UeXBlQgi6SAWCAQIQARI4Cg5maXJld2FsbF9ydWxlcxgOIAEoCzIgLm1ldGFsc3RhY2suYXBpLnYyLkZpcmV3YWxsUnVsZXMSOwoLZG5zX3NlcnZlcnMYDyADKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5ETlNTZXJ2ZXJCCLpIBZIBAhADEjsKC250cF9zZXJ2ZXJzGBAgAygLMhwubWV0YWxzdGFjay5hcGkudjIuTlRQU2VydmVyQgi6SAWSAQIQChIqCgN2cG4YESABKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lVlBOIlMKGE1hY2hpbmVBbGxvY2F0aW9uTmV0d29yaxIcCgduZXR3b3JrGAEgASgJQgu6SAhyBsCzrrECARIZCgNpcHMYAiADKAlCDLpICZIBBsCks7ECASJ/Cg1GaXJld2FsbFJ1bGVzEjUKBmVncmVzcxgBIAMoCzIlLm1ldGFsc3RhY2suYXBpLnYyLkZpcmV3YWxsRWdyZXNzUnVsZRI3CgdpbmdyZXNzGAIgAygLMiYubWV0YWxzdGFjay5hcGkudjIuRmlyZXdhbGxJbmdyZXNzUnVsZSKyAQoSRmlyZXdhbGxFZ3Jlc3NSdWxlEjkKCHByb3RvY29sGAEgASgOMh0ubWV0YWxzdGFjay5hcGkudjIuSVBQcm90b2NvbEIIukgFggECEAESHQoFcG9ydHMYAiADKA1CDrpIC5IBCCIGKgQY/P8DEhgKAnRvGAMgAygJQgy6SAmSAQa4pLOxAgESKAoHY29tbWVudBgEIAEoCUIXukgU2AEBcg8YZDILXlthLXpfIC1dKiQizwEKE0ZpcmV3YWxsSW5ncmVzc1J1bGUSOQoIcHJvdG9jb2wYASABKA4yHS5tZXRhbHN0YWNrLmFwaS52Mi5JUFByb3RvY29sQgi6SAWCAQIQARIdCgVwb3J0cxgCIAMoDUIOukgLkgEIIgYqBBj8/wMSGAoCdG8YAyADKAlCDLpICZIBBriks7ECARIaCgRmcm9tGAQgAygJQgy6SAmSAQa4pLOxAgESKAoHY29tbWVudBgFIAEoCUIXukgU2AEBcg8YZDILXlthLXpfIC1dKiQixgIKDk1hY2hpbmVOZXR3b3JrEg8KB25ldHdvcmsYASABKAkSHgoIcHJlZml4ZXMYAiADKAlCDLpICZIBBriks7ECARIqChRkZXN0aW5hdGlvbl9wcmVmaXhlcxgDIAMoCUIMukgJkgEGuKSzsQIBEhkKA2lwcxgEIAMoCUIMukgJkgEGwKSzsQIBEj4KDG5ldHdvcmtfdHlwZRgFIAEoDjIeLm1ldGFsc3RhY2suYXBpLnYyLk5ldHdvcmtUeXBlQgi6SAWCAQIQARI2CghuYXRfdHlwZRgGIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLk5BVFR5cGVCCLpIBYIBAhABEgsKA3ZyZhgHIAEoBBILCgNhc24YCCABKA0SHgoHcHJvamVjdBgJIAEoCUIIukgFcgOwAQFIAIgBAUIKCghfcHJvamVjdCLaAQoPTWFjaGluZUhhcmR3YXJlEg4KBm1lbW9yeRgBIAEoBBI0CgVkaXNrcxgCIAMoCzIlLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVCbG9ja0RldmljZRIpCgRjcHVzGAMgAygLMhsubWV0YWxzdGFjay5hcGkudjIuTWV0YWxDUFUSKQoEZ3B1cxgEIAMoCzIbLm1ldGFsc3RhY2suYXBpLnYyLk1ldGFsR1BVEisKBG5pY3MYBSADKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTmljIl0KCE1ldGFsQ1BVEhgKBnZlbmRvchgBIAEoCUIIukgFcgMYgAISFwoFbW9kZWwYAiABKAlCCLpIBXIDGIACEg0KBWNvcmVzGAMgASgNEg8KB3RocmVhZHMYBCABKA0iPQoITWV0YWxHUFUSGAoGdmVuZG9yGAEgASgJQgi6SAVyAxiAAhIXCgVtb2RlbBgCIAEoCUIIukgFcgMYgAIi5QEKCk1hY2hpbmVOaWMSGAoDbWFjGAEgASgJQgu6SAhyBrizrrECARIZCgRuYW1lGAIgASgJQgu6SAhyBsCzrrECARIcCgppZGVudGlmaWVyGAMgASgJQgi6SAVyAxiAARIYCgZ2ZW5kb3IYBCABKAlCCLpIBXIDGIABEhcKBW1vZGVsGAUgASgJQgi6SAVyAxiAARINCgVzcGVlZBgGIAEoBBIwCgluZWlnaGJvcnMYByADKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTmljEhAKCGhvc3RuYW1lGAggASgJIj0KEk1hY2hpbmVCbG9ja0RldmljZRIZCgRuYW1lGAEgASgJQgu6SAhyBsCzrrECARIMCgRzaXplGAIgASgEIlsKHk1hY2hpbmVDaGFzc2lzSWRlbnRpZnlMRURTdGF0ZRIXCgV2YWx1ZRgBIAEoCUIIukgFcgMYgAESIAoLZGVzY3JpcHRpb24YAiABKAlCC7pICHIGyLOusQIBIooDChBNYWNoaW5lQk1DUmVwb3J0EioKA2JtYxgBIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVCTUMSLAoEYmlvcxgCIAEoCzIeLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVCaW9zEioKA2ZydRgDIAEoCzIdLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVGUlUSOwoMcG93ZXJfbWV0cmljGAQgASgLMiUubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVBvd2VyTWV0cmljEj0KDnBvd2VyX3N1cHBsaWVzGAUgAygLMiUubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVBvd2VyU3VwcGx5EkQKCWxlZF9zdGF0ZRgGIAEoCzIxLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVDaGFzc2lzSWRlbnRpZnlMRURTdGF0ZRIuCgp1cGRhdGVkX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCJjCgtNYWNoaW5lQmlvcxIcCgd2ZXJzaW9uGAEgASgJQgu6SAhyBsizrrECARIbCgZ2ZW5kb3IYAiABKAlCC7pICHIGyLOusQIBEhkKBGRhdGUYAyABKAlCC7pICHIGyLOusQIBItsBCgpNYWNoaW5lQk1DEhkKB2FkZHJlc3MYASABKAlCCLpIBXIDgAIBEhgKA21hYxgCIAEoCUILukgIcga4s66xAgESGQoEdXNlchgDIAEoCUILukgIcgbIs66xAgESHQoIcGFzc3dvcmQYBCABKAlCC7pICHIGyLOusQIBEh4KCWludGVyZmFjZRgFIAEoCUILukgIcgbIs66xAgESHAoHdmVyc2lvbhgGIAEoCUILukgIcgbIs66xAgESIAoLcG93ZXJfc3RhdGUYByABKAlCC7pICHIGyLOusQIBIp4ECgpNYWNoaW5lRlJVEi0KE2NoYXNzaXNfcGFydF9udW1iZXIYASABKAlCC7pICHIGyLOusQIBSACIAQESLQoTY2hhc3Npc19wYXJ0X3NlcmlhbBgCIAEoCUILukgIcgbIs66xAgFIAYgBARIjCglib2FyZF9tZmcYAyABKAlCC7pICHIGyLOusQIBSAKIAQESKgoQYm9hcmRfbWZnX3NlcmlhbBgEIAEoCUILukgIcgbIs66xAgFIA4gBARIrChFib2FyZF9wYXJ0X251bWJlchgFIAEoCUILukgIcgbIs66xAgFIBIgBARIuChRwcm9kdWN0X21hbnVmYWN0dXJlchgGIAEoCUILukgIcgbIs66xAgFIBYgBARItChNwcm9kdWN0X3BhcnRfbnVtYmVyGAcgASgJQgu6SAhyBsizrrECAUgGiAEBEigKDnByb2R1Y3Rfc2VyaWFsGAggASgJQgu6SAhyBsizrrECAUgHiAEBQhYKFF9jaGFzc2lzX3BhcnRfbnVtYmVyQhYKFF9jaGFzc2lzX3BhcnRfc2VyaWFsQgwKCl9ib2FyZF9tZmdCEwoRX2JvYXJkX21mZ19zZXJpYWxCFAoSX2JvYXJkX3BhcnRfbnVtYmVyQhcKFV9wcm9kdWN0X21hbnVmYWN0dXJlckIWChRfcHJvZHVjdF9wYXJ0X251bWJlckIRCg9fcHJvZHVjdF9zZXJpYWwihQEKEk1hY2hpbmVQb3dlck1ldHJpYxIeChZhdmVyYWdlX2NvbnN1bWVkX3dhdHRzGAEgASgCEhcKD2ludGVydmFsX2luX21pbhgCIAEoAhIaChJtYXhfY29uc3VtZWRfd2F0dHMYAyABKAISGgoSbWluX2NvbnN1bWVkX3dhdHRzGAQgASgCIjMKEk1hY2hpbmVQb3dlclN1cHBseRIOCgZoZWFsdGgYASABKAkSDQoFc3RhdGUYAiABKAkipQIKH01hY2hpbmVSZWNlbnRQcm92aXNpb25pbmdFdmVudHMSOwoGZXZlbnRzGAEgAygLMisubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50EjMKD2xhc3RfZXZlbnRfdGltZRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASRQoQbGFzdF9lcnJvcl9ldmVudBgDIAEoCzIrLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVQcm92aXNpb25pbmdFdmVudBJJCgVzdGF0ZRgEIAEoDjIwLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVQcm92aXNpb25pbmdFdmVudFN0YXRlQgi6SAWCAQIQASKfAQoYTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50EigKBHRpbWUYASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEkgKBWV2ZW50GAIgASgOMi8ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50VHlwZUIIukgFggECEAESDwoHbWVzc2FnZRgDIAEoCSJrCgpNYWNoaW5lVlBOEh0KFWNvbnRyb2xfcGxhbmVfYWRkcmVzcxgBIAEoCRIQCghhdXRoX2tleRgCIAEoCRIRCgljb25uZWN0ZWQYAyABKAgSGQoDaXBzGAQgAygJQgy6SAmSAQbApLOxAgEivAcKDE1hY2hpbmVRdWVyeRIbCgR1dWlkGAEgASgJQgi6SAVyA7ABAUgAiAEBEh4KBG5hbWUYAiABKAlCC7pICHIGwLOusQIBSAGIAQESIwoJcGFydGl0aW9uGAMgASgJQgu6SAhyBtCzrrECAUgCiAEBEh4KBHNpemUYBCABKAlCC7pICHIGwLOusQIBSAOIAQESHQoEcmFjaxgFIAEoCUIKukgHcgUQAhiAAUgEiAEBEi4KBmxhYmVscxgGIAEoCzIZLm1ldGFsc3RhY2suYXBpLnYyLkxhYmVsc0gFiAEBEkIKCmFsbG9jYXRpb24YByABKAsyKS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lQWxsb2NhdGlvblF1ZXJ5SAaIAQESPAoHbmV0d29yaxgIIAEoCzImLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVOZXR3b3JrUXVlcnlIB4gBARI0CgNuaWMYCSABKAsyIi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lTmljUXVlcnlICIgBARI2CgRkaXNrGAogASgLMiMubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZURpc2tRdWVyeUgJiAEBEjQKA2JtYxgLIAEoCzIiLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVCTUNRdWVyeUgKiAEBEjQKA2ZydRgMIAEoCzIiLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVGUlVRdWVyeUgLiAEBEj4KCGhhcmR3YXJlGA0gASgLMicubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZUhhcmR3YXJlUXVlcnlIDIgBARIzCgVzdGF0ZRgOIAEoDjIfLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTdGF0ZUgNiAEBEhQKB3dhaXRpbmcYDyABKAhIDogBARIZCgxwcmVhbGxvY2F0ZWQYECABKAhID4gBARIaCg1ub3RfYWxsb2NhdGVkGBEgASgISBCIAQFCBwoFX3V1aWRCBwoFX25hbWVCDAoKX3BhcnRpdGlvbkIHCgVfc2l6ZUIHCgVfcmFja0IJCgdfbGFiZWxzQg0KC19hbGxvY2F0aW9uQgoKCF9uZXR3b3JrQgYKBF9uaWNCBwoFX2Rpc2tCBgoEX2JtY0IGCgRfZnJ1QgsKCV9oYXJkd2FyZUIICgZfc3RhdGVCCgoIX3dhaXRpbmdCDwoNX3ByZWFsbG9jYXRlZEIQCg5fbm90X2FsbG9jYXRlZCKIBAoWTWFjaGluZUFsbG9jYXRpb25RdWVyeRIbCgR1dWlkGAEgASgJQgi6SAVyA7ABAUgAiAEBEh4KBG5hbWUYAiABKAlCC7pICHIGwLOusQIBSAGIAQESHgoHcHJvamVjdBgDIAEoCUIIukgFcgOwAQFIAogBARIfCgVpbWFnZRgEIAEoCUILukgIcgbAs66xAgFIA4gBARIrChFmaWxlc3lzdGVtX2xheW91dBgFIAEoCUILukgIcgbAs66xAgFIBIgBARIeCghob3N0bmFtZRgGIAEoCUIHukgEcgJoAUgFiAEBElAKD2FsbG9jYXRpb25fdHlwZRgHIAEoDjIoLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVBbGxvY2F0aW9uVHlwZUIIukgFggECEAFIBogBARIuCgZsYWJlbHMYCCABKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5MYWJlbHNIB4gBARIvCgN2cG4YCSABKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lVlBOSAiIAQFCBwoFX3V1aWRCBwoFX25hbWVCCgoIX3Byb2plY3RCCAoGX2ltYWdlQhQKEl9maWxlc3lzdGVtX2xheW91dEILCglfaG9zdG5hbWVCEgoQX2FsbG9jYXRpb25fdHlwZUIJCgdfbGFiZWxzQgYKBF92cG4iqgEKE01hY2hpbmVOZXR3b3JrUXVlcnkSEAoIbmV0d29ya3MYASADKAkSHgoIcHJlZml4ZXMYAiADKAlCDLpICZIBBriks7ECARIqChRkZXN0aW5hdGlvbl9wcmVmaXhlcxgDIAMoCUIMukgJkgEGuKSzsQIBEhkKA2lwcxgEIAMoCUIMukgJkgEGwKSzsQIBEgwKBHZyZnMYBSADKAQSDAoEYXNucxgGIAMoDSKvAQoPTWFjaGluZU5pY1F1ZXJ5EiIKBG1hY3MYASADKAlCFLpIEZIBDhBkGAEiCHIGuLOusQIBEiAKBW5hbWVzGAIgAygJQhG6SA6SAQsQZBgBIgVyAxiAARIrCg1uZWlnaGJvcl9tYWNzGAMgAygJQhS6SBGSAQ4QZBgBIghyBrizrrECARIpCg5uZWlnaGJvcl9uYW1lcxgEIAMoCUIRukgOkgELEGQYASIFcgMYgAEiSwoQTWFjaGluZURpc2tRdWVyeRIeCgVuYW1lcxgBIAMoCUIPukgMkgEJEGQiBXIDGIABEhcKBXNpemVzGAIgAygEQgi6SAWSAQIQZCK5AQoPTWFjaGluZUJNQ1F1ZXJ5Eh0KB2FkZHJlc3MYASABKAlCB7pIBHICcAFIAIgBARIdCgNtYWMYAiABKAlCC7pICHIGuLOusQIBSAGIAQESGwoEdXNlchgDIAEoCUIIukgFcgMYgAFIAogBARIgCglpbnRlcmZhY2UYBCABKAlCCLpIBXIDGIABSAOIAQFCCgoIX2FkZHJlc3NCBgoEX21hY0IHCgVfdXNlckIMCgpfaW50ZXJmYWNlIoMECg9NYWNoaW5lRlJVUXVlcnkSKgoTY2hhc3Npc19wYXJ0X251bWJlchgBIAEoCUIIukgFcgMYgAFIAIgBARIqChNjaGFzc2lzX3BhcnRfc2VyaWFsGAIgASgJQgi6SAVyAxiAAUgBiAEBEiAKCWJvYXJkX21mZxgDIAEoCUIIukgFcgMYgAFIAogBARIjCgxib2FyZF9zZXJpYWwYBCABKAlCCLpIBXIDGIABSAOIAQESKAoRYm9hcmRfcGFydF9udW1iZXIYBSABKAlCCLpIBXIDGIABSASIAQESKwoUcHJvZHVjdF9tYW51ZmFjdHVyZXIYBiABKAlCCLpIBXIDGIABSAWIAQESKgoTcHJvZHVjdF9wYXJ0X251bWJlchgHIAEoCUIIukgFcgMYgAFIBogBARIlCg5wcm9kdWN0X3NlcmlhbBgIIAEoCUIIukgFcgMYgAFIB4gBAUIWChRfY2hhc3Npc19wYXJ0X251bWJlckIWChRfY2hhc3Npc19wYXJ0X3NlcmlhbEIMCgpfYm9hcmRfbWZnQg8KDV9ib2FyZF9zZXJpYWxCFAoSX2JvYXJkX3BhcnRfbnVtYmVyQhcKFV9wcm9kdWN0X21hbnVmYWN0dXJlckIWChRfcHJvZHVjdF9wYXJ0X251bWJlckIRCg9fcHJvZHVjdF9zZXJpYWwiXAoUTWFjaGluZUhhcmR3YXJlUXVlcnkSEwoGbWVtb3J5GAEgASgESACIAQESFgoJY3B1X2NvcmVzGAIgASgNSAGIAQFCCQoHX21lbW9yeUIMCgpfY3B1X2NvcmVzKmUKCklQUHJvdG9jb2wSGwoXSVBfUFJPVE9DT0xfVU5TUEVDSUZJRUQQABIcCg9JUF9QUk9UT0NPTF9UQ1AQARoHgrIZA3RjcBIcCg9JUF9QUk9UT0NPTF9VRFAQAhoHgrIZA3VkcCqtAQoMTWFjaGluZVN0YXRlEiMKGU1BQ0hJTkVfU1RBVEVfVU5TUEVDSUZJRUQQABoEgrIZABImChVNQUNISU5FX1NUQVRFX1RBSU5URUQQARoLgrIZB3RhaW50ZWQSJAoUTUFDSElORV9TVEFURV9MT0NLRUQQAhoKgrIZBmxvY2tlZBIqChdNQUNISU5FX1NUQVRFX0FWQUlMQUJMRRADGg2CshkJYXZhaWxhYmxlKt8BCh1NYWNoaW5lUHJvdmlzaW9uaW5nRXZlbnRTdGF0ZRI2CixNQUNISU5FX1BST1ZJU0lPTklOR19FVkVOVF9TVEFURV9VTlNQRUNJRklFRBAAGgSCshkAEj0KKk1BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1NUQVRFX0NSQVNITE9PUBABGg2CshkJY3Jhc2hsb29wEkcKL01BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1NUQVRFX0ZBSUxFRF9SRUNMQUlNEAIaEoKyGQ5mYWlsZWQtcmVjbGFpbSqfBgocTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50VHlwZRIvCitNQUNISU5FX1BST1ZJU0lPTklOR19FVkVOVF9UWVBFX1VOU1BFQ0lGSUVEEAASNAolTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9BTElWRRABGgmCshkFQWxpdmUSOAonTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9DUkFTSEVEEAIaC4KyGQdDcmFzaGVkEkAKK01BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfUFhFX0JPT1RJTkcQAxoPgrIZC1BYRSBCb290aW5nEkYKLk1BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfUExBTk5FRF9SRUJPT1QQBBoSgrIZDlBsYW5uZWQgUmVib290EjwKKU1BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfUFJFUEFSSU5HEAUaDYKyGQlQcmVwYXJpbmcSQAorTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9SRUdJU1RFUklORxAGGg+CshkLUmVnaXN0ZXJpbmcSOAonTUFDSElORV9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9XQUlUSU5HEAcaC4KyGQdXYWl0aW5nEj4KKk1BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfSU5TVEFMTElORxAIGg6CshkKSW5zdGFsbGluZxJOCjJNQUNISU5FX1BST1ZJU0lPTklOR19FVkVOVF9UWVBFX0JPT1RJTkdfTkVXX0tFUk5FTBAJGhaCshkSQm9vdGluZyBOZXcgS2VybmVsEkAKK01BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfUEhPTkVEX0hPTUUQChoPgrIZC1Bob25lZCBIb21lEkgKL01BQ0hJTkVfUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfTUFDSElORV9SRUNMQUlNEAsaE4KyGQ9NYWNoaW5lIFJlY2xhaW0qugEKEU1hY2hpbmVMaXZlbGluZXNzEigKHk1BQ0hJTkVfTElWRUxJTkVTU19VTlNQRUNJRklFRBAAGgSCshkAEicKGE1BQ0hJTkVfTElWRUxJTkVTU19BTElWRRABGgmCshkFYWxpdmUSJQoXTUFDSElORV9MSVZFTElORVNTX0RFQUQQAhoIgrIZBGRlYWQSKwoaTUFDSElORV9MSVZFTElORVNTX1VOS05PV04QAxoLgrIZB3Vua25vd24qrAEKFU1hY2hpbmVBbGxvY2F0aW9uVHlwZRItCiNNQUNISU5FX0FMTE9DQVRJT05fVFlQRV9VTlNQRUNJRklFRBAAGgSCshkAEjAKH01BQ0hJTkVfQUxMT0NBVElPTl9UWVBFX01BQ0hJTkUQARoLgrIZB21hY2hpbmUSMgogTUFDSElORV9BTExPQ0FUSU9OX1RZUEVfRklSRVdBTEwQAhoMgrIZCGZpcmV3YWxsKv4EChFNYWNoaW5lQk1DQ29tbWFuZBIjCh9NQUNISU5FX0JNQ19DT01NQU5EX1VOU1BFQ0lGSUVEEAASIgoWTUFDSElORV9CTUNfQ09NTUFORF9PThABGgaCshkCb24SJAoXTUFDSElORV9CTUNfQ09NTUFORF9PRkYQAhoHgrIZA29mZhIoChlNQUNISU5FX0JNQ19DT01NQU5EX1JFU0VUEAMaCYKyGQVyZXNldBIoChlNQUNISU5FX0JNQ19DT01NQU5EX0NZQ0xFEAQaCYKyGQVjeWNsZRI2CiBNQUNISU5FX0JNQ19DT01NQU5EX0JPT1RfVE9fQklPUxAFGhCCshkMYm9vdC10by1iaW9zEjoKIk1BQ0hJTkVfQk1DX0NPTU1BTkRfQk9PVF9GUk9NX0RJU0sQBhoSgrIZDmJvb3QtZnJvbS1kaXNrEjgKIU1BQ0hJTkVfQk1DX0NPTU1BTkRfQk9PVF9GUk9NX1BYRRAHGhGCshkNYm9vdC1mcm9tLXB4ZRI8CiNNQUNISU5FX0JNQ19DT01NQU5EX0lERU5USUZZX0xFRF9PThAIGhOCshkPaWRlbnRpZnktbGVkLW9uEj4KJE1BQ0hJTkVfQk1DX0NPTU1BTkRfSURFTlRJRllfTEVEX09GRhAJGhSCshkQaWRlbnRpZnktbGVkLW9mZhI8CiNNQUNISU5FX0JNQ19DT01NQU5EX01BQ0hJTkVfREVMRVRFRBAKGhOCshkPbWFjaGluZS1kZWxldGVkEjwKI01BQ0hJTkVfQk1DX0NPTU1BTkRfTUFDSElORV9DUkVBVEVEEAsaE4KyGQ9tYWNoaW5lLWNyZWF0ZWQy0QYKDk1hY2hpbmVTZXJ2aWNlEm0KA0dldBIrLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlR2V0UmVxdWVzdBosLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlR2V0UmVzcG9uc2UiC8rzGAMBAgPg8xgCEnUKBkNyZWF0ZRIuLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlQ3JlYXRlUmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlQ3JlYXRlUmVzcG9uc2UiCsrzGAIBAuDzGAESdQoGVXBkYXRlEi4ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VVcGRhdGVSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VVcGRhdGVSZXNwb25zZSIKyvMYAgEC4PMYARJwCgRMaXN0EiwubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VMaXN0UmVxdWVzdBotLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlTGlzdFJlc3BvbnNlIgvK8xgDAQID4PMYAhJ1CgZEZWxldGUSLi5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lU2VydmljZURlbGV0ZVJlcXVlc3QaLy5tZXRhbHN0YWNrLmFwaS52Mi5NYWNoaW5lU2VydmljZURlbGV0ZVJlc3BvbnNlIgrK8xgCAQLg8xgBEoEBCgpCTUNDb21tYW5kEjIubWV0YWxzdGFjay5hcGkudjIuTWFjaGluZVNlcnZpY2VCTUNDb21tYW5kUmVxdWVzdBozLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlQk1DQ29tbWFuZFJlc3BvbnNlIgrK8xgCAQLg8xgBEnUKBkdldEJNQxIuLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlR2V0Qk1DUmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVTZXJ2aWNlR2V0Qk1DUmVzcG9uc2UiCsrzGAIBAuDzGAFCwgEKFWNvbS5tZXRhbHN0YWNrLmFwaS52MkIMTWFjaGluZVByb3RvUAFaNWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYXBpL3YyO2FwaXYyogIDTUFYqgIRTWV0YWxzdGFjay5BcGkuVjLKAhFNZXRhbHN0YWNrXEFwaVxWMuICHU1ldGFsc3RhY2tcQXBpXFYyXEdQQk1ldGFkYXRh6gITTWV0YWxzdGFjazo6QXBpOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_google_protobuf_timestamp, file_metalstack_api_v2_common, file_metalstack_api_v2_filesystem, file_metalstack_api_v2_image, file_metalstack_api_v2_network, file_metalstack_api_v2_partition, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_size]); /** * MachineServiceGetRequest is the request payload for a machine get request @@ -57,7 +57,7 @@ export const MachineServiceGetRequestSchema: GenMessage = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_machine, 3); /** - * MachineServiceCreateResponse is the request payload for a machine create response + * MachineServiceCreateResponse is the response payload for a machine create request * * @generated from message metalstack.api.v2.MachineServiceCreateResponse */ @@ -328,7 +328,7 @@ export const MachineServiceUpdateRequestSchema: GenMessage & { /** - * Machine which was deleteds + * Machine which was deleted * * @generated from field: metalstack.api.v2.Machine machine = 1; */ diff --git a/js/metalstack/api/v2/partition_pb.d.ts b/js/metalstack/api/v2/partition_pb.d.ts index 9f1a4f22..6dadcf89 100644 --- a/js/metalstack/api/v2/partition_pb.d.ts +++ b/js/metalstack/api/v2/partition_pb.d.ts @@ -18,7 +18,7 @@ export type Partition = Message<"metalstack.api.v2.Partition"> & { */ id: string; /** - * Meta for this ip + * Meta for this partition * * @generated from field: metalstack.api.v2.Meta meta = 2; */ @@ -193,7 +193,7 @@ export declare const PartitionServiceListRequestSchema: GenMessage & { /** - * Ip the partition + * Partition is the partition * * @generated from field: metalstack.api.v2.Partition partition = 1; */ @@ -211,7 +211,7 @@ export declare const PartitionServiceGetResponseSchema: GenMessage & { /** - * Ips the partitions + * Partitions are the partitions * * @generated from field: repeated metalstack.api.v2.Partition partitions = 1; */ diff --git a/js/metalstack/api/v2/partition_pb.js b/js/metalstack/api/v2/partition_pb.js index 434ab9e8..639b7d37 100644 --- a/js/metalstack/api/v2/partition_pb.js +++ b/js/metalstack/api/v2/partition_pb.js @@ -8,7 +8,7 @@ import { file_metalstack_api_v2_predefined_rules } from "./predefined_rules_pb"; /** * Describes the file metalstack/api/v2/partition.proto. */ -export const file_metalstack_api_v2_partition = /*@__PURE__*/ fileDesc("CiFtZXRhbHN0YWNrL2FwaS92Mi9wYXJ0aXRpb24ucHJvdG8SEW1ldGFsc3RhY2suYXBpLnYyIuACCglQYXJ0aXRpb24SFwoCaWQYASABKAlCC7pICHIG0LOusQIBEiUKBG1ldGEYAiABKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5NZXRhEiAKC2Rlc2NyaXB0aW9uGAMgASgJQgu6SAhyBsizrrECARJJChJib290X2NvbmZpZ3VyYXRpb24YBCABKAsyLS5tZXRhbHN0YWNrLmFwaS52Mi5QYXJ0aXRpb25Cb290Q29uZmlndXJhdGlvbhI7CgtkbnNfc2VydmVycxgFIAMoCzIcLm1ldGFsc3RhY2suYXBpLnYyLkROU1NlcnZlckIIukgFkgECEAMSOwoLbnRwX3NlcnZlcnMYBiADKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5OVFBTZXJ2ZXJCCLpIBZIBAhAKEiwKFm1nbXRfc2VydmljZV9hZGRyZXNzZXMYByADKAlCDLpICZIBBsiks7ECASJwCg5QYXJ0aXRpb25RdWVyeRIcCgJpZBgBIAEoCUILukgIcgbQs66xAgFIAIgBARIuCgZsYWJlbHMYAiABKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5MYWJlbHNIAYgBAUIFCgNfaWRCCQoHX2xhYmVscyJyChpQYXJ0aXRpb25Cb290Q29uZmlndXJhdGlvbhIeCglpbWFnZV91cmwYASABKAlCC7pICHIG4LOusQIBEh8KCmtlcm5lbF91cmwYAiABKAlCC7pICHIG4LOusQIBEhMKC2NvbW1hbmRsaW5lGAMgASgJIiAKCUROU1NlcnZlchITCgJpcBgBIAEoCUIHukgEcgJwASIpCglOVFBTZXJ2ZXISHAoHYWRkcmVzcxgBIAEoCUILukgIcgbos66xAgEiNQoaUGFydGl0aW9uU2VydmljZUdldFJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIG0LOusQIBIk8KG1BhcnRpdGlvblNlcnZpY2VMaXN0UmVxdWVzdBIwCgVxdWVyeRgBIAEoCzIhLm1ldGFsc3RhY2suYXBpLnYyLlBhcnRpdGlvblF1ZXJ5Ik4KG1BhcnRpdGlvblNlcnZpY2VHZXRSZXNwb25zZRIvCglwYXJ0aXRpb24YASABKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5QYXJ0aXRpb24iUAocUGFydGl0aW9uU2VydmljZUxpc3RSZXNwb25zZRIwCgpwYXJ0aXRpb25zGAEgAygLMhwubWV0YWxzdGFjay5hcGkudjIuUGFydGl0aW9uMvUBChBQYXJ0aXRpb25TZXJ2aWNlEm4KA0dldBItLm1ldGFsc3RhY2suYXBpLnYyLlBhcnRpdGlvblNlcnZpY2VHZXRSZXF1ZXN0Gi4ubWV0YWxzdGFjay5hcGkudjIuUGFydGl0aW9uU2VydmljZUdldFJlc3BvbnNlIgjY8xgC4PMYAhJxCgRMaXN0Ei4ubWV0YWxzdGFjay5hcGkudjIuUGFydGl0aW9uU2VydmljZUxpc3RSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hcGkudjIuUGFydGl0aW9uU2VydmljZUxpc3RSZXNwb25zZSII2PMYAuDzGAJCxAEKFWNvbS5tZXRhbHN0YWNrLmFwaS52MkIOUGFydGl0aW9uUHJvdG9QAVo1Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9hcGkvdjI7YXBpdjKiAgNNQViqAhFNZXRhbHN0YWNrLkFwaS5WMsoCEU1ldGFsc3RhY2tcQXBpXFYy4gIdTWV0YWxzdGFja1xBcGlcVjJcR1BCTWV0YWRhdGHqAhNNZXRhbHN0YWNrOjpBcGk6OlYyYgZwcm90bzM", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules]); +export const file_metalstack_api_v2_partition = /*@__PURE__*/ fileDesc("CiFtZXRhbHN0YWNrL2FwaS92Mi9wYXJ0aXRpb24ucHJvdG8SEW1ldGFsc3RhY2suYXBpLnYyIuACCglQYXJ0aXRpb24SFwoCaWQYASABKAlCC7pICHIG0LOusQIBEiUKBG1ldGEYAiABKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5NZXRhEiAKC2Rlc2NyaXB0aW9uGAMgASgJQgu6SAhyBsizrrECARJJChJib290X2NvbmZpZ3VyYXRpb24YBCABKAsyLS5tZXRhbHN0YWNrLmFwaS52Mi5QYXJ0aXRpb25Cb290Q29uZmlndXJhdGlvbhI7CgtkbnNfc2VydmVycxgFIAMoCzIcLm1ldGFsc3RhY2suYXBpLnYyLkROU1NlcnZlckIIukgFkgECEAMSOwoLbnRwX3NlcnZlcnMYBiADKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5OVFBTZXJ2ZXJCCLpIBZIBAhAKEiwKFm1nbXRfc2VydmljZV9hZGRyZXNzZXMYByADKAlCDLpICZIBBsiks7ECASJwCg5QYXJ0aXRpb25RdWVyeRIcCgJpZBgBIAEoCUILukgIcgbQs66xAgFIAIgBARIuCgZsYWJlbHMYAiABKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5MYWJlbHNIAYgBAUIFCgNfaWRCCQoHX2xhYmVscyJ8ChpQYXJ0aXRpb25Cb290Q29uZmlndXJhdGlvbhIeCglpbWFnZV91cmwYASABKAlCC7pICHIG4LOusQIBEh8KCmtlcm5lbF91cmwYAiABKAlCC7pICHIG4LOusQIBEh0KC2NvbW1hbmRsaW5lGAMgASgJQgi6SAVyAxiAICIgCglETlNTZXJ2ZXISEwoCaXAYASABKAlCB7pIBHICcAEiKQoJTlRQU2VydmVyEhwKB2FkZHJlc3MYASABKAlCC7pICHIG6LOusQIBIjUKGlBhcnRpdGlvblNlcnZpY2VHZXRSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBtCzrrECASJPChtQYXJ0aXRpb25TZXJ2aWNlTGlzdFJlcXVlc3QSMAoFcXVlcnkYASABKAsyIS5tZXRhbHN0YWNrLmFwaS52Mi5QYXJ0aXRpb25RdWVyeSJOChtQYXJ0aXRpb25TZXJ2aWNlR2V0UmVzcG9uc2USLwoJcGFydGl0aW9uGAEgASgLMhwubWV0YWxzdGFjay5hcGkudjIuUGFydGl0aW9uIlAKHFBhcnRpdGlvblNlcnZpY2VMaXN0UmVzcG9uc2USMAoKcGFydGl0aW9ucxgBIAMoCzIcLm1ldGFsc3RhY2suYXBpLnYyLlBhcnRpdGlvbjL1AQoQUGFydGl0aW9uU2VydmljZRJuCgNHZXQSLS5tZXRhbHN0YWNrLmFwaS52Mi5QYXJ0aXRpb25TZXJ2aWNlR2V0UmVxdWVzdBouLm1ldGFsc3RhY2suYXBpLnYyLlBhcnRpdGlvblNlcnZpY2VHZXRSZXNwb25zZSII2PMYAuDzGAIScQoETGlzdBIuLm1ldGFsc3RhY2suYXBpLnYyLlBhcnRpdGlvblNlcnZpY2VMaXN0UmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLlBhcnRpdGlvblNlcnZpY2VMaXN0UmVzcG9uc2UiCNjzGALg8xgCQsQBChVjb20ubWV0YWxzdGFjay5hcGkudjJCDlBhcnRpdGlvblByb3RvUAFaNWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYXBpL3YyO2FwaXYyogIDTUFYqgIRTWV0YWxzdGFjay5BcGkuVjLKAhFNZXRhbHN0YWNrXEFwaVxWMuICHU1ldGFsc3RhY2tcQXBpXFYyXEdQQk1ldGFkYXRh6gITTWV0YWxzdGFjazo6QXBpOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules]); /** * Describes the message metalstack.api.v2.Partition. * Use `create(PartitionSchema)` to create a new message. diff --git a/js/metalstack/api/v2/partition_pb.ts b/js/metalstack/api/v2/partition_pb.ts index 166000b3..f24e414c 100644 --- a/js/metalstack/api/v2/partition_pb.ts +++ b/js/metalstack/api/v2/partition_pb.ts @@ -14,7 +14,7 @@ import type { Message } from "@bufbuild/protobuf"; * Describes the file metalstack/api/v2/partition.proto. */ export const file_metalstack_api_v2_partition: GenFile = /*@__PURE__*/ - fileDesc("CiFtZXRhbHN0YWNrL2FwaS92Mi9wYXJ0aXRpb24ucHJvdG8SEW1ldGFsc3RhY2suYXBpLnYyIuACCglQYXJ0aXRpb24SFwoCaWQYASABKAlCC7pICHIG0LOusQIBEiUKBG1ldGEYAiABKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5NZXRhEiAKC2Rlc2NyaXB0aW9uGAMgASgJQgu6SAhyBsizrrECARJJChJib290X2NvbmZpZ3VyYXRpb24YBCABKAsyLS5tZXRhbHN0YWNrLmFwaS52Mi5QYXJ0aXRpb25Cb290Q29uZmlndXJhdGlvbhI7CgtkbnNfc2VydmVycxgFIAMoCzIcLm1ldGFsc3RhY2suYXBpLnYyLkROU1NlcnZlckIIukgFkgECEAMSOwoLbnRwX3NlcnZlcnMYBiADKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5OVFBTZXJ2ZXJCCLpIBZIBAhAKEiwKFm1nbXRfc2VydmljZV9hZGRyZXNzZXMYByADKAlCDLpICZIBBsiks7ECASJwCg5QYXJ0aXRpb25RdWVyeRIcCgJpZBgBIAEoCUILukgIcgbQs66xAgFIAIgBARIuCgZsYWJlbHMYAiABKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5MYWJlbHNIAYgBAUIFCgNfaWRCCQoHX2xhYmVscyJyChpQYXJ0aXRpb25Cb290Q29uZmlndXJhdGlvbhIeCglpbWFnZV91cmwYASABKAlCC7pICHIG4LOusQIBEh8KCmtlcm5lbF91cmwYAiABKAlCC7pICHIG4LOusQIBEhMKC2NvbW1hbmRsaW5lGAMgASgJIiAKCUROU1NlcnZlchITCgJpcBgBIAEoCUIHukgEcgJwASIpCglOVFBTZXJ2ZXISHAoHYWRkcmVzcxgBIAEoCUILukgIcgbos66xAgEiNQoaUGFydGl0aW9uU2VydmljZUdldFJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIG0LOusQIBIk8KG1BhcnRpdGlvblNlcnZpY2VMaXN0UmVxdWVzdBIwCgVxdWVyeRgBIAEoCzIhLm1ldGFsc3RhY2suYXBpLnYyLlBhcnRpdGlvblF1ZXJ5Ik4KG1BhcnRpdGlvblNlcnZpY2VHZXRSZXNwb25zZRIvCglwYXJ0aXRpb24YASABKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5QYXJ0aXRpb24iUAocUGFydGl0aW9uU2VydmljZUxpc3RSZXNwb25zZRIwCgpwYXJ0aXRpb25zGAEgAygLMhwubWV0YWxzdGFjay5hcGkudjIuUGFydGl0aW9uMvUBChBQYXJ0aXRpb25TZXJ2aWNlEm4KA0dldBItLm1ldGFsc3RhY2suYXBpLnYyLlBhcnRpdGlvblNlcnZpY2VHZXRSZXF1ZXN0Gi4ubWV0YWxzdGFjay5hcGkudjIuUGFydGl0aW9uU2VydmljZUdldFJlc3BvbnNlIgjY8xgC4PMYAhJxCgRMaXN0Ei4ubWV0YWxzdGFjay5hcGkudjIuUGFydGl0aW9uU2VydmljZUxpc3RSZXF1ZXN0Gi8ubWV0YWxzdGFjay5hcGkudjIuUGFydGl0aW9uU2VydmljZUxpc3RSZXNwb25zZSII2PMYAuDzGAJCxAEKFWNvbS5tZXRhbHN0YWNrLmFwaS52MkIOUGFydGl0aW9uUHJvdG9QAVo1Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9hcGkvdjI7YXBpdjKiAgNNQViqAhFNZXRhbHN0YWNrLkFwaS5WMsoCEU1ldGFsc3RhY2tcQXBpXFYy4gIdTWV0YWxzdGFja1xBcGlcVjJcR1BCTWV0YWRhdGHqAhNNZXRhbHN0YWNrOjpBcGk6OlYyYgZwcm90bzM", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules]); + fileDesc("CiFtZXRhbHN0YWNrL2FwaS92Mi9wYXJ0aXRpb24ucHJvdG8SEW1ldGFsc3RhY2suYXBpLnYyIuACCglQYXJ0aXRpb24SFwoCaWQYASABKAlCC7pICHIG0LOusQIBEiUKBG1ldGEYAiABKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5NZXRhEiAKC2Rlc2NyaXB0aW9uGAMgASgJQgu6SAhyBsizrrECARJJChJib290X2NvbmZpZ3VyYXRpb24YBCABKAsyLS5tZXRhbHN0YWNrLmFwaS52Mi5QYXJ0aXRpb25Cb290Q29uZmlndXJhdGlvbhI7CgtkbnNfc2VydmVycxgFIAMoCzIcLm1ldGFsc3RhY2suYXBpLnYyLkROU1NlcnZlckIIukgFkgECEAMSOwoLbnRwX3NlcnZlcnMYBiADKAsyHC5tZXRhbHN0YWNrLmFwaS52Mi5OVFBTZXJ2ZXJCCLpIBZIBAhAKEiwKFm1nbXRfc2VydmljZV9hZGRyZXNzZXMYByADKAlCDLpICZIBBsiks7ECASJwCg5QYXJ0aXRpb25RdWVyeRIcCgJpZBgBIAEoCUILukgIcgbQs66xAgFIAIgBARIuCgZsYWJlbHMYAiABKAsyGS5tZXRhbHN0YWNrLmFwaS52Mi5MYWJlbHNIAYgBAUIFCgNfaWRCCQoHX2xhYmVscyJ8ChpQYXJ0aXRpb25Cb290Q29uZmlndXJhdGlvbhIeCglpbWFnZV91cmwYASABKAlCC7pICHIG4LOusQIBEh8KCmtlcm5lbF91cmwYAiABKAlCC7pICHIG4LOusQIBEh0KC2NvbW1hbmRsaW5lGAMgASgJQgi6SAVyAxiAICIgCglETlNTZXJ2ZXISEwoCaXAYASABKAlCB7pIBHICcAEiKQoJTlRQU2VydmVyEhwKB2FkZHJlc3MYASABKAlCC7pICHIG6LOusQIBIjUKGlBhcnRpdGlvblNlcnZpY2VHZXRSZXF1ZXN0EhcKAmlkGAEgASgJQgu6SAhyBtCzrrECASJPChtQYXJ0aXRpb25TZXJ2aWNlTGlzdFJlcXVlc3QSMAoFcXVlcnkYASABKAsyIS5tZXRhbHN0YWNrLmFwaS52Mi5QYXJ0aXRpb25RdWVyeSJOChtQYXJ0aXRpb25TZXJ2aWNlR2V0UmVzcG9uc2USLwoJcGFydGl0aW9uGAEgASgLMhwubWV0YWxzdGFjay5hcGkudjIuUGFydGl0aW9uIlAKHFBhcnRpdGlvblNlcnZpY2VMaXN0UmVzcG9uc2USMAoKcGFydGl0aW9ucxgBIAMoCzIcLm1ldGFsc3RhY2suYXBpLnYyLlBhcnRpdGlvbjL1AQoQUGFydGl0aW9uU2VydmljZRJuCgNHZXQSLS5tZXRhbHN0YWNrLmFwaS52Mi5QYXJ0aXRpb25TZXJ2aWNlR2V0UmVxdWVzdBouLm1ldGFsc3RhY2suYXBpLnYyLlBhcnRpdGlvblNlcnZpY2VHZXRSZXNwb25zZSII2PMYAuDzGAIScQoETGlzdBIuLm1ldGFsc3RhY2suYXBpLnYyLlBhcnRpdGlvblNlcnZpY2VMaXN0UmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLlBhcnRpdGlvblNlcnZpY2VMaXN0UmVzcG9uc2UiCNjzGALg8xgCQsQBChVjb20ubWV0YWxzdGFjay5hcGkudjJCDlBhcnRpdGlvblByb3RvUAFaNWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYXBpL3YyO2FwaXYyogIDTUFYqgIRTWV0YWxzdGFjay5BcGkuVjLKAhFNZXRhbHN0YWNrXEFwaVxWMuICHU1ldGFsc3RhY2tcQXBpXFYyXEdQQk1ldGFkYXRh6gITTWV0YWxzdGFjazo6QXBpOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules]); /** * Partition is a failure domain with machines and switches @@ -30,7 +30,7 @@ export type Partition = Message<"metalstack.api.v2.Partition"> & { id: string; /** - * Meta for this ip + * Meta for this partition * * @generated from field: metalstack.api.v2.Meta meta = 2; */ @@ -234,7 +234,7 @@ export const PartitionServiceListRequestSchema: GenMessage & { /** - * Ip the partition + * Partition is the partition * * @generated from field: metalstack.api.v2.Partition partition = 1; */ @@ -255,7 +255,7 @@ export const PartitionServiceGetResponseSchema: GenMessage & { /** - * Ips the partitions + * Partitions are the partitions * * @generated from field: repeated metalstack.api.v2.Partition partitions = 1; */ diff --git a/js/metalstack/api/v2/predefined_rules_pb.d.ts b/js/metalstack/api/v2/predefined_rules_pb.d.ts index c8927f34..300fcc40 100644 --- a/js/metalstack/api/v2/predefined_rules_pb.d.ts +++ b/js/metalstack/api/v2/predefined_rules_pb.d.ts @@ -5,7 +5,7 @@ import type { MapRules, RepeatedRules, StringRules } from "../../../buf/validate */ export declare const file_metalstack_api_v2_predefined_rules: GenFile; /** - * Macaddress returns true if the given string is a valid macadress + * Macaddress returns true if the given string is a valid macaddress * * @generated from extension: optional bool macaddress = 80048951; */ diff --git a/js/metalstack/api/v2/predefined_rules_pb.js b/js/metalstack/api/v2/predefined_rules_pb.js index e10ceedc..2b526429 100644 --- a/js/metalstack/api/v2/predefined_rules_pb.js +++ b/js/metalstack/api/v2/predefined_rules_pb.js @@ -8,7 +8,7 @@ import { file_buf_validate_validate } from "../../../buf/validate/validate_pb"; */ export const file_metalstack_api_v2_predefined_rules = /*@__PURE__*/ fileDesc("CihtZXRhbHN0YWNrL2FwaS92Mi9wcmVkZWZpbmVkX3J1bGVzLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52Mjq4AQoKbWFjYWRkcmVzcxIZLmJ1Zi52YWxpZGF0ZS5TdHJpbmdSdWxlcxi35pUmIAEoCEJ6wkh3CnUKEXN0cmluZy5tYWNhZGRyZXNzEiZ0aGlzIHN0cmluZyBtdXN0IGJlIGEgdmFsaWQgbWFjYWRkcmVzcxo4dGhpcy5tYXRjaGVzKCdeKFswLTlBLUZhLWZdezJ9WzpdKXs1fShbMC05QS1GYS1mXXsyfSkkJylSCm1hY2FkZHJlc3M6mQEKB2lzX25hbWUSGS5idWYudmFsaWRhdGUuU3RyaW5nUnVsZXMYuOaVJiABKAhCYsJIXwpdCg5zdHJpbmcuaXNfbmFtZRIjbXVzdCBiZSB3aXRoaW4gMiBhbmQgMTI4IGNoYXJhY3RlcnMaJnRoaXMuc2l6ZSgpID49IDIgJiYgdGhpcy5zaXplKCkgPD0gMTI4UgZpc05hbWU6mgEKDmlzX2Rlc2NyaXB0aW9uEhkuYnVmLnZhbGlkYXRlLlN0cmluZ1J1bGVzGLnmlSYgASgIQlXCSFIKUAoVc3RyaW5nLmlzX2Rlc2NyaXB0aW9uEiNtdXN0IGJlIHNob3J0ZXIgdGhhbiAyNTYgY2hhcmFjdGVycxoSdGhpcy5zaXplKCkgPD0gMjU2Ug1pc0Rlc2NyaXB0aW9uOqgBCgxpc19wYXJ0aXRpb24SGS5idWYudmFsaWRhdGUuU3RyaW5nUnVsZXMYuuaVJiABKAhCZ8JIZApiChNzdHJpbmcuaXNfcGFydGl0aW9uEiNtdXN0IGJlIHdpdGhpbiAyIGFuZCAxMjggY2hhcmFjdGVycxomdGhpcy5zaXplKCkgPj0gMiAmJiB0aGlzLnNpemUoKSA8PSAxMjhSC2lzUGFydGl0aW9uOoIBCglpc19wcmVmaXgSGS5idWYudmFsaWRhdGUuU3RyaW5nUnVsZXMYu+aVJiABKAhCR8JIRApCCg9zdHJpbmcucHJlZml4ZXMSHGdpdmVuIHByZWZpeGVzIG11c3QgYmUgdmFsaWQaEXRoaXMuaXNJcFByZWZpeCgpUghpc1ByZWZpeDptCgZpc191cmkSGS5idWYudmFsaWRhdGUuU3RyaW5nUnVsZXMYvOaVJiABKAhCOMJINQozCgpzdHJpbmcudXJpEhdnaXZlbiB1cmkgbXVzdCBiZSB2YWxpZBoMdGhpcy5pc1VyaSgpUgVpc1VyaTqnAQoRaXNfaXBfb3JfaG9zdG5hbWUSGS5idWYudmFsaWRhdGUuU3RyaW5nUnVsZXMYveaVJiABKAhCXsJIWwpZCg12YWxpZF9hZGRyZXNzEiZtdXN0IGJlIGEgdmFsaWQgSVAgYWRkcmVzcyBvciBob3N0bmFtZRogdGhpcy5pc0lwKCkgfHwgdGhpcy5pc0hvc3RuYW1lKClSDmlzSXBPckhvc3RuYW1lOp0BCgd0cmltbWVkEhkuYnVmLnZhbGlkYXRlLlN0cmluZ1J1bGVzGL7mlSYgASgIQmXCSGIKYAoOc3RyaW5nLnRyaW1tZWQSK3ZhbHVlIG11c3Qgbm90IHN0YXJ0IG9yIGVuZCB3aXRoIHdoaXRlc3BhY2UaIXRoaXMudHJpbSgpLnNpemUoKSA9PSB0aGlzLnNpemUoKVIHdHJpbW1lZDqPAQoIcHJlZml4ZXMSGy5idWYudmFsaWRhdGUuUmVwZWF0ZWRSdWxlcxjHtJYmIAEoCEJTwkhQCk4KEXJlcGVhdGVkLnByZWZpeGVzEhxnaXZlbiBwcmVmaXhlcyBtdXN0IGJlIHZhbGlkGht0aGlzLmFsbChtLCBtLmlzSXBQcmVmaXgoKSlSCHByZWZpeGVzOnUKA2lwcxIbLmJ1Zi52YWxpZGF0ZS5SZXBlYXRlZFJ1bGVzGMi0liYgASgIQkPCSEAKPgoMcmVwZWF0ZWQuaXBzEhdnaXZlbiBpcHMgbXVzdCBiZSB2YWxpZBoVdGhpcy5hbGwobSwgbS5pc0lwKCkpUgNpcHM65gEKEWFyZV9ob3N0X2FuZF9wb3J0EhsuYnVmLnZhbGlkYXRlLlJlcGVhdGVkUnVsZXMYybSWJiABKAhCmgHCSJYBCpMBChpyZXBlYXRlZC5hcmVfaG9zdF9hbmRfcG9ydBJQZ2l2ZW4gZW50cmllcyBtdXN0IGFsbCBiZSBpbiB0aGUgZm9ybSBvZiA8aXAgfCBob3N0Pjo8cG9ydD4gYnV0IHBvcnQgaXMgb3B0aW9uYWwaI3RoaXMuYWxsKG0sIG0uaXNIb3N0QW5kUG9ydChmYWxzZSkpUg5hcmVIb3N0QW5kUG9ydDq6AQoLYWxsX3RyaW1tZWQSGy5idWYudmFsaWRhdGUuUmVwZWF0ZWRSdWxlcxjKtJYmIAEoCEJ5wkh2CnQKFHJlcGVhdGVkLmFsbF90cmltbWVkEjJnaXZlbiB2YWx1ZXMgbXVzdCBub3Qgc3RhcnQgb3IgZW5kIHdpdGggd2hpdGVzcGFjZRoodGhpcy5hbGwobSwgbS50cmltKCkuc2l6ZSgpID09IG0uc2l6ZSgpKVIKYWxsVHJpbW1lZDqEAgoXa2V5c19hbmRfdmFsdWVzX3RyaW1tZWQSFi5idWYudmFsaWRhdGUuTWFwUnVsZXMY14KXJiABKAhCsQHCSK0BCqoBChttYXAua2V5c19hbmRfdmFsdWVzX3RyaW1tZWQSNWtleXMgYW5kIHZhbHVlcyBtdXN0IG5vdCBzdGFydCBvciBlbmQgd2l0aCB3aGl0ZXNwYWNlGlR0aGlzLmFsbChrLCBrLnRyaW0oKS5zaXplKCkgPT0gay5zaXplKCkpICYmIHRoaXMuYWxsKHYsIHYudHJpbSgpLnNpemUoKSA9PSB2LnNpemUoKSlSFGtleXNBbmRWYWx1ZXNUcmltbWVkOqsBCgxrZXlzX3RyaW1tZWQSFi5idWYudmFsaWRhdGUuTWFwUnVsZXMY2IKXJiABKAhCbcJIagpoChBtYXAua2V5c190cmltbWVkEiprZXlzIG11c3Qgbm90IHN0YXJ0IG9yIGVuZCB3aXRoIHdoaXRlc3BhY2UaKHRoaXMuYWxsKGssIGsudHJpbSgpLnNpemUoKSA9PSBrLnNpemUoKSlSC2tleXNUcmltbWVkQsoBChVjb20ubWV0YWxzdGFjay5hcGkudjJCFFByZWRlZmluZWRSdWxlc1Byb3RvUAFaNWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYXBpL3YyO2FwaXYyogIDTUFYqgIRTWV0YWxzdGFjay5BcGkuVjLKAhFNZXRhbHN0YWNrXEFwaVxWMuICHU1ldGFsc3RhY2tcQXBpXFYyXEdQQk1ldGFkYXRh6gITTWV0YWxzdGFjazo6QXBpOjpWMg", [file_buf_validate_validate]); /** - * Macaddress returns true if the given string is a valid macadress + * Macaddress returns true if the given string is a valid macaddress * * @generated from extension: optional bool macaddress = 80048951; */ diff --git a/js/metalstack/api/v2/predefined_rules_pb.ts b/js/metalstack/api/v2/predefined_rules_pb.ts index 068e8372..ae5fbbc8 100644 --- a/js/metalstack/api/v2/predefined_rules_pb.ts +++ b/js/metalstack/api/v2/predefined_rules_pb.ts @@ -14,7 +14,7 @@ export const file_metalstack_api_v2_predefined_rules: GenFile = /*@__PURE__*/ fileDesc("CihtZXRhbHN0YWNrL2FwaS92Mi9wcmVkZWZpbmVkX3J1bGVzLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52Mjq4AQoKbWFjYWRkcmVzcxIZLmJ1Zi52YWxpZGF0ZS5TdHJpbmdSdWxlcxi35pUmIAEoCEJ6wkh3CnUKEXN0cmluZy5tYWNhZGRyZXNzEiZ0aGlzIHN0cmluZyBtdXN0IGJlIGEgdmFsaWQgbWFjYWRkcmVzcxo4dGhpcy5tYXRjaGVzKCdeKFswLTlBLUZhLWZdezJ9WzpdKXs1fShbMC05QS1GYS1mXXsyfSkkJylSCm1hY2FkZHJlc3M6mQEKB2lzX25hbWUSGS5idWYudmFsaWRhdGUuU3RyaW5nUnVsZXMYuOaVJiABKAhCYsJIXwpdCg5zdHJpbmcuaXNfbmFtZRIjbXVzdCBiZSB3aXRoaW4gMiBhbmQgMTI4IGNoYXJhY3RlcnMaJnRoaXMuc2l6ZSgpID49IDIgJiYgdGhpcy5zaXplKCkgPD0gMTI4UgZpc05hbWU6mgEKDmlzX2Rlc2NyaXB0aW9uEhkuYnVmLnZhbGlkYXRlLlN0cmluZ1J1bGVzGLnmlSYgASgIQlXCSFIKUAoVc3RyaW5nLmlzX2Rlc2NyaXB0aW9uEiNtdXN0IGJlIHNob3J0ZXIgdGhhbiAyNTYgY2hhcmFjdGVycxoSdGhpcy5zaXplKCkgPD0gMjU2Ug1pc0Rlc2NyaXB0aW9uOqgBCgxpc19wYXJ0aXRpb24SGS5idWYudmFsaWRhdGUuU3RyaW5nUnVsZXMYuuaVJiABKAhCZ8JIZApiChNzdHJpbmcuaXNfcGFydGl0aW9uEiNtdXN0IGJlIHdpdGhpbiAyIGFuZCAxMjggY2hhcmFjdGVycxomdGhpcy5zaXplKCkgPj0gMiAmJiB0aGlzLnNpemUoKSA8PSAxMjhSC2lzUGFydGl0aW9uOoIBCglpc19wcmVmaXgSGS5idWYudmFsaWRhdGUuU3RyaW5nUnVsZXMYu+aVJiABKAhCR8JIRApCCg9zdHJpbmcucHJlZml4ZXMSHGdpdmVuIHByZWZpeGVzIG11c3QgYmUgdmFsaWQaEXRoaXMuaXNJcFByZWZpeCgpUghpc1ByZWZpeDptCgZpc191cmkSGS5idWYudmFsaWRhdGUuU3RyaW5nUnVsZXMYvOaVJiABKAhCOMJINQozCgpzdHJpbmcudXJpEhdnaXZlbiB1cmkgbXVzdCBiZSB2YWxpZBoMdGhpcy5pc1VyaSgpUgVpc1VyaTqnAQoRaXNfaXBfb3JfaG9zdG5hbWUSGS5idWYudmFsaWRhdGUuU3RyaW5nUnVsZXMYveaVJiABKAhCXsJIWwpZCg12YWxpZF9hZGRyZXNzEiZtdXN0IGJlIGEgdmFsaWQgSVAgYWRkcmVzcyBvciBob3N0bmFtZRogdGhpcy5pc0lwKCkgfHwgdGhpcy5pc0hvc3RuYW1lKClSDmlzSXBPckhvc3RuYW1lOp0BCgd0cmltbWVkEhkuYnVmLnZhbGlkYXRlLlN0cmluZ1J1bGVzGL7mlSYgASgIQmXCSGIKYAoOc3RyaW5nLnRyaW1tZWQSK3ZhbHVlIG11c3Qgbm90IHN0YXJ0IG9yIGVuZCB3aXRoIHdoaXRlc3BhY2UaIXRoaXMudHJpbSgpLnNpemUoKSA9PSB0aGlzLnNpemUoKVIHdHJpbW1lZDqPAQoIcHJlZml4ZXMSGy5idWYudmFsaWRhdGUuUmVwZWF0ZWRSdWxlcxjHtJYmIAEoCEJTwkhQCk4KEXJlcGVhdGVkLnByZWZpeGVzEhxnaXZlbiBwcmVmaXhlcyBtdXN0IGJlIHZhbGlkGht0aGlzLmFsbChtLCBtLmlzSXBQcmVmaXgoKSlSCHByZWZpeGVzOnUKA2lwcxIbLmJ1Zi52YWxpZGF0ZS5SZXBlYXRlZFJ1bGVzGMi0liYgASgIQkPCSEAKPgoMcmVwZWF0ZWQuaXBzEhdnaXZlbiBpcHMgbXVzdCBiZSB2YWxpZBoVdGhpcy5hbGwobSwgbS5pc0lwKCkpUgNpcHM65gEKEWFyZV9ob3N0X2FuZF9wb3J0EhsuYnVmLnZhbGlkYXRlLlJlcGVhdGVkUnVsZXMYybSWJiABKAhCmgHCSJYBCpMBChpyZXBlYXRlZC5hcmVfaG9zdF9hbmRfcG9ydBJQZ2l2ZW4gZW50cmllcyBtdXN0IGFsbCBiZSBpbiB0aGUgZm9ybSBvZiA8aXAgfCBob3N0Pjo8cG9ydD4gYnV0IHBvcnQgaXMgb3B0aW9uYWwaI3RoaXMuYWxsKG0sIG0uaXNIb3N0QW5kUG9ydChmYWxzZSkpUg5hcmVIb3N0QW5kUG9ydDq6AQoLYWxsX3RyaW1tZWQSGy5idWYudmFsaWRhdGUuUmVwZWF0ZWRSdWxlcxjKtJYmIAEoCEJ5wkh2CnQKFHJlcGVhdGVkLmFsbF90cmltbWVkEjJnaXZlbiB2YWx1ZXMgbXVzdCBub3Qgc3RhcnQgb3IgZW5kIHdpdGggd2hpdGVzcGFjZRoodGhpcy5hbGwobSwgbS50cmltKCkuc2l6ZSgpID09IG0uc2l6ZSgpKVIKYWxsVHJpbW1lZDqEAgoXa2V5c19hbmRfdmFsdWVzX3RyaW1tZWQSFi5idWYudmFsaWRhdGUuTWFwUnVsZXMY14KXJiABKAhCsQHCSK0BCqoBChttYXAua2V5c19hbmRfdmFsdWVzX3RyaW1tZWQSNWtleXMgYW5kIHZhbHVlcyBtdXN0IG5vdCBzdGFydCBvciBlbmQgd2l0aCB3aGl0ZXNwYWNlGlR0aGlzLmFsbChrLCBrLnRyaW0oKS5zaXplKCkgPT0gay5zaXplKCkpICYmIHRoaXMuYWxsKHYsIHYudHJpbSgpLnNpemUoKSA9PSB2LnNpemUoKSlSFGtleXNBbmRWYWx1ZXNUcmltbWVkOqsBCgxrZXlzX3RyaW1tZWQSFi5idWYudmFsaWRhdGUuTWFwUnVsZXMY2IKXJiABKAhCbcJIagpoChBtYXAua2V5c190cmltbWVkEiprZXlzIG11c3Qgbm90IHN0YXJ0IG9yIGVuZCB3aXRoIHdoaXRlc3BhY2UaKHRoaXMuYWxsKGssIGsudHJpbSgpLnNpemUoKSA9PSBrLnNpemUoKSlSC2tleXNUcmltbWVkQsoBChVjb20ubWV0YWxzdGFjay5hcGkudjJCFFByZWRlZmluZWRSdWxlc1Byb3RvUAFaNWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYXBpL3YyO2FwaXYyogIDTUFYqgIRTWV0YWxzdGFjay5BcGkuVjLKAhFNZXRhbHN0YWNrXEFwaVxWMuICHU1ldGFsc3RhY2tcQXBpXFYyXEdQQk1ldGFkYXRh6gITTWV0YWxzdGFjazo6QXBpOjpWMg", [file_buf_validate_validate]); /** - * Macaddress returns true if the given string is a valid macadress + * Macaddress returns true if the given string is a valid macaddress * * @generated from extension: optional bool macaddress = 80048951; */ diff --git a/js/metalstack/api/v2/project_pb.d.ts b/js/metalstack/api/v2/project_pb.d.ts index fd2d3520..61ad3cca 100644 --- a/js/metalstack/api/v2/project_pb.d.ts +++ b/js/metalstack/api/v2/project_pb.d.ts @@ -323,7 +323,7 @@ export declare const ProjectServiceCreateResponseSchema: GenMessage & { /** - * Project is the uuid of the project to get + * Project is the uuid of the project to delete * * @generated from field: string project = 1; */ @@ -443,7 +443,7 @@ export type ProjectServiceInviteRequest = Message<"metalstack.api.v2.ProjectServ */ export declare const ProjectServiceInviteRequestSchema: GenMessage; /** - * ProjectServiceInviteRequest is the response payload to a invite member request + * ProjectServiceInviteResponse is the response payload to a invite member request * * @generated from message metalstack.api.v2.ProjectServiceInviteResponse */ @@ -665,7 +665,7 @@ export type ProjectServiceInviteAcceptRequest = Message<"metalstack.api.v2.Proje */ export declare const ProjectServiceInviteAcceptRequestSchema: GenMessage; /** - * ProjectServiceInvitesListResponse is the response payload to a accept invite request + * ProjectServiceInviteAcceptResponse is the response payload to a accept invite request * * @generated from message metalstack.api.v2.ProjectServiceInviteAcceptResponse */ diff --git a/js/metalstack/api/v2/project_pb.ts b/js/metalstack/api/v2/project_pb.ts index 365ee773..7aab346d 100644 --- a/js/metalstack/api/v2/project_pb.ts +++ b/js/metalstack/api/v2/project_pb.ts @@ -386,7 +386,7 @@ export const ProjectServiceCreateResponseSchema: GenMessage & { /** - * Project is the uuid of the project to get + * Project is the uuid of the project to delete * * @generated from field: string project = 1; */ @@ -527,7 +527,7 @@ export const ProjectServiceInviteRequestSchema: GenMessage; /** - * TenantServiceInvitesListResponse is the response payload to a accept invite request + * TenantServiceInviteAcceptResponse is the response payload to a accept invite request * * @generated from message metalstack.api.v2.TenantServiceInviteAcceptResponse */ diff --git a/js/metalstack/api/v2/tenant_pb.ts b/js/metalstack/api/v2/tenant_pb.ts index ce242152..b5785007 100644 --- a/js/metalstack/api/v2/tenant_pb.ts +++ b/js/metalstack/api/v2/tenant_pb.ts @@ -737,7 +737,7 @@ export const TenantServiceInviteAcceptRequestSchema: GenMessage events = 1; + * @generated from field: map events = 1; */ events: { [key: string]: MachineProvisioningEvent; @@ -49,119 +49,6 @@ export type EventServiceSendResponse = Message<"metalstack.infra.v2.EventService * Use `create(EventServiceSendResponseSchema)` to create a new message. */ export declare const EventServiceSendResponseSchema: GenMessage; -/** - * MachineProvisioningEvent contains details about an event. - * - * @generated from message metalstack.infra.v2.MachineProvisioningEvent - */ -export type MachineProvisioningEvent = Message<"metalstack.infra.v2.MachineProvisioningEvent"> & { - /** - * Time the event occurred at - * - * @generated from field: google.protobuf.Timestamp time = 1; - */ - time?: Timestamp | undefined; - /** - * Event that occurred - * - * @generated from field: metalstack.infra.v2.ProvisioningEventType event = 2; - */ - event: ProvisioningEventType; - /** - * Message describes the event in more detail - * - * @generated from field: string message = 3; - */ - message: string; -}; -/** - * Describes the message metalstack.infra.v2.MachineProvisioningEvent. - * Use `create(MachineProvisioningEventSchema)` to create a new message. - */ -export declare const MachineProvisioningEventSchema: GenMessage; -/** - * ProvisioningEventType is a short description of a machine event. - * - * @generated from enum metalstack.infra.v2.ProvisioningEventType - */ -export declare enum ProvisioningEventType { - /** - * PROVISIONING_EVENT_TYPE_UNSPECIFIED is unspecified - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_UNSPECIFIED = 0; - */ - UNSPECIFIED = 0, - /** - * PROVISIONING_EVENT_TYPE_ALIVE means the machine has reported itself to the API not long ago - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_ALIVE = 1; - */ - ALIVE = 1, - /** - * PROVISIONING_EVENT_TYPE_CRASHED means an irregularity in the machine's lifecycle - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_CRASHED = 2; - */ - CRASHED = 2, - /** - * PROVISIONING_EVENT_TYPE_PXE_BOOTING is sent when an unprovisioned machine requests a boot image via PXE - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_PXE_BOOTING = 3; - */ - PXE_BOOTING = 3, - /** - * PROVISIONING_EVENT_TYPE_PLANNED_REBOOT means the machine was scheduled for reboot - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_PLANNED_REBOOT = 4; - */ - PLANNED_REBOOT = 4, - /** - * PROVISIONING_EVENT_TYPE_PREPARING means the metal-hammer has started - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_PREPARING = 5; - */ - PREPARING = 5, - /** - * PROVISIONING_EVENT_TYPE_REGISTERING means the metal-hammer is attempting to register the machine at the API - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_REGISTERING = 6; - */ - REGISTERING = 6, - /** - * PROVISIONING_EVENT_TYPE_WAITING means the machine has successfully reached the state where it is waiting for allocation - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_WAITING = 7; - */ - WAITING = 7, - /** - * PROVISIONING_EVENT_TYPE_INSTALLING means the machine was allocated and the requested OS is being installed - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_INSTALLING = 8; - */ - INSTALLING = 8, - /** - * PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL means the machine has successfully been installed and is now booting into the new OS - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL = 9; - */ - BOOTING_NEW_KERNEL = 9, - /** - * PROVISIONING_EVENT_TYPE_PHONED_HOME is sent periodically by an allocated machine to indicate its liveliness - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_PHONED_HOME = 10; - */ - PHONED_HOME = 10, - /** - * PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM means the machine was freed and is about to return into the pool of waiting machines - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM = 11; - */ - MACHINE_RECLAIM = 11 -} -/** - * Describes the enum metalstack.infra.v2.ProvisioningEventType. - */ -export declare const ProvisioningEventTypeSchema: GenEnum; /** * EventService provides machine provisioning event logging operations. * diff --git a/js/metalstack/infra/v2/event_pb.js b/js/metalstack/infra/v2/event_pb.js index 12d98b60..3e25896b 100644 --- a/js/metalstack/infra/v2/event_pb.js +++ b/js/metalstack/infra/v2/event_pb.js @@ -1,14 +1,15 @@ // @generated by protoc-gen-es v2.12.0 with parameter "target=ts" // @generated from file metalstack/infra/v2/event.proto (package metalstack.infra.v2, syntax proto3) /* eslint-disable */ -import { enumDesc, fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv2"; +import { fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv2"; import { file_buf_validate_validate } from "../../../buf/validate/validate_pb"; import { file_google_protobuf_timestamp } from "@bufbuild/protobuf/wkt"; import { file_metalstack_api_v2_common } from "../../api/v2/common_pb"; +import { file_metalstack_api_v2_machine } from "../../api/v2/machine_pb"; /** * Describes the file metalstack/infra/v2/event.proto. */ -export const file_metalstack_infra_v2_event = /*@__PURE__*/ fileDesc("Ch9tZXRhbHN0YWNrL2luZnJhL3YyL2V2ZW50LnByb3RvEhNtZXRhbHN0YWNrLmluZnJhLnYyIsEBChdFdmVudFNlcnZpY2VTZW5kUmVxdWVzdBJICgZldmVudHMYASADKAsyOC5tZXRhbHN0YWNrLmluZnJhLnYyLkV2ZW50U2VydmljZVNlbmRSZXF1ZXN0LkV2ZW50c0VudHJ5GlwKC0V2ZW50c0VudHJ5EgsKA2tleRgBIAEoCRI8CgV2YWx1ZRgCIAEoCzItLm1ldGFsc3RhY2suaW5mcmEudjIuTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50OgI4ASI6ChhFdmVudFNlcnZpY2VTZW5kUmVzcG9uc2USDgoGZXZlbnRzGAEgASgEEg4KBmZhaWxlZBgCIAMoCSKaAQoYTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50EigKBHRpbWUYASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEkMKBWV2ZW50GAIgASgOMioubWV0YWxzdGFjay5pbmZyYS52Mi5Qcm92aXNpb25pbmdFdmVudFR5cGVCCLpIBYIBAhABEg8KB21lc3NhZ2UYAyABKAkquAUKFVByb3Zpc2lvbmluZ0V2ZW50VHlwZRInCiNQUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9VTlNQRUNJRklFRBAAEiwKHVBST1ZJU0lPTklOR19FVkVOVF9UWVBFX0FMSVZFEAEaCYKyGQVBbGl2ZRIwCh9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9DUkFTSEVEEAIaC4KyGQdDcmFzaGVkEjgKI1BST1ZJU0lPTklOR19FVkVOVF9UWVBFX1BYRV9CT09USU5HEAMaD4KyGQtQWEUgQm9vdGluZxI+CiZQUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9QTEFOTkVEX1JFQk9PVBAEGhKCshkOUGxhbm5lZCBSZWJvb3QSNAohUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfUFJFUEFSSU5HEAUaDYKyGQlQcmVwYXJpbmcSOAojUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfUkVHSVNURVJJTkcQBhoPgrIZC1JlZ2lzdGVyaW5nEjAKH1BST1ZJU0lPTklOR19FVkVOVF9UWVBFX1dBSVRJTkcQBxoLgrIZB1dhaXRpbmcSNgoiUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfSU5TVEFMTElORxAIGg6CshkKSW5zdGFsbGluZxJGCipQUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9CT09USU5HX05FV19LRVJORUwQCRoWgrIZEkJvb3RpbmcgTmV3IEtlcm5lbBI4CiNQUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9QSE9ORURfSE9NRRAKGg+CshkLUGhvbmVkIEhvbWUSQAonUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfTUFDSElORV9SRUNMQUlNEAsaE4KyGQ9NYWNoaW5lIFJlY2xhaW0yfgoMRXZlbnRTZXJ2aWNlEm4KBFNlbmQSLC5tZXRhbHN0YWNrLmluZnJhLnYyLkV2ZW50U2VydmljZVNlbmRSZXF1ZXN0Gi0ubWV0YWxzdGFjay5pbmZyYS52Mi5FdmVudFNlcnZpY2VTZW5kUmVzcG9uc2UiCeDzGALq8xgBAULOAQoXY29tLm1ldGFsc3RhY2suaW5mcmEudjJCCkV2ZW50UHJvdG9QAVo5Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9pbmZyYS92MjtpbmZyYXYyogIDTUlYqgITTWV0YWxzdGFjay5JbmZyYS5WMsoCE01ldGFsc3RhY2tcSW5mcmFcVjLiAh9NZXRhbHN0YWNrXEluZnJhXFYyXEdQQk1ldGFkYXRh6gIVTWV0YWxzdGFjazo6SW5mcmE6OlYyYgZwcm90bzM", [file_buf_validate_validate, file_google_protobuf_timestamp, file_metalstack_api_v2_common]); +export const file_metalstack_infra_v2_event = /*@__PURE__*/ fileDesc("Ch9tZXRhbHN0YWNrL2luZnJhL3YyL2V2ZW50LnByb3RvEhNtZXRhbHN0YWNrLmluZnJhLnYyIr8BChdFdmVudFNlcnZpY2VTZW5kUmVxdWVzdBJICgZldmVudHMYASADKAsyOC5tZXRhbHN0YWNrLmluZnJhLnYyLkV2ZW50U2VydmljZVNlbmRSZXF1ZXN0LkV2ZW50c0VudHJ5GloKC0V2ZW50c0VudHJ5EgsKA2tleRgBIAEoCRI6CgV2YWx1ZRgCIAEoCzIrLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVQcm92aXNpb25pbmdFdmVudDoCOAEiOgoYRXZlbnRTZXJ2aWNlU2VuZFJlc3BvbnNlEg4KBmV2ZW50cxgBIAEoBBIOCgZmYWlsZWQYAiADKAkyfgoMRXZlbnRTZXJ2aWNlEm4KBFNlbmQSLC5tZXRhbHN0YWNrLmluZnJhLnYyLkV2ZW50U2VydmljZVNlbmRSZXF1ZXN0Gi0ubWV0YWxzdGFjay5pbmZyYS52Mi5FdmVudFNlcnZpY2VTZW5kUmVzcG9uc2UiCeDzGALq8xgBAULOAQoXY29tLm1ldGFsc3RhY2suaW5mcmEudjJCCkV2ZW50UHJvdG9QAVo5Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9pbmZyYS92MjtpbmZyYXYyogIDTUlYqgITTWV0YWxzdGFjay5JbmZyYS5WMsoCE01ldGFsc3RhY2tcSW5mcmFcVjLiAh9NZXRhbHN0YWNrXEluZnJhXFYyXEdQQk1ldGFkYXRh6gIVTWV0YWxzdGFjazo6SW5mcmE6OlYyYgZwcm90bzM", [file_buf_validate_validate, file_google_protobuf_timestamp, file_metalstack_api_v2_common, file_metalstack_api_v2_machine]); /** * Describes the message metalstack.infra.v2.EventServiceSendRequest. * Use `create(EventServiceSendRequestSchema)` to create a new message. @@ -19,95 +20,6 @@ export const EventServiceSendRequestSchema = /*@__PURE__*/ messageDesc(file_meta * Use `create(EventServiceSendResponseSchema)` to create a new message. */ export const EventServiceSendResponseSchema = /*@__PURE__*/ messageDesc(file_metalstack_infra_v2_event, 1); -/** - * Describes the message metalstack.infra.v2.MachineProvisioningEvent. - * Use `create(MachineProvisioningEventSchema)` to create a new message. - */ -export const MachineProvisioningEventSchema = /*@__PURE__*/ messageDesc(file_metalstack_infra_v2_event, 2); -/** - * ProvisioningEventType is a short description of a machine event. - * - * @generated from enum metalstack.infra.v2.ProvisioningEventType - */ -export var ProvisioningEventType; -(function (ProvisioningEventType) { - /** - * PROVISIONING_EVENT_TYPE_UNSPECIFIED is unspecified - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_UNSPECIFIED = 0; - */ - ProvisioningEventType[ProvisioningEventType["UNSPECIFIED"] = 0] = "UNSPECIFIED"; - /** - * PROVISIONING_EVENT_TYPE_ALIVE means the machine has reported itself to the API not long ago - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_ALIVE = 1; - */ - ProvisioningEventType[ProvisioningEventType["ALIVE"] = 1] = "ALIVE"; - /** - * PROVISIONING_EVENT_TYPE_CRASHED means an irregularity in the machine's lifecycle - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_CRASHED = 2; - */ - ProvisioningEventType[ProvisioningEventType["CRASHED"] = 2] = "CRASHED"; - /** - * PROVISIONING_EVENT_TYPE_PXE_BOOTING is sent when an unprovisioned machine requests a boot image via PXE - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_PXE_BOOTING = 3; - */ - ProvisioningEventType[ProvisioningEventType["PXE_BOOTING"] = 3] = "PXE_BOOTING"; - /** - * PROVISIONING_EVENT_TYPE_PLANNED_REBOOT means the machine was scheduled for reboot - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_PLANNED_REBOOT = 4; - */ - ProvisioningEventType[ProvisioningEventType["PLANNED_REBOOT"] = 4] = "PLANNED_REBOOT"; - /** - * PROVISIONING_EVENT_TYPE_PREPARING means the metal-hammer has started - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_PREPARING = 5; - */ - ProvisioningEventType[ProvisioningEventType["PREPARING"] = 5] = "PREPARING"; - /** - * PROVISIONING_EVENT_TYPE_REGISTERING means the metal-hammer is attempting to register the machine at the API - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_REGISTERING = 6; - */ - ProvisioningEventType[ProvisioningEventType["REGISTERING"] = 6] = "REGISTERING"; - /** - * PROVISIONING_EVENT_TYPE_WAITING means the machine has successfully reached the state where it is waiting for allocation - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_WAITING = 7; - */ - ProvisioningEventType[ProvisioningEventType["WAITING"] = 7] = "WAITING"; - /** - * PROVISIONING_EVENT_TYPE_INSTALLING means the machine was allocated and the requested OS is being installed - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_INSTALLING = 8; - */ - ProvisioningEventType[ProvisioningEventType["INSTALLING"] = 8] = "INSTALLING"; - /** - * PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL means the machine has successfully been installed and is now booting into the new OS - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL = 9; - */ - ProvisioningEventType[ProvisioningEventType["BOOTING_NEW_KERNEL"] = 9] = "BOOTING_NEW_KERNEL"; - /** - * PROVISIONING_EVENT_TYPE_PHONED_HOME is sent periodically by an allocated machine to indicate its liveliness - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_PHONED_HOME = 10; - */ - ProvisioningEventType[ProvisioningEventType["PHONED_HOME"] = 10] = "PHONED_HOME"; - /** - * PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM means the machine was freed and is about to return into the pool of waiting machines - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM = 11; - */ - ProvisioningEventType[ProvisioningEventType["MACHINE_RECLAIM"] = 11] = "MACHINE_RECLAIM"; -})(ProvisioningEventType || (ProvisioningEventType = {})); -/** - * Describes the enum metalstack.infra.v2.ProvisioningEventType. - */ -export const ProvisioningEventTypeSchema = /*@__PURE__*/ enumDesc(file_metalstack_infra_v2_event, 0); /** * EventService provides machine provisioning event logging operations. * diff --git a/js/metalstack/infra/v2/event_pb.ts b/js/metalstack/infra/v2/event_pb.ts index 32dcf512..f8e98df8 100644 --- a/js/metalstack/infra/v2/event_pb.ts +++ b/js/metalstack/infra/v2/event_pb.ts @@ -2,19 +2,20 @@ // @generated from file metalstack/infra/v2/event.proto (package metalstack.infra.v2, syntax proto3) /* eslint-disable */ -import type { GenEnum, GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2"; -import { enumDesc, fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv2"; +import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2"; +import { fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv2"; import { file_buf_validate_validate } from "../../../buf/validate/validate_pb"; -import type { Timestamp } from "@bufbuild/protobuf/wkt"; import { file_google_protobuf_timestamp } from "@bufbuild/protobuf/wkt"; import { file_metalstack_api_v2_common } from "../../api/v2/common_pb"; +import type { MachineProvisioningEvent } from "../../api/v2/machine_pb"; +import { file_metalstack_api_v2_machine } from "../../api/v2/machine_pb"; import type { Message } from "@bufbuild/protobuf"; /** * Describes the file metalstack/infra/v2/event.proto. */ export const file_metalstack_infra_v2_event: GenFile = /*@__PURE__*/ - fileDesc("Ch9tZXRhbHN0YWNrL2luZnJhL3YyL2V2ZW50LnByb3RvEhNtZXRhbHN0YWNrLmluZnJhLnYyIsEBChdFdmVudFNlcnZpY2VTZW5kUmVxdWVzdBJICgZldmVudHMYASADKAsyOC5tZXRhbHN0YWNrLmluZnJhLnYyLkV2ZW50U2VydmljZVNlbmRSZXF1ZXN0LkV2ZW50c0VudHJ5GlwKC0V2ZW50c0VudHJ5EgsKA2tleRgBIAEoCRI8CgV2YWx1ZRgCIAEoCzItLm1ldGFsc3RhY2suaW5mcmEudjIuTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50OgI4ASI6ChhFdmVudFNlcnZpY2VTZW5kUmVzcG9uc2USDgoGZXZlbnRzGAEgASgEEg4KBmZhaWxlZBgCIAMoCSKaAQoYTWFjaGluZVByb3Zpc2lvbmluZ0V2ZW50EigKBHRpbWUYASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEkMKBWV2ZW50GAIgASgOMioubWV0YWxzdGFjay5pbmZyYS52Mi5Qcm92aXNpb25pbmdFdmVudFR5cGVCCLpIBYIBAhABEg8KB21lc3NhZ2UYAyABKAkquAUKFVByb3Zpc2lvbmluZ0V2ZW50VHlwZRInCiNQUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9VTlNQRUNJRklFRBAAEiwKHVBST1ZJU0lPTklOR19FVkVOVF9UWVBFX0FMSVZFEAEaCYKyGQVBbGl2ZRIwCh9QUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9DUkFTSEVEEAIaC4KyGQdDcmFzaGVkEjgKI1BST1ZJU0lPTklOR19FVkVOVF9UWVBFX1BYRV9CT09USU5HEAMaD4KyGQtQWEUgQm9vdGluZxI+CiZQUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9QTEFOTkVEX1JFQk9PVBAEGhKCshkOUGxhbm5lZCBSZWJvb3QSNAohUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfUFJFUEFSSU5HEAUaDYKyGQlQcmVwYXJpbmcSOAojUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfUkVHSVNURVJJTkcQBhoPgrIZC1JlZ2lzdGVyaW5nEjAKH1BST1ZJU0lPTklOR19FVkVOVF9UWVBFX1dBSVRJTkcQBxoLgrIZB1dhaXRpbmcSNgoiUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfSU5TVEFMTElORxAIGg6CshkKSW5zdGFsbGluZxJGCipQUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9CT09USU5HX05FV19LRVJORUwQCRoWgrIZEkJvb3RpbmcgTmV3IEtlcm5lbBI4CiNQUk9WSVNJT05JTkdfRVZFTlRfVFlQRV9QSE9ORURfSE9NRRAKGg+CshkLUGhvbmVkIEhvbWUSQAonUFJPVklTSU9OSU5HX0VWRU5UX1RZUEVfTUFDSElORV9SRUNMQUlNEAsaE4KyGQ9NYWNoaW5lIFJlY2xhaW0yfgoMRXZlbnRTZXJ2aWNlEm4KBFNlbmQSLC5tZXRhbHN0YWNrLmluZnJhLnYyLkV2ZW50U2VydmljZVNlbmRSZXF1ZXN0Gi0ubWV0YWxzdGFjay5pbmZyYS52Mi5FdmVudFNlcnZpY2VTZW5kUmVzcG9uc2UiCeDzGALq8xgBAULOAQoXY29tLm1ldGFsc3RhY2suaW5mcmEudjJCCkV2ZW50UHJvdG9QAVo5Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9pbmZyYS92MjtpbmZyYXYyogIDTUlYqgITTWV0YWxzdGFjay5JbmZyYS5WMsoCE01ldGFsc3RhY2tcSW5mcmFcVjLiAh9NZXRhbHN0YWNrXEluZnJhXFYyXEdQQk1ldGFkYXRh6gIVTWV0YWxzdGFjazo6SW5mcmE6OlYyYgZwcm90bzM", [file_buf_validate_validate, file_google_protobuf_timestamp, file_metalstack_api_v2_common]); + fileDesc("Ch9tZXRhbHN0YWNrL2luZnJhL3YyL2V2ZW50LnByb3RvEhNtZXRhbHN0YWNrLmluZnJhLnYyIr8BChdFdmVudFNlcnZpY2VTZW5kUmVxdWVzdBJICgZldmVudHMYASADKAsyOC5tZXRhbHN0YWNrLmluZnJhLnYyLkV2ZW50U2VydmljZVNlbmRSZXF1ZXN0LkV2ZW50c0VudHJ5GloKC0V2ZW50c0VudHJ5EgsKA2tleRgBIAEoCRI6CgV2YWx1ZRgCIAEoCzIrLm1ldGFsc3RhY2suYXBpLnYyLk1hY2hpbmVQcm92aXNpb25pbmdFdmVudDoCOAEiOgoYRXZlbnRTZXJ2aWNlU2VuZFJlc3BvbnNlEg4KBmV2ZW50cxgBIAEoBBIOCgZmYWlsZWQYAiADKAkyfgoMRXZlbnRTZXJ2aWNlEm4KBFNlbmQSLC5tZXRhbHN0YWNrLmluZnJhLnYyLkV2ZW50U2VydmljZVNlbmRSZXF1ZXN0Gi0ubWV0YWxzdGFjay5pbmZyYS52Mi5FdmVudFNlcnZpY2VTZW5kUmVzcG9uc2UiCeDzGALq8xgBAULOAQoXY29tLm1ldGFsc3RhY2suaW5mcmEudjJCCkV2ZW50UHJvdG9QAVo5Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9pbmZyYS92MjtpbmZyYXYyogIDTUlYqgITTWV0YWxzdGFjay5JbmZyYS5WMsoCE01ldGFsc3RhY2tcSW5mcmFcVjLiAh9NZXRhbHN0YWNrXEluZnJhXFYyXEdQQk1ldGFkYXRh6gIVTWV0YWxzdGFjazo6SW5mcmE6OlYyYgZwcm90bzM", [file_buf_validate_validate, file_google_protobuf_timestamp, file_metalstack_api_v2_common, file_metalstack_api_v2_machine]); /** * EventServiceSendRequest is the request payload for sending provisioning events. @@ -25,7 +26,7 @@ export type EventServiceSendRequest = Message<"metalstack.infra.v2.EventServiceS /** * Events grouped by machine IDs * - * @generated from field: map events = 1; + * @generated from field: map events = 1; */ events: { [key: string]: MachineProvisioningEvent }; }; @@ -65,138 +66,6 @@ export type EventServiceSendResponse = Message<"metalstack.infra.v2.EventService export const EventServiceSendResponseSchema: GenMessage = /*@__PURE__*/ messageDesc(file_metalstack_infra_v2_event, 1); -/** - * MachineProvisioningEvent contains details about an event. - * - * @generated from message metalstack.infra.v2.MachineProvisioningEvent - */ -export type MachineProvisioningEvent = Message<"metalstack.infra.v2.MachineProvisioningEvent"> & { - /** - * Time the event occurred at - * - * @generated from field: google.protobuf.Timestamp time = 1; - */ - time?: Timestamp | undefined; - - /** - * Event that occurred - * - * @generated from field: metalstack.infra.v2.ProvisioningEventType event = 2; - */ - event: ProvisioningEventType; - - /** - * Message describes the event in more detail - * - * @generated from field: string message = 3; - */ - message: string; -}; - -/** - * Describes the message metalstack.infra.v2.MachineProvisioningEvent. - * Use `create(MachineProvisioningEventSchema)` to create a new message. - */ -export const MachineProvisioningEventSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_metalstack_infra_v2_event, 2); - -/** - * ProvisioningEventType is a short description of a machine event. - * - * @generated from enum metalstack.infra.v2.ProvisioningEventType - */ -export enum ProvisioningEventType { - /** - * PROVISIONING_EVENT_TYPE_UNSPECIFIED is unspecified - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_UNSPECIFIED = 0; - */ - UNSPECIFIED = 0, - - /** - * PROVISIONING_EVENT_TYPE_ALIVE means the machine has reported itself to the API not long ago - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_ALIVE = 1; - */ - ALIVE = 1, - - /** - * PROVISIONING_EVENT_TYPE_CRASHED means an irregularity in the machine's lifecycle - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_CRASHED = 2; - */ - CRASHED = 2, - - /** - * PROVISIONING_EVENT_TYPE_PXE_BOOTING is sent when an unprovisioned machine requests a boot image via PXE - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_PXE_BOOTING = 3; - */ - PXE_BOOTING = 3, - - /** - * PROVISIONING_EVENT_TYPE_PLANNED_REBOOT means the machine was scheduled for reboot - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_PLANNED_REBOOT = 4; - */ - PLANNED_REBOOT = 4, - - /** - * PROVISIONING_EVENT_TYPE_PREPARING means the metal-hammer has started - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_PREPARING = 5; - */ - PREPARING = 5, - - /** - * PROVISIONING_EVENT_TYPE_REGISTERING means the metal-hammer is attempting to register the machine at the API - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_REGISTERING = 6; - */ - REGISTERING = 6, - - /** - * PROVISIONING_EVENT_TYPE_WAITING means the machine has successfully reached the state where it is waiting for allocation - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_WAITING = 7; - */ - WAITING = 7, - - /** - * PROVISIONING_EVENT_TYPE_INSTALLING means the machine was allocated and the requested OS is being installed - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_INSTALLING = 8; - */ - INSTALLING = 8, - - /** - * PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL means the machine has successfully been installed and is now booting into the new OS - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL = 9; - */ - BOOTING_NEW_KERNEL = 9, - - /** - * PROVISIONING_EVENT_TYPE_PHONED_HOME is sent periodically by an allocated machine to indicate its liveliness - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_PHONED_HOME = 10; - */ - PHONED_HOME = 10, - - /** - * PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM means the machine was freed and is about to return into the pool of waiting machines - * - * @generated from enum value: PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM = 11; - */ - MACHINE_RECLAIM = 11, -} - -/** - * Describes the enum metalstack.infra.v2.ProvisioningEventType. - */ -export const ProvisioningEventTypeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_metalstack_infra_v2_event, 0); - /** * EventService provides machine provisioning event logging operations. * diff --git a/proto/metalstack/admin/v2/machine.proto b/proto/metalstack/admin/v2/machine.proto index 8f34b8f9..a04726c1 100644 --- a/proto/metalstack/admin/v2/machine.proto +++ b/proto/metalstack/admin/v2/machine.proto @@ -54,7 +54,7 @@ message MachineServiceGetRequest { string uuid = 1 [(buf.validate.field).string.uuid = true]; } -// MachineServiceGetResponse is the request payload for a machine get response +// MachineServiceGetResponse is the response payload for a machine get request message MachineServiceGetResponse { // Machine is the machine requested metalstack.api.v2.Machine machine = 1; @@ -69,7 +69,7 @@ message MachineServiceListRequest { optional string partition = 2 [(buf.validate.field).string.(metalstack.api.v2.is_partition) = true]; } -// MachineServiceListResponse is the request payload for a machine list response +// MachineServiceListResponse is the response payload for a machine list request message MachineServiceListResponse { // Machines are the machines requested by a list request repeated metalstack.api.v2.Machine machines = 1; @@ -102,7 +102,7 @@ message MachineServiceGetBMCResponse { // MachineServiceListBMCRequest is the request payload for a machine listbmc request message MachineServiceListBMCRequest { - // Query to list one ore more bmcs of more machines + // Query to list one ore more bmcs of many machines metalstack.api.v2.MachineBMCQuery query = 1; } diff --git a/proto/metalstack/api/v2/common.proto b/proto/metalstack/api/v2/common.proto index 0c501ade..14d46877 100644 --- a/proto/metalstack/api/v2/common.proto +++ b/proto/metalstack/api/v2/common.proto @@ -101,7 +101,7 @@ extend google.protobuf.MethodOptions { Auditing auditing = 51004; // InfraRoles are used to define which infra role a microservice must provide to call this method repeated InfraRole infra_roles = 51005; - // MachineRole are used to define which infra role a microservice must provide to call this method + // MachineRole are used to define which machine role a microservice must provide to call this method repeated MachineRole machine_roles = 51006; } diff --git a/proto/metalstack/api/v2/image.proto b/proto/metalstack/api/v2/image.proto index 6a52932f..346b2444 100644 --- a/proto/metalstack/api/v2/image.proto +++ b/proto/metalstack/api/v2/image.proto @@ -67,15 +67,15 @@ message ImageServiceLatestResponse { // Image message Image { - // Id of this imageLayout + // Id of this image string id = 1 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; - // Meta for this ip + // Meta for this image Meta meta = 2; // URL where this image is located string url = 3 [(buf.validate.field).string.(metalstack.api.v2.is_uri) = true]; - // Name of this imageLayout + // Name of this image optional string name = 4 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; - // Description of this imageLayout + // Description of this image optional string description = 5 [(buf.validate.field).string.(metalstack.api.v2.is_description) = true]; // Features of this image repeated ImageFeature features = 6 [(buf.validate.field).repeated = { diff --git a/proto/metalstack/api/v2/ip.proto b/proto/metalstack/api/v2/ip.proto index 7d833028..676c4a53 100644 --- a/proto/metalstack/api/v2/ip.proto +++ b/proto/metalstack/api/v2/ip.proto @@ -119,7 +119,7 @@ message IPServiceCreateRequest { // IPServiceUpdateRequest is the request payload for a ip update request message IPServiceUpdateRequest { - // Ip the ip to update + // Ip the ip address to update string ip = 1 [(buf.validate.field).string.ip = true]; // UpdateMeta contains the timestamp and strategy to be used in this update request UpdateMeta update_meta = 2 [(buf.validate.field).required = true]; diff --git a/proto/metalstack/api/v2/machine.proto b/proto/metalstack/api/v2/machine.proto index e70b6034..529eb056 100644 --- a/proto/metalstack/api/v2/machine.proto +++ b/proto/metalstack/api/v2/machine.proto @@ -70,7 +70,7 @@ message MachineServiceGetRequest { string project = 2 [(buf.validate.field).string.uuid = true]; } -// MachineServiceGetResponse is the request payload for a machine get response +// MachineServiceGetResponse is the response payload for a machine get request message MachineServiceGetResponse { // Machine is the machine requested Machine machine = 1; @@ -81,7 +81,7 @@ message MachineServiceCreateRequest { // Project of the machine string project = 1 [(buf.validate.field).string.uuid = true]; // UUID if this field is set, this specific machine will be allocated if it is not in available state and not currently allocated. - // this field overrules size and partition. + // this field takes precedence over size and partition. // Can only be used with ADMIN_ROLE_EDITOR optional string uuid = 2 [(buf.validate.field).string.uuid = true]; // Name of this machine @@ -109,7 +109,7 @@ message MachineServiceCreateRequest { // SSHPublicKeys defines the ssh public key to be installed on the machine to access it via ssh repeated string ssh_public_keys = 10 [ (buf.validate.field).repeated = { - // At most 50 keys can be store. + // At most 50 keys can be stored. // A lower bound can be set similarly with `min_items`. max_items: 50 // `items` validate each value in this `repeated` field. @@ -155,7 +155,7 @@ message FirewallSpec { FirewallRules firewall_rules = 1; } -// MachineServiceCreateResponse is the request payload for a machine create response +// MachineServiceCreateResponse is the response payload for a machine create request message MachineServiceCreateResponse { // Machine which was created Machine machine = 1; @@ -176,7 +176,7 @@ message MachineServiceUpdateRequest { // SSHPublicKeys which should be update of this machine allocation repeated string ssh_public_keys = 6 [ (buf.validate.field).repeated = { - // At most 50 keys can be store. + // At most 50 keys can be stored. // A lower bound can be set similarly with `min_items`. max_items: 50 // `items` validate each value in this `repeated` field. @@ -195,7 +195,7 @@ message MachineServiceUpdateRequest { ]; } -// MachineServiceUpdateResponse is the request payload for a machine update response +// MachineServiceUpdateResponse is the response payload for a machine update request message MachineServiceUpdateResponse { // Machine which was updated Machine machine = 1; @@ -209,7 +209,7 @@ message MachineServiceListRequest { MachineQuery query = 2; } -// MachineServiceListResponse is the request payload for a machine list response +// MachineServiceListResponse is the response payload for a machine list request message MachineServiceListResponse { // Machines are the machines requested by a list request repeated Machine machines = 1; @@ -223,9 +223,9 @@ message MachineServiceDeleteRequest { string project = 2 [(buf.validate.field).string.uuid = true]; } -// MachineServiceDeleteResponse is the request payload for a machine delete response +// MachineServiceDeleteResponse is the response payload for a machine delete request message MachineServiceDeleteResponse { - // Machine which was deleteds + // Machine which was deleted Machine machine = 1; } @@ -329,7 +329,7 @@ message MachineAllocation { // SSHPublicKeys which should be installed on this machine repeated string ssh_public_keys = 11 [ (buf.validate.field).repeated = { - // At most 50 keys can be store. + // At most 50 keys can be stored. // A lower bound can be set similarly with `min_items`. max_items: 50 // `items` validate each value in this `repeated` field. @@ -691,7 +691,7 @@ message MachineProvisioningEvent { // Time the time that this event was received google.protobuf.Timestamp time = 1; // Event the event emitted by the machine - MachineProvisioningEventType event = 2; + MachineProvisioningEventType event = 2 [(buf.validate.field).enum.defined_only = true]; // Message an additional message to add to the event string message = 3; } diff --git a/proto/metalstack/api/v2/partition.proto b/proto/metalstack/api/v2/partition.proto index 3c9ae28d..da1a16fe 100644 --- a/proto/metalstack/api/v2/partition.proto +++ b/proto/metalstack/api/v2/partition.proto @@ -24,7 +24,7 @@ service PartitionService { message Partition { // ID of this partition string id = 1 [(buf.validate.field).string.(metalstack.api.v2.is_partition) = true]; - // Meta for this ip + // Meta for this partition Meta meta = 2; // Description of this partition string description = 3 [(buf.validate.field).string.(metalstack.api.v2.is_description) = true]; @@ -54,7 +54,7 @@ message PartitionBootConfiguration { // KernelURL the url to download the kernel for the boot image string kernel_url = 2 [(buf.validate.field).string.(metalstack.api.v2.is_uri) = true]; // Commandline the cmdline to the kernel for the boot image - string commandline = 3; + string commandline = 3 [(buf.validate.field).string.max_len = 4096]; } // DNSServer @@ -83,12 +83,12 @@ message PartitionServiceListRequest { // PartitionServiceGetResponse is the response payload for a partition get request message PartitionServiceGetResponse { - // Ip the partition + // Partition is the partition Partition partition = 1; } // PartitionServiceListResponse is the response payload for a partition list request message PartitionServiceListResponse { - // Ips the partitions + // Partitions are the partitions repeated Partition partitions = 1; } diff --git a/proto/metalstack/api/v2/predefined_rules.proto b/proto/metalstack/api/v2/predefined_rules.proto index 9098b14f..10e4f167 100644 --- a/proto/metalstack/api/v2/predefined_rules.proto +++ b/proto/metalstack/api/v2/predefined_rules.proto @@ -8,7 +8,7 @@ import "buf/validate/validate.proto"; // See https://celbyexample.com/ for cel documentation extend buf.validate.StringRules { - // Macaddress returns true if the given string is a valid macadress + // Macaddress returns true if the given string is a valid macaddress optional bool macaddress = 80048951 [(buf.validate.predefined).cel = { id: "string.macaddress" message: "this string must be a valid macaddress" diff --git a/proto/metalstack/api/v2/project.proto b/proto/metalstack/api/v2/project.proto index 7b1860c5..0a29498b 100644 --- a/proto/metalstack/api/v2/project.proto +++ b/proto/metalstack/api/v2/project.proto @@ -188,7 +188,7 @@ message ProjectServiceCreateResponse { // ProjectServiceDeleteRequest is the request payload to delete a project message ProjectServiceDeleteRequest { - // Project is the uuid of the project to get + // Project is the uuid of the project to delete string project = 1 [(buf.validate.field).string.uuid = true]; } @@ -229,7 +229,7 @@ message ProjectServiceInviteRequest { ProjectRole role = 2 [(buf.validate.field).enum.defined_only = true]; } -// ProjectServiceInviteRequest is the response payload to a invite member request +// ProjectServiceInviteResponse is the response payload to a invite member request message ProjectServiceInviteResponse { // Inviter contains a secret which can be sent to a potential user // can be appended to the invitation endpoint at our cloud console like @@ -303,7 +303,7 @@ message ProjectServiceInviteAcceptRequest { string secret = 1; } -// ProjectServiceInvitesListResponse is the response payload to a accept invite request +// ProjectServiceInviteAcceptResponse is the response payload to a accept invite request message ProjectServiceInviteAcceptResponse { // Project ID of the project joined string project = 1; diff --git a/proto/metalstack/api/v2/tenant.proto b/proto/metalstack/api/v2/tenant.proto index e20ac209..00ad36f3 100644 --- a/proto/metalstack/api/v2/tenant.proto +++ b/proto/metalstack/api/v2/tenant.proto @@ -289,7 +289,7 @@ message TenantServiceInviteAcceptRequest { string secret = 1; } -// TenantServiceInvitesListResponse is the response payload to a accept invite request +// TenantServiceInviteAcceptResponse is the response payload to a accept invite request message TenantServiceInviteAcceptResponse { // Tenant ID of the joined tenant string tenant = 1; diff --git a/proto/metalstack/api/v2/vpn.proto b/proto/metalstack/api/v2/vpn.proto index 97b27c08..46788808 100644 --- a/proto/metalstack/api/v2/vpn.proto +++ b/proto/metalstack/api/v2/vpn.proto @@ -2,18 +2,20 @@ syntax = "proto3"; package metalstack.api.v2; +import "buf/validate/validate.proto"; import "google/protobuf/timestamp.proto"; +import "metalstack/api/v2/predefined_rules.proto"; // VPNNode represents a machine connected to the VPN. message VPNNode { // ID of this node uint64 id = 1; // Name of this node - string name = 2; + string name = 2 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; // Project of this node, maps to a project - string project = 3; + string project = 3 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; // IPAddresses of this node in the VPN - repeated string ip_addresses = 4; + repeated string ip_addresses = 4 [(buf.validate.field).repeated.(metalstack.api.v2.ips) = true]; // LastSeen timestamp when this node reached out to the control plane google.protobuf.Timestamp last_seen = 5; // Online indicates if this node is online diff --git a/proto/metalstack/infra/v2/event.proto b/proto/metalstack/infra/v2/event.proto index efbf2cf6..65f17a7d 100644 --- a/proto/metalstack/infra/v2/event.proto +++ b/proto/metalstack/infra/v2/event.proto @@ -5,6 +5,7 @@ package metalstack.infra.v2; import "buf/validate/validate.proto"; import "google/protobuf/timestamp.proto"; import "metalstack/api/v2/common.proto"; +import "metalstack/api/v2/machine.proto"; // EventService provides machine provisioning event logging operations. service EventService { @@ -18,7 +19,7 @@ service EventService { // EventServiceSendRequest is the request payload for sending provisioning events. message EventServiceSendRequest { // Events grouped by machine IDs - map events = 1; + map events = 1; } // EventServiceSendResponse is the response payload for sending provisioning events. @@ -28,41 +29,3 @@ message EventServiceSendResponse { // Failed contains IDs of all machines whose events could not be stored in the database repeated string failed = 2; } - -// MachineProvisioningEvent contains details about an event. -message MachineProvisioningEvent { - // Time the event occurred at - google.protobuf.Timestamp time = 1; - // Event that occurred - ProvisioningEventType event = 2 [(buf.validate.field).enum.defined_only = true]; - // Message describes the event in more detail - string message = 3; -} - -// ProvisioningEventType is a short description of a machine event. -enum ProvisioningEventType { - // PROVISIONING_EVENT_TYPE_UNSPECIFIED is unspecified - PROVISIONING_EVENT_TYPE_UNSPECIFIED = 0; - // PROVISIONING_EVENT_TYPE_ALIVE means the machine has reported itself to the API not long ago - PROVISIONING_EVENT_TYPE_ALIVE = 1 [(metalstack.api.v2.enum_string_value) = "Alive"]; - // PROVISIONING_EVENT_TYPE_CRASHED means an irregularity in the machine's lifecycle - PROVISIONING_EVENT_TYPE_CRASHED = 2 [(metalstack.api.v2.enum_string_value) = "Crashed"]; - // PROVISIONING_EVENT_TYPE_PXE_BOOTING is sent when an unprovisioned machine requests a boot image via PXE - PROVISIONING_EVENT_TYPE_PXE_BOOTING = 3 [(metalstack.api.v2.enum_string_value) = "PXE Booting"]; - // PROVISIONING_EVENT_TYPE_PLANNED_REBOOT means the machine was scheduled for reboot - PROVISIONING_EVENT_TYPE_PLANNED_REBOOT = 4 [(metalstack.api.v2.enum_string_value) = "Planned Reboot"]; - // PROVISIONING_EVENT_TYPE_PREPARING means the metal-hammer has started - PROVISIONING_EVENT_TYPE_PREPARING = 5 [(metalstack.api.v2.enum_string_value) = "Preparing"]; - // PROVISIONING_EVENT_TYPE_REGISTERING means the metal-hammer is attempting to register the machine at the API - PROVISIONING_EVENT_TYPE_REGISTERING = 6 [(metalstack.api.v2.enum_string_value) = "Registering"]; - // PROVISIONING_EVENT_TYPE_WAITING means the machine has successfully reached the state where it is waiting for allocation - PROVISIONING_EVENT_TYPE_WAITING = 7 [(metalstack.api.v2.enum_string_value) = "Waiting"]; - // PROVISIONING_EVENT_TYPE_INSTALLING means the machine was allocated and the requested OS is being installed - PROVISIONING_EVENT_TYPE_INSTALLING = 8 [(metalstack.api.v2.enum_string_value) = "Installing"]; - // PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL means the machine has successfully been installed and is now booting into the new OS - PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL = 9 [(metalstack.api.v2.enum_string_value) = "Booting New Kernel"]; - // PROVISIONING_EVENT_TYPE_PHONED_HOME is sent periodically by an allocated machine to indicate its liveliness - PROVISIONING_EVENT_TYPE_PHONED_HOME = 10 [(metalstack.api.v2.enum_string_value) = "Phoned Home"]; - // PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM means the machine was freed and is about to return into the pool of waiting machines - PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM = 11 [(metalstack.api.v2.enum_string_value) = "Machine Reclaim"]; -} diff --git a/python/metalstack/api/v2/machine_pb2.py b/python/metalstack/api/v2/machine_pb2.py index 67ba0a54..d0bfee3f 100644 --- a/python/metalstack/api/v2/machine_pb2.py +++ b/python/metalstack/api/v2/machine_pb2.py @@ -33,7 +33,7 @@ from metalstack.api.v2 import size_pb2 as metalstack_dot_api_dot_v2_dot_size__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fmetalstack/api/v2/machine.proto\x12\x11metalstack.api.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1emetalstack/api/v2/common.proto\x1a\"metalstack/api/v2/filesystem.proto\x1a\x1dmetalstack/api/v2/image.proto\x1a\x1fmetalstack/api/v2/network.proto\x1a!metalstack/api/v2/partition.proto\x1a(metalstack/api/v2/predefined_rules.proto\x1a\x1cmetalstack/api/v2/size.proto\"\\\n\x18MachineServiceGetRequest\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12\"\n\x07project\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\"Q\n\x19MachineServiceGetResponse\x12\x34\n\x07machine\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.MachineR\x07machine\"\xda\x08\n\x1bMachineServiceCreateRequest\x12\"\n\x07project\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12!\n\x04uuid\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x00R\x04uuid\x88\x01\x01\x12\x1f\n\x04name\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04name\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\x08hostname\x18\x05 \x01(\tB\x07\xbaH\x04r\x02h\x01H\x02R\x08hostname\x88\x01\x01\x12.\n\tpartition\x18\x06 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x03R\tpartition\x88\x01\x01\x12$\n\x04size\x18\x07 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x04R\x04size\x88\x01\x01\x12!\n\x05image\x18\x08 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x05image\x12=\n\x11\x66ilesystem_layout\x18\t \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x05R\x10\x66ilesystemLayout\x88\x01\x01\x12?\n\x0fssh_public_keys\x18\n \x03(\tB\x17\xbaH\x14\x92\x01\x11\x10\x32\"\x07r\x05\x10\x01\x18\x80@\xd0\xa4\xb3\xb1\x02\x01R\rsshPublicKeys\x12\x30\n\x08userdata\x18\x0b \x01(\tB\x0f\xbaH\x0cr\n\x18\x80\x80\x02\xf0\xb3\xae\xb1\x02\x01H\x06R\x08userdata\x88\x01\x01\x12\x31\n\x06labels\x18\x0c \x01(\x0b\x32\x19.metalstack.api.v2.LabelsR\x06labels\x12Q\n\x08networks\x18\r \x03(\x0b\x32+.metalstack.api.v2.MachineAllocationNetworkB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x08networks\x12/\n\x0eplacement_tags\x18\x0e \x03(\tB\x08\xbaH\x05\x92\x01\x02\x10@R\rplacementTags\x12G\n\x0b\x64ns_servers\x18\x0f \x03(\x0b\x32\x1c.metalstack.api.v2.DNSServerB\x08\xbaH\x05\x92\x01\x02\x10\x03R\ndnsServers\x12G\n\x0bntp_servers\x18\x10 \x03(\x0b\x32\x1c.metalstack.api.v2.NTPServerB\x08\xbaH\x05\x92\x01\x02\x10\nR\nntpServers\x12[\n\x0f\x61llocation_type\x18\x11 \x01(\x0e\x32(.metalstack.api.v2.MachineAllocationTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0e\x61llocationType\x12\x44\n\rfirewall_spec\x18\x12 \x01(\x0b\x32\x1f.metalstack.api.v2.FirewallSpecR\x0c\x66irewallSpecB\x07\n\x05_uuidB\x0e\n\x0c_descriptionB\x0b\n\t_hostnameB\x0c\n\n_partitionB\x07\n\x05_sizeB\x14\n\x12_filesystem_layoutB\x0b\n\t_userdata\"W\n\x0c\x46irewallSpec\x12G\n\x0e\x66irewall_rules\x18\x01 \x01(\x0b\x32 .metalstack.api.v2.FirewallRulesR\rfirewallRules\"T\n\x1cMachineServiceCreateResponse\x12\x34\n\x07machine\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.MachineR\x07machine\"\xf5\x02\n\x1bMachineServiceUpdateRequest\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12\x46\n\x0bupdate_meta\x18\x02 \x01(\x0b\x32\x1d.metalstack.api.v2.UpdateMetaB\x06\xbaH\x03\xc8\x01\x01R\nupdateMeta\x12\"\n\x07project\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12\x32\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x00R\x0b\x64\x65scription\x88\x01\x01\x12<\n\x06labels\x18\x05 \x01(\x0b\x32\x1f.metalstack.api.v2.UpdateLabelsH\x01R\x06labels\x88\x01\x01\x12?\n\x0fssh_public_keys\x18\x06 \x03(\tB\x17\xbaH\x14\x92\x01\x11\x10\x32\"\x07r\x05\x10\x01\x18\x80@\xd0\xa4\xb3\xb1\x02\x01R\rsshPublicKeysB\x0e\n\x0c_descriptionB\t\n\x07_labels\"T\n\x1cMachineServiceUpdateResponse\x12\x34\n\x07machine\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.MachineR\x07machine\"v\n\x19MachineServiceListRequest\x12\"\n\x07project\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12\x35\n\x05query\x18\x02 \x01(\x0b\x32\x1f.metalstack.api.v2.MachineQueryR\x05query\"T\n\x1aMachineServiceListResponse\x12\x36\n\x08machines\x18\x01 \x03(\x0b\x32\x1a.metalstack.api.v2.MachineR\x08machines\"_\n\x1bMachineServiceDeleteRequest\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12\"\n\x07project\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\"T\n\x1cMachineServiceDeleteResponse\x12\x34\n\x07machine\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.MachineR\x07machine\"\xad\x01\n\x1fMachineServiceBMCCommandRequest\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12\"\n\x07project\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12H\n\x07\x63ommand\x18\x03 \x01(\x0e\x32$.metalstack.api.v2.MachineBMCCommandB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x07\x63ommand\"\"\n MachineServiceBMCCommandResponse\"_\n\x1bMachineServiceGetBMCRequest\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12\"\n\x07project\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\"s\n\x1cMachineServiceGetBMCResponse\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12\x35\n\x03\x62mc\x18\x02 \x01(\x0b\x32#.metalstack.api.v2.MachineBMCReportR\x03\x62mc\"\x8d\x04\n\x07Machine\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12+\n\x04meta\x18\x02 \x01(\x0b\x32\x17.metalstack.api.v2.MetaR\x04meta\x12:\n\tpartition\x18\x03 \x01(\x0b\x32\x1c.metalstack.api.v2.PartitionR\tpartition\x12\x1c\n\x04rack\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x04rack\x12+\n\x04size\x18\x05 \x01(\x0b\x32\x17.metalstack.api.v2.SizeR\x04size\x12>\n\x08hardware\x18\x06 \x01(\x0b\x32\".metalstack.api.v2.MachineHardwareR\x08hardware\x12\x44\n\nallocation\x18\x07 \x01(\x0b\x32$.metalstack.api.v2.MachineAllocationR\nallocation\x12\x38\n\x06status\x18\x08 \x01(\x0b\x32 .metalstack.api.v2.MachineStatusR\x06status\x12p\n\x1arecent_provisioning_events\x18\t \x01(\x0b\x32\x32.metalstack.api.v2.MachineRecentProvisioningEventsR\x18recentProvisioningEvents\"\xa4\x02\n\rMachineStatus\x12\x41\n\tcondition\x18\x01 \x01(\x0b\x32#.metalstack.api.v2.MachineConditionR\tcondition\x12N\n\tled_state\x18\x02 \x01(\x0b\x32\x31.metalstack.api.v2.MachineChassisIdentifyLEDStateR\x08ledState\x12N\n\nliveliness\x18\x03 \x01(\x0e\x32$.metalstack.api.v2.MachineLivelinessB\x08\xbaH\x05\x82\x01\x02\x10\x01R\nliveliness\x12\x30\n\x14metal_hammer_version\x18\x04 \x01(\tR\x12metalHammerVersion\"\xa4\x01\n\x10MachineCondition\x12?\n\x05state\x18\x01 \x01(\x0e\x32\x1f.metalstack.api.v2.MachineStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12-\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x0b\x64\x65scription\x12 \n\x06issuer\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x06issuer\"\xb8\x07\n\x11MachineAllocation\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12+\n\x04meta\x18\x02 \x01(\x0b\x32\x17.metalstack.api.v2.MetaR\x04meta\x12\x1f\n\x04name\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04name\x12-\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x0b\x64\x65scription\x12\'\n\ncreated_by\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\tcreatedBy\x12\"\n\x07project\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12.\n\x05image\x18\x07 \x01(\x0b\x32\x18.metalstack.api.v2.ImageR\x05image\x12P\n\x11\x66ilesystem_layout\x18\x08 \x01(\x0b\x32#.metalstack.api.v2.FilesystemLayoutR\x10\x66ilesystemLayout\x12=\n\x08networks\x18\t \x03(\x0b\x32!.metalstack.api.v2.MachineNetworkR\x08networks\x12#\n\x08hostname\x18\n \x01(\tB\x07\xbaH\x04r\x02h\x01R\x08hostname\x12?\n\x0fssh_public_keys\x18\x0b \x03(\tB\x17\xbaH\x14\x92\x01\x11\x10\x32\"\x07r\x05\x10\x01\x18\x80@\xd0\xa4\xb3\xb1\x02\x01R\rsshPublicKeys\x12+\n\x08userdata\x18\x0c \x01(\tB\x0f\xbaH\x0cr\n\x18\x80\x80\x02\xf0\xb3\xae\xb1\x02\x01R\x08userdata\x12[\n\x0f\x61llocation_type\x18\r \x01(\x0e\x32(.metalstack.api.v2.MachineAllocationTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0e\x61llocationType\x12G\n\x0e\x66irewall_rules\x18\x0e \x01(\x0b\x32 .metalstack.api.v2.FirewallRulesR\rfirewallRules\x12G\n\x0b\x64ns_servers\x18\x0f \x03(\x0b\x32\x1c.metalstack.api.v2.DNSServerB\x08\xbaH\x05\x92\x01\x02\x10\x03R\ndnsServers\x12G\n\x0bntp_servers\x18\x10 \x03(\x0b\x32\x1c.metalstack.api.v2.NTPServerB\x08\xbaH\x05\x92\x01\x02\x10\nR\nntpServers\x12/\n\x03vpn\x18\x11 \x01(\x0b\x32\x1d.metalstack.api.v2.MachineVPNR\x03vpn\"a\n\x18MachineAllocationNetwork\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12\x1e\n\x03ips\x18\x02 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xc0\xa4\xb3\xb1\x02\x01R\x03ips\"\x90\x01\n\rFirewallRules\x12=\n\x06\x65gress\x18\x01 \x03(\x0b\x32%.metalstack.api.v2.FirewallEgressRuleR\x06\x65gress\x12@\n\x07ingress\x18\x02 \x03(\x0b\x32&.metalstack.api.v2.FirewallIngressRuleR\x07ingress\"\xd0\x01\n\x12\x46irewallEgressRule\x12\x43\n\x08protocol\x18\x01 \x01(\x0e\x32\x1d.metalstack.api.v2.IPProtocolB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x08protocol\x12$\n\x05ports\x18\x02 \x03(\rB\x0e\xbaH\x0b\x92\x01\x08\"\x06*\x04\x18\xfc\xff\x03R\x05ports\x12\x1c\n\x02to\x18\x03 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x02to\x12\x31\n\x07\x63omment\x18\x04 \x01(\tB\x17\xbaH\x14r\x0f\x18\x64\x32\x0b^[a-z_ -]*$\xd8\x01\x01R\x07\x63omment\"\xf3\x01\n\x13\x46irewallIngressRule\x12\x43\n\x08protocol\x18\x01 \x01(\x0e\x32\x1d.metalstack.api.v2.IPProtocolB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x08protocol\x12$\n\x05ports\x18\x02 \x03(\rB\x0e\xbaH\x0b\x92\x01\x08\"\x06*\x04\x18\xfc\xff\x03R\x05ports\x12\x1c\n\x02to\x18\x03 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x02to\x12 \n\x04\x66rom\x18\x04 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x04\x66rom\x12\x31\n\x07\x63omment\x18\x05 \x01(\tB\x17\xbaH\x14r\x0f\x18\x64\x32\x0b^[a-z_ -]*$\xd8\x01\x01R\x07\x63omment\"\x9c\x03\n\x0eMachineNetwork\x12\x18\n\x07network\x18\x01 \x01(\tR\x07network\x12(\n\x08prefixes\x18\x02 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\x03 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12\x1e\n\x03ips\x18\x04 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xc0\xa4\xb3\xb1\x02\x01R\x03ips\x12K\n\x0cnetwork_type\x18\x05 \x01(\x0e\x32\x1e.metalstack.api.v2.NetworkTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0bnetworkType\x12?\n\x08nat_type\x18\x06 \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x07natType\x12\x10\n\x03vrf\x18\x07 \x01(\x04R\x03vrf\x12\x10\n\x03\x61sn\x18\x08 \x01(\rR\x03\x61sn\x12\'\n\x07project\x18\t \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x00R\x07project\x88\x01\x01\x42\n\n\x08_project\"\xfb\x01\n\x0fMachineHardware\x12\x16\n\x06memory\x18\x01 \x01(\x04R\x06memory\x12;\n\x05\x64isks\x18\x02 \x03(\x0b\x32%.metalstack.api.v2.MachineBlockDeviceR\x05\x64isks\x12/\n\x04\x63pus\x18\x03 \x03(\x0b\x32\x1b.metalstack.api.v2.MetalCPUR\x04\x63pus\x12/\n\x04gpus\x18\x04 \x03(\x0b\x32\x1b.metalstack.api.v2.MetalGPUR\x04gpus\x12\x31\n\x04nics\x18\x05 \x03(\x0b\x32\x1d.metalstack.api.v2.MachineNicR\x04nics\"|\n\x08MetalCPU\x12 \n\x06vendor\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x06vendor\x12\x1e\n\x05model\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x05model\x12\x14\n\x05\x63ores\x18\x03 \x01(\rR\x05\x63ores\x12\x18\n\x07threads\x18\x04 \x01(\rR\x07threads\"L\n\x08MetalGPU\x12 \n\x06vendor\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x06vendor\x12\x1e\n\x05model\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x05model\"\xa7\x02\n\nMachineNic\x12\x1d\n\x03mac\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xb8\xb3\xae\xb1\x02\x01R\x03mac\x12\x1f\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04name\x12(\n\nidentifier\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\nidentifier\x12 \n\x06vendor\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x06vendor\x12\x1e\n\x05model\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x05model\x12\x14\n\x05speed\x18\x06 \x01(\x04R\x05speed\x12;\n\tneighbors\x18\x07 \x03(\x0b\x32\x1d.metalstack.api.v2.MachineNicR\tneighbors\x12\x1a\n\x08hostname\x18\x08 \x01(\tR\x08hostname\"I\n\x12MachineBlockDevice\x12\x1f\n\x04name\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04name\x12\x12\n\x04size\x18\x02 \x01(\x04R\x04size\"o\n\x1eMachineChassisIdentifyLEDState\x12\x1e\n\x05value\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x05value\x12-\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x0b\x64\x65scription\"\xcb\x03\n\x10MachineBMCReport\x12/\n\x03\x62mc\x18\x01 \x01(\x0b\x32\x1d.metalstack.api.v2.MachineBMCR\x03\x62mc\x12\x32\n\x04\x62ios\x18\x02 \x01(\x0b\x32\x1e.metalstack.api.v2.MachineBiosR\x04\x62ios\x12/\n\x03\x66ru\x18\x03 \x01(\x0b\x32\x1d.metalstack.api.v2.MachineFRUR\x03\x66ru\x12H\n\x0cpower_metric\x18\x04 \x01(\x0b\x32%.metalstack.api.v2.MachinePowerMetricR\x0bpowerMetric\x12L\n\x0epower_supplies\x18\x05 \x03(\x0b\x32%.metalstack.api.v2.MachinePowerSupplyR\rpowerSupplies\x12N\n\tled_state\x18\x06 \x01(\x0b\x32\x31.metalstack.api.v2.MachineChassisIdentifyLEDStateR\x08ledState\x12\x39\n\nupdated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\"z\n\x0bMachineBios\x12%\n\x07version\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x07version\x12#\n\x06vendor\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x06vendor\x12\x1f\n\x04\x64\x61te\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x04\x64\x61te\"\x99\x02\n\nMachineBMC\x12\"\n\x07\x61\x64\x64ress\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x80\x02\x01R\x07\x61\x64\x64ress\x12\x1d\n\x03mac\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xb8\xb3\xae\xb1\x02\x01R\x03mac\x12\x1f\n\x04user\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x04user\x12\'\n\x08password\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x08password\x12)\n\tinterface\x18\x05 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\tinterface\x12%\n\x07version\x18\x06 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x07version\x12,\n\x0bpower_state\x18\x07 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\npowerState\"\xa6\x05\n\nMachineFRU\x12@\n\x13\x63hassis_part_number\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x00R\x11\x63hassisPartNumber\x88\x01\x01\x12@\n\x13\x63hassis_part_serial\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x01R\x11\x63hassisPartSerial\x88\x01\x01\x12-\n\tboard_mfg\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x02R\x08\x62oardMfg\x88\x01\x01\x12:\n\x10\x62oard_mfg_serial\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x03R\x0e\x62oardMfgSerial\x88\x01\x01\x12<\n\x11\x62oard_part_number\x18\x05 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x04R\x0f\x62oardPartNumber\x88\x01\x01\x12\x43\n\x14product_manufacturer\x18\x06 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x05R\x13productManufacturer\x88\x01\x01\x12@\n\x13product_part_number\x18\x07 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x06R\x11productPartNumber\x88\x01\x01\x12\x37\n\x0eproduct_serial\x18\x08 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x07R\rproductSerial\x88\x01\x01\x42\x16\n\x14_chassis_part_numberB\x16\n\x14_chassis_part_serialB\x0c\n\n_board_mfgB\x13\n\x11_board_mfg_serialB\x14\n\x12_board_part_numberB\x17\n\x15_product_manufacturerB\x16\n\x14_product_part_numberB\x11\n\x0f_product_serial\"\xce\x01\n\x12MachinePowerMetric\x12\x34\n\x16\x61verage_consumed_watts\x18\x01 \x01(\x02R\x14\x61verageConsumedWatts\x12&\n\x0finterval_in_min\x18\x02 \x01(\x02R\rintervalInMin\x12,\n\x12max_consumed_watts\x18\x03 \x01(\x02R\x10maxConsumedWatts\x12,\n\x12min_consumed_watts\x18\x04 \x01(\x02R\x10minConsumedWatts\"B\n\x12MachinePowerSupply\x12\x16\n\x06health\x18\x01 \x01(\tR\x06health\x12\x14\n\x05state\x18\x02 \x01(\tR\x05state\"\xd3\x02\n\x1fMachineRecentProvisioningEvents\x12\x43\n\x06\x65vents\x18\x01 \x03(\x0b\x32+.metalstack.api.v2.MachineProvisioningEventR\x06\x65vents\x12\x42\n\x0flast_event_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\rlastEventTime\x12U\n\x10last_error_event\x18\x03 \x01(\x0b\x32+.metalstack.api.v2.MachineProvisioningEventR\x0elastErrorEvent\x12P\n\x05state\x18\x04 \x01(\x0e\x32\x30.metalstack.api.v2.MachineProvisioningEventStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\"\xab\x01\n\x18MachineProvisioningEvent\x12.\n\x04time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x04time\x12\x45\n\x05\x65vent\x18\x02 \x01(\x0e\x32/.metalstack.api.v2.MachineProvisioningEventTypeR\x05\x65vent\x12\x18\n\x07message\x18\x03 \x01(\tR\x07message\"\x99\x01\n\nMachineVPN\x12\x32\n\x15\x63ontrol_plane_address\x18\x01 \x01(\tR\x13\x63ontrolPlaneAddress\x12\x19\n\x08\x61uth_key\x18\x02 \x01(\tR\x07\x61uthKey\x12\x1c\n\tconnected\x18\x03 \x01(\x08R\tconnected\x12\x1e\n\x03ips\x18\x04 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xc0\xa4\xb3\xb1\x02\x01R\x03ips\"\xc7\x08\n\x0cMachineQuery\x12!\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x00R\x04uuid\x88\x01\x01\x12$\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x04name\x88\x01\x01\x12.\n\tpartition\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x02R\tpartition\x88\x01\x01\x12$\n\x04size\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x03R\x04size\x88\x01\x01\x12#\n\x04rack\x18\x05 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01H\x04R\x04rack\x88\x01\x01\x12\x36\n\x06labels\x18\x06 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x05R\x06labels\x88\x01\x01\x12N\n\nallocation\x18\x07 \x01(\x0b\x32).metalstack.api.v2.MachineAllocationQueryH\x06R\nallocation\x88\x01\x01\x12\x45\n\x07network\x18\x08 \x01(\x0b\x32&.metalstack.api.v2.MachineNetworkQueryH\x07R\x07network\x88\x01\x01\x12\x39\n\x03nic\x18\t \x01(\x0b\x32\".metalstack.api.v2.MachineNicQueryH\x08R\x03nic\x88\x01\x01\x12<\n\x04\x64isk\x18\n \x01(\x0b\x32#.metalstack.api.v2.MachineDiskQueryH\tR\x04\x64isk\x88\x01\x01\x12\x39\n\x03\x62mc\x18\x0b \x01(\x0b\x32\".metalstack.api.v2.MachineBMCQueryH\nR\x03\x62mc\x88\x01\x01\x12\x39\n\x03\x66ru\x18\x0c \x01(\x0b\x32\".metalstack.api.v2.MachineFRUQueryH\x0bR\x03\x66ru\x88\x01\x01\x12H\n\x08hardware\x18\r \x01(\x0b\x32\'.metalstack.api.v2.MachineHardwareQueryH\x0cR\x08hardware\x88\x01\x01\x12:\n\x05state\x18\x0e \x01(\x0e\x32\x1f.metalstack.api.v2.MachineStateH\rR\x05state\x88\x01\x01\x12\x1d\n\x07waiting\x18\x0f \x01(\x08H\x0eR\x07waiting\x88\x01\x01\x12\'\n\x0cpreallocated\x18\x10 \x01(\x08H\x0fR\x0cpreallocated\x88\x01\x01\x12(\n\rnot_allocated\x18\x11 \x01(\x08H\x10R\x0cnotAllocated\x88\x01\x01\x42\x07\n\x05_uuidB\x07\n\x05_nameB\x0c\n\n_partitionB\x07\n\x05_sizeB\x07\n\x05_rackB\t\n\x07_labelsB\r\n\x0b_allocationB\n\n\x08_networkB\x06\n\x04_nicB\x07\n\x05_diskB\x06\n\x04_bmcB\x06\n\x04_fruB\x0b\n\t_hardwareB\x08\n\x06_stateB\n\n\x08_waitingB\x0f\n\r_preallocatedB\x10\n\x0e_not_allocated\"\xdd\x04\n\x16MachineAllocationQuery\x12!\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x00R\x04uuid\x88\x01\x01\x12$\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x04name\x88\x01\x01\x12\'\n\x07project\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x02R\x07project\x88\x01\x01\x12&\n\x05image\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x03R\x05image\x88\x01\x01\x12=\n\x11\x66ilesystem_layout\x18\x05 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x04R\x10\x66ilesystemLayout\x88\x01\x01\x12(\n\x08hostname\x18\x06 \x01(\tB\x07\xbaH\x04r\x02h\x01H\x05R\x08hostname\x88\x01\x01\x12`\n\x0f\x61llocation_type\x18\x07 \x01(\x0e\x32(.metalstack.api.v2.MachineAllocationTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x06R\x0e\x61llocationType\x88\x01\x01\x12\x36\n\x06labels\x18\x08 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x07R\x06labels\x88\x01\x01\x12\x34\n\x03vpn\x18\t \x01(\x0b\x32\x1d.metalstack.api.v2.MachineVPNH\x08R\x03vpn\x88\x01\x01\x42\x07\n\x05_uuidB\x07\n\x05_nameB\n\n\x08_projectB\x08\n\x06_imageB\x14\n\x12_filesystem_layoutB\x0b\n\t_hostnameB\x12\n\x10_allocation_typeB\t\n\x07_labelsB\x06\n\x04_vpn\"\xe4\x01\n\x13MachineNetworkQuery\x12\x1a\n\x08networks\x18\x01 \x03(\tR\x08networks\x12(\n\x08prefixes\x18\x02 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\x03 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12\x1e\n\x03ips\x18\x04 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xc0\xa4\xb3\xb1\x02\x01R\x03ips\x12\x12\n\x04vrfs\x18\x05 \x03(\x04R\x04vrfs\x12\x12\n\x04\x61sns\x18\x06 \x03(\rR\x04\x61sns\"\xd9\x01\n\x0fMachineNicQuery\x12(\n\x04macs\x18\x01 \x03(\tB\x14\xbaH\x11\x92\x01\x0e\x10\x64\x18\x01\"\x08r\x06\xb8\xb3\xae\xb1\x02\x01R\x04macs\x12\'\n\x05names\x18\x02 \x03(\tB\x11\xbaH\x0e\x92\x01\x0b\x10\x64\x18\x01\"\x05r\x03\x18\x80\x01R\x05names\x12\x39\n\rneighbor_macs\x18\x03 \x03(\tB\x14\xbaH\x11\x92\x01\x0e\x10\x64\x18\x01\"\x08r\x06\xb8\xb3\xae\xb1\x02\x01R\x0cneighborMacs\x12\x38\n\x0eneighbor_names\x18\x04 \x03(\tB\x11\xbaH\x0e\x92\x01\x0b\x10\x64\x18\x01\"\x05r\x03\x18\x80\x01R\rneighborNames\"Y\n\x10MachineDiskQuery\x12%\n\x05names\x18\x01 \x03(\tB\x0f\xbaH\x0c\x92\x01\t\x10\x64\"\x05r\x03\x18\x80\x01R\x05names\x12\x1e\n\x05sizes\x18\x02 \x03(\x04\x42\x08\xbaH\x05\x92\x01\x02\x10\x64R\x05sizes\"\xd8\x01\n\x0fMachineBMCQuery\x12&\n\x07\x61\x64\x64ress\x18\x01 \x01(\tB\x07\xbaH\x04r\x02p\x01H\x00R\x07\x61\x64\x64ress\x88\x01\x01\x12\"\n\x03mac\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xb8\xb3\xae\xb1\x02\x01H\x01R\x03mac\x88\x01\x01\x12!\n\x04user\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x02R\x04user\x88\x01\x01\x12+\n\tinterface\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x03R\tinterface\x88\x01\x01\x42\n\n\x08_addressB\x06\n\x04_macB\x07\n\x05_userB\x0c\n\n_interface\"\x88\x05\n\x0fMachineFRUQuery\x12=\n\x13\x63hassis_part_number\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x00R\x11\x63hassisPartNumber\x88\x01\x01\x12=\n\x13\x63hassis_part_serial\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x01R\x11\x63hassisPartSerial\x88\x01\x01\x12*\n\tboard_mfg\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x02R\x08\x62oardMfg\x88\x01\x01\x12\x30\n\x0c\x62oard_serial\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x03R\x0b\x62oardSerial\x88\x01\x01\x12\x39\n\x11\x62oard_part_number\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x04R\x0f\x62oardPartNumber\x88\x01\x01\x12@\n\x14product_manufacturer\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x05R\x13productManufacturer\x88\x01\x01\x12=\n\x13product_part_number\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x06R\x11productPartNumber\x88\x01\x01\x12\x34\n\x0eproduct_serial\x18\x08 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x07R\rproductSerial\x88\x01\x01\x42\x16\n\x14_chassis_part_numberB\x16\n\x14_chassis_part_serialB\x0c\n\n_board_mfgB\x0f\n\r_board_serialB\x14\n\x12_board_part_numberB\x17\n\x15_product_manufacturerB\x16\n\x14_product_part_numberB\x11\n\x0f_product_serial\"n\n\x14MachineHardwareQuery\x12\x1b\n\x06memory\x18\x01 \x01(\x04H\x00R\x06memory\x88\x01\x01\x12 \n\tcpu_cores\x18\x02 \x01(\rH\x01R\x08\x63puCores\x88\x01\x01\x42\t\n\x07_memoryB\x0c\n\n_cpu_cores*e\n\nIPProtocol\x12\x1b\n\x17IP_PROTOCOL_UNSPECIFIED\x10\x00\x12\x1c\n\x0fIP_PROTOCOL_TCP\x10\x01\x1a\x07\x82\xb2\x19\x03tcp\x12\x1c\n\x0fIP_PROTOCOL_UDP\x10\x02\x1a\x07\x82\xb2\x19\x03udp*\xad\x01\n\x0cMachineState\x12#\n\x19MACHINE_STATE_UNSPECIFIED\x10\x00\x1a\x04\x82\xb2\x19\x00\x12&\n\x15MACHINE_STATE_TAINTED\x10\x01\x1a\x0b\x82\xb2\x19\x07tainted\x12$\n\x14MACHINE_STATE_LOCKED\x10\x02\x1a\n\x82\xb2\x19\x06locked\x12*\n\x17MACHINE_STATE_AVAILABLE\x10\x03\x1a\r\x82\xb2\x19\tavailable*\xdf\x01\n\x1dMachineProvisioningEventState\x12\x36\n,MACHINE_PROVISIONING_EVENT_STATE_UNSPECIFIED\x10\x00\x1a\x04\x82\xb2\x19\x00\x12=\n*MACHINE_PROVISIONING_EVENT_STATE_CRASHLOOP\x10\x01\x1a\r\x82\xb2\x19\tcrashloop\x12G\n/MACHINE_PROVISIONING_EVENT_STATE_FAILED_RECLAIM\x10\x02\x1a\x12\x82\xb2\x19\x0e\x66\x61iled-reclaim*\x9f\x06\n\x1cMachineProvisioningEventType\x12/\n+MACHINE_PROVISIONING_EVENT_TYPE_UNSPECIFIED\x10\x00\x12\x34\n%MACHINE_PROVISIONING_EVENT_TYPE_ALIVE\x10\x01\x1a\t\x82\xb2\x19\x05\x41live\x12\x38\n\'MACHINE_PROVISIONING_EVENT_TYPE_CRASHED\x10\x02\x1a\x0b\x82\xb2\x19\x07\x43rashed\x12@\n+MACHINE_PROVISIONING_EVENT_TYPE_PXE_BOOTING\x10\x03\x1a\x0f\x82\xb2\x19\x0bPXE Booting\x12\x46\n.MACHINE_PROVISIONING_EVENT_TYPE_PLANNED_REBOOT\x10\x04\x1a\x12\x82\xb2\x19\x0ePlanned Reboot\x12<\n)MACHINE_PROVISIONING_EVENT_TYPE_PREPARING\x10\x05\x1a\r\x82\xb2\x19\tPreparing\x12@\n+MACHINE_PROVISIONING_EVENT_TYPE_REGISTERING\x10\x06\x1a\x0f\x82\xb2\x19\x0bRegistering\x12\x38\n\'MACHINE_PROVISIONING_EVENT_TYPE_WAITING\x10\x07\x1a\x0b\x82\xb2\x19\x07Waiting\x12>\n*MACHINE_PROVISIONING_EVENT_TYPE_INSTALLING\x10\x08\x1a\x0e\x82\xb2\x19\nInstalling\x12N\n2MACHINE_PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL\x10\t\x1a\x16\x82\xb2\x19\x12\x42ooting New Kernel\x12@\n+MACHINE_PROVISIONING_EVENT_TYPE_PHONED_HOME\x10\n\x1a\x0f\x82\xb2\x19\x0bPhoned Home\x12H\n/MACHINE_PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM\x10\x0b\x1a\x13\x82\xb2\x19\x0fMachine Reclaim*\xba\x01\n\x11MachineLiveliness\x12(\n\x1eMACHINE_LIVELINESS_UNSPECIFIED\x10\x00\x1a\x04\x82\xb2\x19\x00\x12\'\n\x18MACHINE_LIVELINESS_ALIVE\x10\x01\x1a\t\x82\xb2\x19\x05\x61live\x12%\n\x17MACHINE_LIVELINESS_DEAD\x10\x02\x1a\x08\x82\xb2\x19\x04\x64\x65\x61\x64\x12+\n\x1aMACHINE_LIVELINESS_UNKNOWN\x10\x03\x1a\x0b\x82\xb2\x19\x07unknown*\xac\x01\n\x15MachineAllocationType\x12-\n#MACHINE_ALLOCATION_TYPE_UNSPECIFIED\x10\x00\x1a\x04\x82\xb2\x19\x00\x12\x30\n\x1fMACHINE_ALLOCATION_TYPE_MACHINE\x10\x01\x1a\x0b\x82\xb2\x19\x07machine\x12\x32\n MACHINE_ALLOCATION_TYPE_FIREWALL\x10\x02\x1a\x0c\x82\xb2\x19\x08\x66irewall*\xfe\x04\n\x11MachineBMCCommand\x12#\n\x1fMACHINE_BMC_COMMAND_UNSPECIFIED\x10\x00\x12\"\n\x16MACHINE_BMC_COMMAND_ON\x10\x01\x1a\x06\x82\xb2\x19\x02on\x12$\n\x17MACHINE_BMC_COMMAND_OFF\x10\x02\x1a\x07\x82\xb2\x19\x03off\x12(\n\x19MACHINE_BMC_COMMAND_RESET\x10\x03\x1a\t\x82\xb2\x19\x05reset\x12(\n\x19MACHINE_BMC_COMMAND_CYCLE\x10\x04\x1a\t\x82\xb2\x19\x05\x63ycle\x12\x36\n MACHINE_BMC_COMMAND_BOOT_TO_BIOS\x10\x05\x1a\x10\x82\xb2\x19\x0c\x62oot-to-bios\x12:\n\"MACHINE_BMC_COMMAND_BOOT_FROM_DISK\x10\x06\x1a\x12\x82\xb2\x19\x0e\x62oot-from-disk\x12\x38\n!MACHINE_BMC_COMMAND_BOOT_FROM_PXE\x10\x07\x1a\x11\x82\xb2\x19\rboot-from-pxe\x12<\n#MACHINE_BMC_COMMAND_IDENTIFY_LED_ON\x10\x08\x1a\x13\x82\xb2\x19\x0fidentify-led-on\x12>\n$MACHINE_BMC_COMMAND_IDENTIFY_LED_OFF\x10\t\x1a\x14\x82\xb2\x19\x10identify-led-off\x12<\n#MACHINE_BMC_COMMAND_MACHINE_DELETED\x10\n\x1a\x13\x82\xb2\x19\x0fmachine-deleted\x12<\n#MACHINE_BMC_COMMAND_MACHINE_CREATED\x10\x0b\x1a\x13\x82\xb2\x19\x0fmachine-created2\xd1\x06\n\x0eMachineService\x12m\n\x03Get\x12+.metalstack.api.v2.MachineServiceGetRequest\x1a,.metalstack.api.v2.MachineServiceGetResponse\"\x0b\xca\xf3\x18\x03\x01\x02\x03\xe0\xf3\x18\x02\x12u\n\x06\x43reate\x12..metalstack.api.v2.MachineServiceCreateRequest\x1a/.metalstack.api.v2.MachineServiceCreateResponse\"\n\xca\xf3\x18\x02\x01\x02\xe0\xf3\x18\x01\x12u\n\x06Update\x12..metalstack.api.v2.MachineServiceUpdateRequest\x1a/.metalstack.api.v2.MachineServiceUpdateResponse\"\n\xca\xf3\x18\x02\x01\x02\xe0\xf3\x18\x01\x12p\n\x04List\x12,.metalstack.api.v2.MachineServiceListRequest\x1a-.metalstack.api.v2.MachineServiceListResponse\"\x0b\xca\xf3\x18\x03\x01\x02\x03\xe0\xf3\x18\x02\x12u\n\x06\x44\x65lete\x12..metalstack.api.v2.MachineServiceDeleteRequest\x1a/.metalstack.api.v2.MachineServiceDeleteResponse\"\n\xca\xf3\x18\x02\x01\x02\xe0\xf3\x18\x01\x12\x81\x01\n\nBMCCommand\x12\x32.metalstack.api.v2.MachineServiceBMCCommandRequest\x1a\x33.metalstack.api.v2.MachineServiceBMCCommandResponse\"\n\xca\xf3\x18\x02\x01\x02\xe0\xf3\x18\x01\x12u\n\x06GetBMC\x12..metalstack.api.v2.MachineServiceGetBMCRequest\x1a/.metalstack.api.v2.MachineServiceGetBMCResponse\"\n\xca\xf3\x18\x02\x01\x02\xe0\xf3\x18\x01\x42\xc2\x01\n\x15\x63om.metalstack.api.v2B\x0cMachineProtoP\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\x1fmetalstack/api/v2/machine.proto\x12\x11metalstack.api.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1emetalstack/api/v2/common.proto\x1a\"metalstack/api/v2/filesystem.proto\x1a\x1dmetalstack/api/v2/image.proto\x1a\x1fmetalstack/api/v2/network.proto\x1a!metalstack/api/v2/partition.proto\x1a(metalstack/api/v2/predefined_rules.proto\x1a\x1cmetalstack/api/v2/size.proto\"\\\n\x18MachineServiceGetRequest\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12\"\n\x07project\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\"Q\n\x19MachineServiceGetResponse\x12\x34\n\x07machine\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.MachineR\x07machine\"\xda\x08\n\x1bMachineServiceCreateRequest\x12\"\n\x07project\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12!\n\x04uuid\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x00R\x04uuid\x88\x01\x01\x12\x1f\n\x04name\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04name\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\x08hostname\x18\x05 \x01(\tB\x07\xbaH\x04r\x02h\x01H\x02R\x08hostname\x88\x01\x01\x12.\n\tpartition\x18\x06 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x03R\tpartition\x88\x01\x01\x12$\n\x04size\x18\x07 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x04R\x04size\x88\x01\x01\x12!\n\x05image\x18\x08 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x05image\x12=\n\x11\x66ilesystem_layout\x18\t \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x05R\x10\x66ilesystemLayout\x88\x01\x01\x12?\n\x0fssh_public_keys\x18\n \x03(\tB\x17\xbaH\x14\x92\x01\x11\x10\x32\"\x07r\x05\x10\x01\x18\x80@\xd0\xa4\xb3\xb1\x02\x01R\rsshPublicKeys\x12\x30\n\x08userdata\x18\x0b \x01(\tB\x0f\xbaH\x0cr\n\x18\x80\x80\x02\xf0\xb3\xae\xb1\x02\x01H\x06R\x08userdata\x88\x01\x01\x12\x31\n\x06labels\x18\x0c \x01(\x0b\x32\x19.metalstack.api.v2.LabelsR\x06labels\x12Q\n\x08networks\x18\r \x03(\x0b\x32+.metalstack.api.v2.MachineAllocationNetworkB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x08networks\x12/\n\x0eplacement_tags\x18\x0e \x03(\tB\x08\xbaH\x05\x92\x01\x02\x10@R\rplacementTags\x12G\n\x0b\x64ns_servers\x18\x0f \x03(\x0b\x32\x1c.metalstack.api.v2.DNSServerB\x08\xbaH\x05\x92\x01\x02\x10\x03R\ndnsServers\x12G\n\x0bntp_servers\x18\x10 \x03(\x0b\x32\x1c.metalstack.api.v2.NTPServerB\x08\xbaH\x05\x92\x01\x02\x10\nR\nntpServers\x12[\n\x0f\x61llocation_type\x18\x11 \x01(\x0e\x32(.metalstack.api.v2.MachineAllocationTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0e\x61llocationType\x12\x44\n\rfirewall_spec\x18\x12 \x01(\x0b\x32\x1f.metalstack.api.v2.FirewallSpecR\x0c\x66irewallSpecB\x07\n\x05_uuidB\x0e\n\x0c_descriptionB\x0b\n\t_hostnameB\x0c\n\n_partitionB\x07\n\x05_sizeB\x14\n\x12_filesystem_layoutB\x0b\n\t_userdata\"W\n\x0c\x46irewallSpec\x12G\n\x0e\x66irewall_rules\x18\x01 \x01(\x0b\x32 .metalstack.api.v2.FirewallRulesR\rfirewallRules\"T\n\x1cMachineServiceCreateResponse\x12\x34\n\x07machine\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.MachineR\x07machine\"\xf5\x02\n\x1bMachineServiceUpdateRequest\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12\x46\n\x0bupdate_meta\x18\x02 \x01(\x0b\x32\x1d.metalstack.api.v2.UpdateMetaB\x06\xbaH\x03\xc8\x01\x01R\nupdateMeta\x12\"\n\x07project\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12\x32\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x00R\x0b\x64\x65scription\x88\x01\x01\x12<\n\x06labels\x18\x05 \x01(\x0b\x32\x1f.metalstack.api.v2.UpdateLabelsH\x01R\x06labels\x88\x01\x01\x12?\n\x0fssh_public_keys\x18\x06 \x03(\tB\x17\xbaH\x14\x92\x01\x11\x10\x32\"\x07r\x05\x10\x01\x18\x80@\xd0\xa4\xb3\xb1\x02\x01R\rsshPublicKeysB\x0e\n\x0c_descriptionB\t\n\x07_labels\"T\n\x1cMachineServiceUpdateResponse\x12\x34\n\x07machine\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.MachineR\x07machine\"v\n\x19MachineServiceListRequest\x12\"\n\x07project\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12\x35\n\x05query\x18\x02 \x01(\x0b\x32\x1f.metalstack.api.v2.MachineQueryR\x05query\"T\n\x1aMachineServiceListResponse\x12\x36\n\x08machines\x18\x01 \x03(\x0b\x32\x1a.metalstack.api.v2.MachineR\x08machines\"_\n\x1bMachineServiceDeleteRequest\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12\"\n\x07project\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\"T\n\x1cMachineServiceDeleteResponse\x12\x34\n\x07machine\x18\x01 \x01(\x0b\x32\x1a.metalstack.api.v2.MachineR\x07machine\"\xad\x01\n\x1fMachineServiceBMCCommandRequest\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12\"\n\x07project\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12H\n\x07\x63ommand\x18\x03 \x01(\x0e\x32$.metalstack.api.v2.MachineBMCCommandB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x07\x63ommand\"\"\n MachineServiceBMCCommandResponse\"_\n\x1bMachineServiceGetBMCRequest\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12\"\n\x07project\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\"s\n\x1cMachineServiceGetBMCResponse\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12\x35\n\x03\x62mc\x18\x02 \x01(\x0b\x32#.metalstack.api.v2.MachineBMCReportR\x03\x62mc\"\x8d\x04\n\x07Machine\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12+\n\x04meta\x18\x02 \x01(\x0b\x32\x17.metalstack.api.v2.MetaR\x04meta\x12:\n\tpartition\x18\x03 \x01(\x0b\x32\x1c.metalstack.api.v2.PartitionR\tpartition\x12\x1c\n\x04rack\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x04rack\x12+\n\x04size\x18\x05 \x01(\x0b\x32\x17.metalstack.api.v2.SizeR\x04size\x12>\n\x08hardware\x18\x06 \x01(\x0b\x32\".metalstack.api.v2.MachineHardwareR\x08hardware\x12\x44\n\nallocation\x18\x07 \x01(\x0b\x32$.metalstack.api.v2.MachineAllocationR\nallocation\x12\x38\n\x06status\x18\x08 \x01(\x0b\x32 .metalstack.api.v2.MachineStatusR\x06status\x12p\n\x1arecent_provisioning_events\x18\t \x01(\x0b\x32\x32.metalstack.api.v2.MachineRecentProvisioningEventsR\x18recentProvisioningEvents\"\xa4\x02\n\rMachineStatus\x12\x41\n\tcondition\x18\x01 \x01(\x0b\x32#.metalstack.api.v2.MachineConditionR\tcondition\x12N\n\tled_state\x18\x02 \x01(\x0b\x32\x31.metalstack.api.v2.MachineChassisIdentifyLEDStateR\x08ledState\x12N\n\nliveliness\x18\x03 \x01(\x0e\x32$.metalstack.api.v2.MachineLivelinessB\x08\xbaH\x05\x82\x01\x02\x10\x01R\nliveliness\x12\x30\n\x14metal_hammer_version\x18\x04 \x01(\tR\x12metalHammerVersion\"\xa4\x01\n\x10MachineCondition\x12?\n\x05state\x18\x01 \x01(\x0e\x32\x1f.metalstack.api.v2.MachineStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12-\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x0b\x64\x65scription\x12 \n\x06issuer\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x06issuer\"\xb8\x07\n\x11MachineAllocation\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12+\n\x04meta\x18\x02 \x01(\x0b\x32\x17.metalstack.api.v2.MetaR\x04meta\x12\x1f\n\x04name\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04name\x12-\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x0b\x64\x65scription\x12\'\n\ncreated_by\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\tcreatedBy\x12\"\n\x07project\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x07project\x12.\n\x05image\x18\x07 \x01(\x0b\x32\x18.metalstack.api.v2.ImageR\x05image\x12P\n\x11\x66ilesystem_layout\x18\x08 \x01(\x0b\x32#.metalstack.api.v2.FilesystemLayoutR\x10\x66ilesystemLayout\x12=\n\x08networks\x18\t \x03(\x0b\x32!.metalstack.api.v2.MachineNetworkR\x08networks\x12#\n\x08hostname\x18\n \x01(\tB\x07\xbaH\x04r\x02h\x01R\x08hostname\x12?\n\x0fssh_public_keys\x18\x0b \x03(\tB\x17\xbaH\x14\x92\x01\x11\x10\x32\"\x07r\x05\x10\x01\x18\x80@\xd0\xa4\xb3\xb1\x02\x01R\rsshPublicKeys\x12+\n\x08userdata\x18\x0c \x01(\tB\x0f\xbaH\x0cr\n\x18\x80\x80\x02\xf0\xb3\xae\xb1\x02\x01R\x08userdata\x12[\n\x0f\x61llocation_type\x18\r \x01(\x0e\x32(.metalstack.api.v2.MachineAllocationTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0e\x61llocationType\x12G\n\x0e\x66irewall_rules\x18\x0e \x01(\x0b\x32 .metalstack.api.v2.FirewallRulesR\rfirewallRules\x12G\n\x0b\x64ns_servers\x18\x0f \x03(\x0b\x32\x1c.metalstack.api.v2.DNSServerB\x08\xbaH\x05\x92\x01\x02\x10\x03R\ndnsServers\x12G\n\x0bntp_servers\x18\x10 \x03(\x0b\x32\x1c.metalstack.api.v2.NTPServerB\x08\xbaH\x05\x92\x01\x02\x10\nR\nntpServers\x12/\n\x03vpn\x18\x11 \x01(\x0b\x32\x1d.metalstack.api.v2.MachineVPNR\x03vpn\"a\n\x18MachineAllocationNetwork\x12%\n\x07network\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07network\x12\x1e\n\x03ips\x18\x02 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xc0\xa4\xb3\xb1\x02\x01R\x03ips\"\x90\x01\n\rFirewallRules\x12=\n\x06\x65gress\x18\x01 \x03(\x0b\x32%.metalstack.api.v2.FirewallEgressRuleR\x06\x65gress\x12@\n\x07ingress\x18\x02 \x03(\x0b\x32&.metalstack.api.v2.FirewallIngressRuleR\x07ingress\"\xd0\x01\n\x12\x46irewallEgressRule\x12\x43\n\x08protocol\x18\x01 \x01(\x0e\x32\x1d.metalstack.api.v2.IPProtocolB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x08protocol\x12$\n\x05ports\x18\x02 \x03(\rB\x0e\xbaH\x0b\x92\x01\x08\"\x06*\x04\x18\xfc\xff\x03R\x05ports\x12\x1c\n\x02to\x18\x03 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x02to\x12\x31\n\x07\x63omment\x18\x04 \x01(\tB\x17\xbaH\x14r\x0f\x18\x64\x32\x0b^[a-z_ -]*$\xd8\x01\x01R\x07\x63omment\"\xf3\x01\n\x13\x46irewallIngressRule\x12\x43\n\x08protocol\x18\x01 \x01(\x0e\x32\x1d.metalstack.api.v2.IPProtocolB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x08protocol\x12$\n\x05ports\x18\x02 \x03(\rB\x0e\xbaH\x0b\x92\x01\x08\"\x06*\x04\x18\xfc\xff\x03R\x05ports\x12\x1c\n\x02to\x18\x03 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x02to\x12 \n\x04\x66rom\x18\x04 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x04\x66rom\x12\x31\n\x07\x63omment\x18\x05 \x01(\tB\x17\xbaH\x14r\x0f\x18\x64\x32\x0b^[a-z_ -]*$\xd8\x01\x01R\x07\x63omment\"\x9c\x03\n\x0eMachineNetwork\x12\x18\n\x07network\x18\x01 \x01(\tR\x07network\x12(\n\x08prefixes\x18\x02 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\x03 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12\x1e\n\x03ips\x18\x04 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xc0\xa4\xb3\xb1\x02\x01R\x03ips\x12K\n\x0cnetwork_type\x18\x05 \x01(\x0e\x32\x1e.metalstack.api.v2.NetworkTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0bnetworkType\x12?\n\x08nat_type\x18\x06 \x01(\x0e\x32\x1a.metalstack.api.v2.NATTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x07natType\x12\x10\n\x03vrf\x18\x07 \x01(\x04R\x03vrf\x12\x10\n\x03\x61sn\x18\x08 \x01(\rR\x03\x61sn\x12\'\n\x07project\x18\t \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x00R\x07project\x88\x01\x01\x42\n\n\x08_project\"\xfb\x01\n\x0fMachineHardware\x12\x16\n\x06memory\x18\x01 \x01(\x04R\x06memory\x12;\n\x05\x64isks\x18\x02 \x03(\x0b\x32%.metalstack.api.v2.MachineBlockDeviceR\x05\x64isks\x12/\n\x04\x63pus\x18\x03 \x03(\x0b\x32\x1b.metalstack.api.v2.MetalCPUR\x04\x63pus\x12/\n\x04gpus\x18\x04 \x03(\x0b\x32\x1b.metalstack.api.v2.MetalGPUR\x04gpus\x12\x31\n\x04nics\x18\x05 \x03(\x0b\x32\x1d.metalstack.api.v2.MachineNicR\x04nics\"|\n\x08MetalCPU\x12 \n\x06vendor\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x06vendor\x12\x1e\n\x05model\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x05model\x12\x14\n\x05\x63ores\x18\x03 \x01(\rR\x05\x63ores\x12\x18\n\x07threads\x18\x04 \x01(\rR\x07threads\"L\n\x08MetalGPU\x12 \n\x06vendor\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x06vendor\x12\x1e\n\x05model\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x05model\"\xa7\x02\n\nMachineNic\x12\x1d\n\x03mac\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xb8\xb3\xae\xb1\x02\x01R\x03mac\x12\x1f\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04name\x12(\n\nidentifier\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\nidentifier\x12 \n\x06vendor\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x06vendor\x12\x1e\n\x05model\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x05model\x12\x14\n\x05speed\x18\x06 \x01(\x04R\x05speed\x12;\n\tneighbors\x18\x07 \x03(\x0b\x32\x1d.metalstack.api.v2.MachineNicR\tneighbors\x12\x1a\n\x08hostname\x18\x08 \x01(\tR\x08hostname\"I\n\x12MachineBlockDevice\x12\x1f\n\x04name\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04name\x12\x12\n\x04size\x18\x02 \x01(\x04R\x04size\"o\n\x1eMachineChassisIdentifyLEDState\x12\x1e\n\x05value\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x05value\x12-\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x0b\x64\x65scription\"\xcb\x03\n\x10MachineBMCReport\x12/\n\x03\x62mc\x18\x01 \x01(\x0b\x32\x1d.metalstack.api.v2.MachineBMCR\x03\x62mc\x12\x32\n\x04\x62ios\x18\x02 \x01(\x0b\x32\x1e.metalstack.api.v2.MachineBiosR\x04\x62ios\x12/\n\x03\x66ru\x18\x03 \x01(\x0b\x32\x1d.metalstack.api.v2.MachineFRUR\x03\x66ru\x12H\n\x0cpower_metric\x18\x04 \x01(\x0b\x32%.metalstack.api.v2.MachinePowerMetricR\x0bpowerMetric\x12L\n\x0epower_supplies\x18\x05 \x03(\x0b\x32%.metalstack.api.v2.MachinePowerSupplyR\rpowerSupplies\x12N\n\tled_state\x18\x06 \x01(\x0b\x32\x31.metalstack.api.v2.MachineChassisIdentifyLEDStateR\x08ledState\x12\x39\n\nupdated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\"z\n\x0bMachineBios\x12%\n\x07version\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x07version\x12#\n\x06vendor\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x06vendor\x12\x1f\n\x04\x64\x61te\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x04\x64\x61te\"\x99\x02\n\nMachineBMC\x12\"\n\x07\x61\x64\x64ress\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x80\x02\x01R\x07\x61\x64\x64ress\x12\x1d\n\x03mac\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xb8\xb3\xae\xb1\x02\x01R\x03mac\x12\x1f\n\x04user\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x04user\x12\'\n\x08password\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x08password\x12)\n\tinterface\x18\x05 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\tinterface\x12%\n\x07version\x18\x06 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x07version\x12,\n\x0bpower_state\x18\x07 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\npowerState\"\xa6\x05\n\nMachineFRU\x12@\n\x13\x63hassis_part_number\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x00R\x11\x63hassisPartNumber\x88\x01\x01\x12@\n\x13\x63hassis_part_serial\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x01R\x11\x63hassisPartSerial\x88\x01\x01\x12-\n\tboard_mfg\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x02R\x08\x62oardMfg\x88\x01\x01\x12:\n\x10\x62oard_mfg_serial\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x03R\x0e\x62oardMfgSerial\x88\x01\x01\x12<\n\x11\x62oard_part_number\x18\x05 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x04R\x0f\x62oardPartNumber\x88\x01\x01\x12\x43\n\x14product_manufacturer\x18\x06 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x05R\x13productManufacturer\x88\x01\x01\x12@\n\x13product_part_number\x18\x07 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x06R\x11productPartNumber\x88\x01\x01\x12\x37\n\x0eproduct_serial\x18\x08 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x07R\rproductSerial\x88\x01\x01\x42\x16\n\x14_chassis_part_numberB\x16\n\x14_chassis_part_serialB\x0c\n\n_board_mfgB\x13\n\x11_board_mfg_serialB\x14\n\x12_board_part_numberB\x17\n\x15_product_manufacturerB\x16\n\x14_product_part_numberB\x11\n\x0f_product_serial\"\xce\x01\n\x12MachinePowerMetric\x12\x34\n\x16\x61verage_consumed_watts\x18\x01 \x01(\x02R\x14\x61verageConsumedWatts\x12&\n\x0finterval_in_min\x18\x02 \x01(\x02R\rintervalInMin\x12,\n\x12max_consumed_watts\x18\x03 \x01(\x02R\x10maxConsumedWatts\x12,\n\x12min_consumed_watts\x18\x04 \x01(\x02R\x10minConsumedWatts\"B\n\x12MachinePowerSupply\x12\x16\n\x06health\x18\x01 \x01(\tR\x06health\x12\x14\n\x05state\x18\x02 \x01(\tR\x05state\"\xd3\x02\n\x1fMachineRecentProvisioningEvents\x12\x43\n\x06\x65vents\x18\x01 \x03(\x0b\x32+.metalstack.api.v2.MachineProvisioningEventR\x06\x65vents\x12\x42\n\x0flast_event_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\rlastEventTime\x12U\n\x10last_error_event\x18\x03 \x01(\x0b\x32+.metalstack.api.v2.MachineProvisioningEventR\x0elastErrorEvent\x12P\n\x05state\x18\x04 \x01(\x0e\x32\x30.metalstack.api.v2.MachineProvisioningEventStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\"\xb5\x01\n\x18MachineProvisioningEvent\x12.\n\x04time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x04time\x12O\n\x05\x65vent\x18\x02 \x01(\x0e\x32/.metalstack.api.v2.MachineProvisioningEventTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05\x65vent\x12\x18\n\x07message\x18\x03 \x01(\tR\x07message\"\x99\x01\n\nMachineVPN\x12\x32\n\x15\x63ontrol_plane_address\x18\x01 \x01(\tR\x13\x63ontrolPlaneAddress\x12\x19\n\x08\x61uth_key\x18\x02 \x01(\tR\x07\x61uthKey\x12\x1c\n\tconnected\x18\x03 \x01(\x08R\tconnected\x12\x1e\n\x03ips\x18\x04 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xc0\xa4\xb3\xb1\x02\x01R\x03ips\"\xc7\x08\n\x0cMachineQuery\x12!\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x00R\x04uuid\x88\x01\x01\x12$\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x04name\x88\x01\x01\x12.\n\tpartition\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x02R\tpartition\x88\x01\x01\x12$\n\x04size\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x03R\x04size\x88\x01\x01\x12#\n\x04rack\x18\x05 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x01H\x04R\x04rack\x88\x01\x01\x12\x36\n\x06labels\x18\x06 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x05R\x06labels\x88\x01\x01\x12N\n\nallocation\x18\x07 \x01(\x0b\x32).metalstack.api.v2.MachineAllocationQueryH\x06R\nallocation\x88\x01\x01\x12\x45\n\x07network\x18\x08 \x01(\x0b\x32&.metalstack.api.v2.MachineNetworkQueryH\x07R\x07network\x88\x01\x01\x12\x39\n\x03nic\x18\t \x01(\x0b\x32\".metalstack.api.v2.MachineNicQueryH\x08R\x03nic\x88\x01\x01\x12<\n\x04\x64isk\x18\n \x01(\x0b\x32#.metalstack.api.v2.MachineDiskQueryH\tR\x04\x64isk\x88\x01\x01\x12\x39\n\x03\x62mc\x18\x0b \x01(\x0b\x32\".metalstack.api.v2.MachineBMCQueryH\nR\x03\x62mc\x88\x01\x01\x12\x39\n\x03\x66ru\x18\x0c \x01(\x0b\x32\".metalstack.api.v2.MachineFRUQueryH\x0bR\x03\x66ru\x88\x01\x01\x12H\n\x08hardware\x18\r \x01(\x0b\x32\'.metalstack.api.v2.MachineHardwareQueryH\x0cR\x08hardware\x88\x01\x01\x12:\n\x05state\x18\x0e \x01(\x0e\x32\x1f.metalstack.api.v2.MachineStateH\rR\x05state\x88\x01\x01\x12\x1d\n\x07waiting\x18\x0f \x01(\x08H\x0eR\x07waiting\x88\x01\x01\x12\'\n\x0cpreallocated\x18\x10 \x01(\x08H\x0fR\x0cpreallocated\x88\x01\x01\x12(\n\rnot_allocated\x18\x11 \x01(\x08H\x10R\x0cnotAllocated\x88\x01\x01\x42\x07\n\x05_uuidB\x07\n\x05_nameB\x0c\n\n_partitionB\x07\n\x05_sizeB\x07\n\x05_rackB\t\n\x07_labelsB\r\n\x0b_allocationB\n\n\x08_networkB\x06\n\x04_nicB\x07\n\x05_diskB\x06\n\x04_bmcB\x06\n\x04_fruB\x0b\n\t_hardwareB\x08\n\x06_stateB\n\n\x08_waitingB\x0f\n\r_preallocatedB\x10\n\x0e_not_allocated\"\xdd\x04\n\x16MachineAllocationQuery\x12!\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x00R\x04uuid\x88\x01\x01\x12$\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x01R\x04name\x88\x01\x01\x12\'\n\x07project\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x02R\x07project\x88\x01\x01\x12&\n\x05image\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x03R\x05image\x88\x01\x01\x12=\n\x11\x66ilesystem_layout\x18\x05 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x04R\x10\x66ilesystemLayout\x88\x01\x01\x12(\n\x08hostname\x18\x06 \x01(\tB\x07\xbaH\x04r\x02h\x01H\x05R\x08hostname\x88\x01\x01\x12`\n\x0f\x61llocation_type\x18\x07 \x01(\x0e\x32(.metalstack.api.v2.MachineAllocationTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x06R\x0e\x61llocationType\x88\x01\x01\x12\x36\n\x06labels\x18\x08 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x07R\x06labels\x88\x01\x01\x12\x34\n\x03vpn\x18\t \x01(\x0b\x32\x1d.metalstack.api.v2.MachineVPNH\x08R\x03vpn\x88\x01\x01\x42\x07\n\x05_uuidB\x07\n\x05_nameB\n\n\x08_projectB\x08\n\x06_imageB\x14\n\x12_filesystem_layoutB\x0b\n\t_hostnameB\x12\n\x10_allocation_typeB\t\n\x07_labelsB\x06\n\x04_vpn\"\xe4\x01\n\x13MachineNetworkQuery\x12\x1a\n\x08networks\x18\x01 \x03(\tR\x08networks\x12(\n\x08prefixes\x18\x02 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x08prefixes\x12?\n\x14\x64\x65stination_prefixes\x18\x03 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xb8\xa4\xb3\xb1\x02\x01R\x13\x64\x65stinationPrefixes\x12\x1e\n\x03ips\x18\x04 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xc0\xa4\xb3\xb1\x02\x01R\x03ips\x12\x12\n\x04vrfs\x18\x05 \x03(\x04R\x04vrfs\x12\x12\n\x04\x61sns\x18\x06 \x03(\rR\x04\x61sns\"\xd9\x01\n\x0fMachineNicQuery\x12(\n\x04macs\x18\x01 \x03(\tB\x14\xbaH\x11\x92\x01\x0e\x10\x64\x18\x01\"\x08r\x06\xb8\xb3\xae\xb1\x02\x01R\x04macs\x12\'\n\x05names\x18\x02 \x03(\tB\x11\xbaH\x0e\x92\x01\x0b\x10\x64\x18\x01\"\x05r\x03\x18\x80\x01R\x05names\x12\x39\n\rneighbor_macs\x18\x03 \x03(\tB\x14\xbaH\x11\x92\x01\x0e\x10\x64\x18\x01\"\x08r\x06\xb8\xb3\xae\xb1\x02\x01R\x0cneighborMacs\x12\x38\n\x0eneighbor_names\x18\x04 \x03(\tB\x11\xbaH\x0e\x92\x01\x0b\x10\x64\x18\x01\"\x05r\x03\x18\x80\x01R\rneighborNames\"Y\n\x10MachineDiskQuery\x12%\n\x05names\x18\x01 \x03(\tB\x0f\xbaH\x0c\x92\x01\t\x10\x64\"\x05r\x03\x18\x80\x01R\x05names\x12\x1e\n\x05sizes\x18\x02 \x03(\x04\x42\x08\xbaH\x05\x92\x01\x02\x10\x64R\x05sizes\"\xd8\x01\n\x0fMachineBMCQuery\x12&\n\x07\x61\x64\x64ress\x18\x01 \x01(\tB\x07\xbaH\x04r\x02p\x01H\x00R\x07\x61\x64\x64ress\x88\x01\x01\x12\"\n\x03mac\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xb8\xb3\xae\xb1\x02\x01H\x01R\x03mac\x88\x01\x01\x12!\n\x04user\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x02R\x04user\x88\x01\x01\x12+\n\tinterface\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x03R\tinterface\x88\x01\x01\x42\n\n\x08_addressB\x06\n\x04_macB\x07\n\x05_userB\x0c\n\n_interface\"\x88\x05\n\x0fMachineFRUQuery\x12=\n\x13\x63hassis_part_number\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x00R\x11\x63hassisPartNumber\x88\x01\x01\x12=\n\x13\x63hassis_part_serial\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x01R\x11\x63hassisPartSerial\x88\x01\x01\x12*\n\tboard_mfg\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x02R\x08\x62oardMfg\x88\x01\x01\x12\x30\n\x0c\x62oard_serial\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x03R\x0b\x62oardSerial\x88\x01\x01\x12\x39\n\x11\x62oard_part_number\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x04R\x0f\x62oardPartNumber\x88\x01\x01\x12@\n\x14product_manufacturer\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x05R\x13productManufacturer\x88\x01\x01\x12=\n\x13product_part_number\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x06R\x11productPartNumber\x88\x01\x01\x12\x34\n\x0eproduct_serial\x18\x08 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x07R\rproductSerial\x88\x01\x01\x42\x16\n\x14_chassis_part_numberB\x16\n\x14_chassis_part_serialB\x0c\n\n_board_mfgB\x0f\n\r_board_serialB\x14\n\x12_board_part_numberB\x17\n\x15_product_manufacturerB\x16\n\x14_product_part_numberB\x11\n\x0f_product_serial\"n\n\x14MachineHardwareQuery\x12\x1b\n\x06memory\x18\x01 \x01(\x04H\x00R\x06memory\x88\x01\x01\x12 \n\tcpu_cores\x18\x02 \x01(\rH\x01R\x08\x63puCores\x88\x01\x01\x42\t\n\x07_memoryB\x0c\n\n_cpu_cores*e\n\nIPProtocol\x12\x1b\n\x17IP_PROTOCOL_UNSPECIFIED\x10\x00\x12\x1c\n\x0fIP_PROTOCOL_TCP\x10\x01\x1a\x07\x82\xb2\x19\x03tcp\x12\x1c\n\x0fIP_PROTOCOL_UDP\x10\x02\x1a\x07\x82\xb2\x19\x03udp*\xad\x01\n\x0cMachineState\x12#\n\x19MACHINE_STATE_UNSPECIFIED\x10\x00\x1a\x04\x82\xb2\x19\x00\x12&\n\x15MACHINE_STATE_TAINTED\x10\x01\x1a\x0b\x82\xb2\x19\x07tainted\x12$\n\x14MACHINE_STATE_LOCKED\x10\x02\x1a\n\x82\xb2\x19\x06locked\x12*\n\x17MACHINE_STATE_AVAILABLE\x10\x03\x1a\r\x82\xb2\x19\tavailable*\xdf\x01\n\x1dMachineProvisioningEventState\x12\x36\n,MACHINE_PROVISIONING_EVENT_STATE_UNSPECIFIED\x10\x00\x1a\x04\x82\xb2\x19\x00\x12=\n*MACHINE_PROVISIONING_EVENT_STATE_CRASHLOOP\x10\x01\x1a\r\x82\xb2\x19\tcrashloop\x12G\n/MACHINE_PROVISIONING_EVENT_STATE_FAILED_RECLAIM\x10\x02\x1a\x12\x82\xb2\x19\x0e\x66\x61iled-reclaim*\x9f\x06\n\x1cMachineProvisioningEventType\x12/\n+MACHINE_PROVISIONING_EVENT_TYPE_UNSPECIFIED\x10\x00\x12\x34\n%MACHINE_PROVISIONING_EVENT_TYPE_ALIVE\x10\x01\x1a\t\x82\xb2\x19\x05\x41live\x12\x38\n\'MACHINE_PROVISIONING_EVENT_TYPE_CRASHED\x10\x02\x1a\x0b\x82\xb2\x19\x07\x43rashed\x12@\n+MACHINE_PROVISIONING_EVENT_TYPE_PXE_BOOTING\x10\x03\x1a\x0f\x82\xb2\x19\x0bPXE Booting\x12\x46\n.MACHINE_PROVISIONING_EVENT_TYPE_PLANNED_REBOOT\x10\x04\x1a\x12\x82\xb2\x19\x0ePlanned Reboot\x12<\n)MACHINE_PROVISIONING_EVENT_TYPE_PREPARING\x10\x05\x1a\r\x82\xb2\x19\tPreparing\x12@\n+MACHINE_PROVISIONING_EVENT_TYPE_REGISTERING\x10\x06\x1a\x0f\x82\xb2\x19\x0bRegistering\x12\x38\n\'MACHINE_PROVISIONING_EVENT_TYPE_WAITING\x10\x07\x1a\x0b\x82\xb2\x19\x07Waiting\x12>\n*MACHINE_PROVISIONING_EVENT_TYPE_INSTALLING\x10\x08\x1a\x0e\x82\xb2\x19\nInstalling\x12N\n2MACHINE_PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL\x10\t\x1a\x16\x82\xb2\x19\x12\x42ooting New Kernel\x12@\n+MACHINE_PROVISIONING_EVENT_TYPE_PHONED_HOME\x10\n\x1a\x0f\x82\xb2\x19\x0bPhoned Home\x12H\n/MACHINE_PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM\x10\x0b\x1a\x13\x82\xb2\x19\x0fMachine Reclaim*\xba\x01\n\x11MachineLiveliness\x12(\n\x1eMACHINE_LIVELINESS_UNSPECIFIED\x10\x00\x1a\x04\x82\xb2\x19\x00\x12\'\n\x18MACHINE_LIVELINESS_ALIVE\x10\x01\x1a\t\x82\xb2\x19\x05\x61live\x12%\n\x17MACHINE_LIVELINESS_DEAD\x10\x02\x1a\x08\x82\xb2\x19\x04\x64\x65\x61\x64\x12+\n\x1aMACHINE_LIVELINESS_UNKNOWN\x10\x03\x1a\x0b\x82\xb2\x19\x07unknown*\xac\x01\n\x15MachineAllocationType\x12-\n#MACHINE_ALLOCATION_TYPE_UNSPECIFIED\x10\x00\x1a\x04\x82\xb2\x19\x00\x12\x30\n\x1fMACHINE_ALLOCATION_TYPE_MACHINE\x10\x01\x1a\x0b\x82\xb2\x19\x07machine\x12\x32\n MACHINE_ALLOCATION_TYPE_FIREWALL\x10\x02\x1a\x0c\x82\xb2\x19\x08\x66irewall*\xfe\x04\n\x11MachineBMCCommand\x12#\n\x1fMACHINE_BMC_COMMAND_UNSPECIFIED\x10\x00\x12\"\n\x16MACHINE_BMC_COMMAND_ON\x10\x01\x1a\x06\x82\xb2\x19\x02on\x12$\n\x17MACHINE_BMC_COMMAND_OFF\x10\x02\x1a\x07\x82\xb2\x19\x03off\x12(\n\x19MACHINE_BMC_COMMAND_RESET\x10\x03\x1a\t\x82\xb2\x19\x05reset\x12(\n\x19MACHINE_BMC_COMMAND_CYCLE\x10\x04\x1a\t\x82\xb2\x19\x05\x63ycle\x12\x36\n MACHINE_BMC_COMMAND_BOOT_TO_BIOS\x10\x05\x1a\x10\x82\xb2\x19\x0c\x62oot-to-bios\x12:\n\"MACHINE_BMC_COMMAND_BOOT_FROM_DISK\x10\x06\x1a\x12\x82\xb2\x19\x0e\x62oot-from-disk\x12\x38\n!MACHINE_BMC_COMMAND_BOOT_FROM_PXE\x10\x07\x1a\x11\x82\xb2\x19\rboot-from-pxe\x12<\n#MACHINE_BMC_COMMAND_IDENTIFY_LED_ON\x10\x08\x1a\x13\x82\xb2\x19\x0fidentify-led-on\x12>\n$MACHINE_BMC_COMMAND_IDENTIFY_LED_OFF\x10\t\x1a\x14\x82\xb2\x19\x10identify-led-off\x12<\n#MACHINE_BMC_COMMAND_MACHINE_DELETED\x10\n\x1a\x13\x82\xb2\x19\x0fmachine-deleted\x12<\n#MACHINE_BMC_COMMAND_MACHINE_CREATED\x10\x0b\x1a\x13\x82\xb2\x19\x0fmachine-created2\xd1\x06\n\x0eMachineService\x12m\n\x03Get\x12+.metalstack.api.v2.MachineServiceGetRequest\x1a,.metalstack.api.v2.MachineServiceGetResponse\"\x0b\xca\xf3\x18\x03\x01\x02\x03\xe0\xf3\x18\x02\x12u\n\x06\x43reate\x12..metalstack.api.v2.MachineServiceCreateRequest\x1a/.metalstack.api.v2.MachineServiceCreateResponse\"\n\xca\xf3\x18\x02\x01\x02\xe0\xf3\x18\x01\x12u\n\x06Update\x12..metalstack.api.v2.MachineServiceUpdateRequest\x1a/.metalstack.api.v2.MachineServiceUpdateResponse\"\n\xca\xf3\x18\x02\x01\x02\xe0\xf3\x18\x01\x12p\n\x04List\x12,.metalstack.api.v2.MachineServiceListRequest\x1a-.metalstack.api.v2.MachineServiceListResponse\"\x0b\xca\xf3\x18\x03\x01\x02\x03\xe0\xf3\x18\x02\x12u\n\x06\x44\x65lete\x12..metalstack.api.v2.MachineServiceDeleteRequest\x1a/.metalstack.api.v2.MachineServiceDeleteResponse\"\n\xca\xf3\x18\x02\x01\x02\xe0\xf3\x18\x01\x12\x81\x01\n\nBMCCommand\x12\x32.metalstack.api.v2.MachineServiceBMCCommandRequest\x1a\x33.metalstack.api.v2.MachineServiceBMCCommandResponse\"\n\xca\xf3\x18\x02\x01\x02\xe0\xf3\x18\x01\x12u\n\x06GetBMC\x12..metalstack.api.v2.MachineServiceGetBMCRequest\x1a/.metalstack.api.v2.MachineServiceGetBMCResponse\"\n\xca\xf3\x18\x02\x01\x02\xe0\xf3\x18\x01\x42\xc2\x01\n\x15\x63om.metalstack.api.v2B\x0cMachineProtoP\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) @@ -311,6 +311,8 @@ _globals['_MACHINEFRU'].fields_by_name['product_serial']._serialized_options = b'\272H\010r\006\310\263\256\261\002\001' _globals['_MACHINERECENTPROVISIONINGEVENTS'].fields_by_name['state']._loaded_options = None _globals['_MACHINERECENTPROVISIONINGEVENTS'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_MACHINEPROVISIONINGEVENT'].fields_by_name['event']._loaded_options = None + _globals['_MACHINEPROVISIONINGEVENT'].fields_by_name['event']._serialized_options = b'\272H\005\202\001\002\020\001' _globals['_MACHINEVPN'].fields_by_name['ips']._loaded_options = None _globals['_MACHINEVPN'].fields_by_name['ips']._serialized_options = b'\272H\t\222\001\006\300\244\263\261\002\001' _globals['_MACHINEQUERY'].fields_by_name['uuid']._loaded_options = None @@ -393,20 +395,20 @@ _globals['_MACHINESERVICE'].methods_by_name['BMCCommand']._serialized_options = b'\312\363\030\002\001\002\340\363\030\001' _globals['_MACHINESERVICE'].methods_by_name['GetBMC']._loaded_options = None _globals['_MACHINESERVICE'].methods_by_name['GetBMC']._serialized_options = b'\312\363\030\002\001\002\340\363\030\001' - _globals['_IPPROTOCOL']._serialized_start=12838 - _globals['_IPPROTOCOL']._serialized_end=12939 - _globals['_MACHINESTATE']._serialized_start=12942 - _globals['_MACHINESTATE']._serialized_end=13115 - _globals['_MACHINEPROVISIONINGEVENTSTATE']._serialized_start=13118 - _globals['_MACHINEPROVISIONINGEVENTSTATE']._serialized_end=13341 - _globals['_MACHINEPROVISIONINGEVENTTYPE']._serialized_start=13344 - _globals['_MACHINEPROVISIONINGEVENTTYPE']._serialized_end=14143 - _globals['_MACHINELIVELINESS']._serialized_start=14146 - _globals['_MACHINELIVELINESS']._serialized_end=14332 - _globals['_MACHINEALLOCATIONTYPE']._serialized_start=14335 - _globals['_MACHINEALLOCATIONTYPE']._serialized_end=14507 - _globals['_MACHINEBMCCOMMAND']._serialized_start=14510 - _globals['_MACHINEBMCCOMMAND']._serialized_end=15148 + _globals['_IPPROTOCOL']._serialized_start=12848 + _globals['_IPPROTOCOL']._serialized_end=12949 + _globals['_MACHINESTATE']._serialized_start=12952 + _globals['_MACHINESTATE']._serialized_end=13125 + _globals['_MACHINEPROVISIONINGEVENTSTATE']._serialized_start=13128 + _globals['_MACHINEPROVISIONINGEVENTSTATE']._serialized_end=13351 + _globals['_MACHINEPROVISIONINGEVENTTYPE']._serialized_start=13354 + _globals['_MACHINEPROVISIONINGEVENTTYPE']._serialized_end=14153 + _globals['_MACHINELIVELINESS']._serialized_start=14156 + _globals['_MACHINELIVELINESS']._serialized_end=14342 + _globals['_MACHINEALLOCATIONTYPE']._serialized_start=14345 + _globals['_MACHINEALLOCATIONTYPE']._serialized_end=14517 + _globals['_MACHINEBMCCOMMAND']._serialized_start=14520 + _globals['_MACHINEBMCCOMMAND']._serialized_end=15158 _globals['_MACHINESERVICEGETREQUEST']._serialized_start=355 _globals['_MACHINESERVICEGETREQUEST']._serialized_end=447 _globals['_MACHINESERVICEGETRESPONSE']._serialized_start=449 @@ -482,25 +484,25 @@ _globals['_MACHINERECENTPROVISIONINGEVENTS']._serialized_start=8937 _globals['_MACHINERECENTPROVISIONINGEVENTS']._serialized_end=9276 _globals['_MACHINEPROVISIONINGEVENT']._serialized_start=9279 - _globals['_MACHINEPROVISIONINGEVENT']._serialized_end=9450 - _globals['_MACHINEVPN']._serialized_start=9453 - _globals['_MACHINEVPN']._serialized_end=9606 - _globals['_MACHINEQUERY']._serialized_start=9609 - _globals['_MACHINEQUERY']._serialized_end=10704 - _globals['_MACHINEALLOCATIONQUERY']._serialized_start=10707 - _globals['_MACHINEALLOCATIONQUERY']._serialized_end=11312 - _globals['_MACHINENETWORKQUERY']._serialized_start=11315 - _globals['_MACHINENETWORKQUERY']._serialized_end=11543 - _globals['_MACHINENICQUERY']._serialized_start=11546 - _globals['_MACHINENICQUERY']._serialized_end=11763 - _globals['_MACHINEDISKQUERY']._serialized_start=11765 - _globals['_MACHINEDISKQUERY']._serialized_end=11854 - _globals['_MACHINEBMCQUERY']._serialized_start=11857 - _globals['_MACHINEBMCQUERY']._serialized_end=12073 - _globals['_MACHINEFRUQUERY']._serialized_start=12076 - _globals['_MACHINEFRUQUERY']._serialized_end=12724 - _globals['_MACHINEHARDWAREQUERY']._serialized_start=12726 - _globals['_MACHINEHARDWAREQUERY']._serialized_end=12836 - _globals['_MACHINESERVICE']._serialized_start=15151 - _globals['_MACHINESERVICE']._serialized_end=16000 + _globals['_MACHINEPROVISIONINGEVENT']._serialized_end=9460 + _globals['_MACHINEVPN']._serialized_start=9463 + _globals['_MACHINEVPN']._serialized_end=9616 + _globals['_MACHINEQUERY']._serialized_start=9619 + _globals['_MACHINEQUERY']._serialized_end=10714 + _globals['_MACHINEALLOCATIONQUERY']._serialized_start=10717 + _globals['_MACHINEALLOCATIONQUERY']._serialized_end=11322 + _globals['_MACHINENETWORKQUERY']._serialized_start=11325 + _globals['_MACHINENETWORKQUERY']._serialized_end=11553 + _globals['_MACHINENICQUERY']._serialized_start=11556 + _globals['_MACHINENICQUERY']._serialized_end=11773 + _globals['_MACHINEDISKQUERY']._serialized_start=11775 + _globals['_MACHINEDISKQUERY']._serialized_end=11864 + _globals['_MACHINEBMCQUERY']._serialized_start=11867 + _globals['_MACHINEBMCQUERY']._serialized_end=12083 + _globals['_MACHINEFRUQUERY']._serialized_start=12086 + _globals['_MACHINEFRUQUERY']._serialized_end=12734 + _globals['_MACHINEHARDWAREQUERY']._serialized_start=12736 + _globals['_MACHINEHARDWAREQUERY']._serialized_end=12846 + _globals['_MACHINESERVICE']._serialized_start=15161 + _globals['_MACHINESERVICE']._serialized_end=16010 # @@protoc_insertion_point(module_scope) diff --git a/python/metalstack/api/v2/partition_pb2.py b/python/metalstack/api/v2/partition_pb2.py index bd5d570f..0ebc8b8d 100644 --- a/python/metalstack/api/v2/partition_pb2.py +++ b/python/metalstack/api/v2/partition_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/partition.proto\x12\x11metalstack.api.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\x1a(metalstack/api/v2/predefined_rules.proto\"\xb8\x03\n\tPartition\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01R\x02id\x12+\n\x04meta\x18\x02 \x01(\x0b\x32\x17.metalstack.api.v2.MetaR\x04meta\x12-\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x0b\x64\x65scription\x12\\\n\x12\x62oot_configuration\x18\x04 \x01(\x0b\x32-.metalstack.api.v2.PartitionBootConfigurationR\x11\x62ootConfiguration\x12G\n\x0b\x64ns_servers\x18\x05 \x03(\x0b\x32\x1c.metalstack.api.v2.DNSServerB\x08\xbaH\x05\x92\x01\x02\x10\x03R\ndnsServers\x12G\n\x0bntp_servers\x18\x06 \x03(\x0b\x32\x1c.metalstack.api.v2.NTPServerB\x08\xbaH\x05\x92\x01\x02\x10\nR\nntpServers\x12\x42\n\x16mgmt_service_addresses\x18\x07 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xc8\xa4\xb3\xb1\x02\x01R\x14mgmtServiceAddresses\"|\n\x0ePartitionQuery\x12 \n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x00R\x02id\x88\x01\x01\x12\x36\n\x06labels\x18\x02 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x01R\x06labels\x88\x01\x01\x42\x05\n\x03_idB\t\n\x07_labels\"\x94\x01\n\x1aPartitionBootConfiguration\x12(\n\timage_url\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xe0\xb3\xae\xb1\x02\x01R\x08imageUrl\x12*\n\nkernel_url\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xe0\xb3\xae\xb1\x02\x01R\tkernelUrl\x12 \n\x0b\x63ommandline\x18\x03 \x01(\tR\x0b\x63ommandline\"$\n\tDNSServer\x12\x17\n\x02ip\x18\x01 \x01(\tB\x07\xbaH\x04r\x02p\x01R\x02ip\"2\n\tNTPServer\x12%\n\x07\x61\x64\x64ress\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xe8\xb3\xae\xb1\x02\x01R\x07\x61\x64\x64ress\"9\n\x1aPartitionServiceGetRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01R\x02id\"V\n\x1bPartitionServiceListRequest\x12\x37\n\x05query\x18\x01 \x01(\x0b\x32!.metalstack.api.v2.PartitionQueryR\x05query\"Y\n\x1bPartitionServiceGetResponse\x12:\n\tpartition\x18\x01 \x01(\x0b\x32\x1c.metalstack.api.v2.PartitionR\tpartition\"\\\n\x1cPartitionServiceListResponse\x12<\n\npartitions\x18\x01 \x03(\x0b\x32\x1c.metalstack.api.v2.PartitionR\npartitions2\xf5\x01\n\x10PartitionService\x12n\n\x03Get\x12-.metalstack.api.v2.PartitionServiceGetRequest\x1a..metalstack.api.v2.PartitionServiceGetResponse\"\x08\xd8\xf3\x18\x02\xe0\xf3\x18\x02\x12q\n\x04List\x12..metalstack.api.v2.PartitionServiceListRequest\x1a/.metalstack.api.v2.PartitionServiceListResponse\"\x08\xd8\xf3\x18\x02\xe0\xf3\x18\x02\x42\xc4\x01\n\x15\x63om.metalstack.api.v2B\x0ePartitionProtoP\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/partition.proto\x12\x11metalstack.api.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\x1a(metalstack/api/v2/predefined_rules.proto\"\xb8\x03\n\tPartition\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01R\x02id\x12+\n\x04meta\x18\x02 \x01(\x0b\x32\x17.metalstack.api.v2.MetaR\x04meta\x12-\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01R\x0b\x64\x65scription\x12\\\n\x12\x62oot_configuration\x18\x04 \x01(\x0b\x32-.metalstack.api.v2.PartitionBootConfigurationR\x11\x62ootConfiguration\x12G\n\x0b\x64ns_servers\x18\x05 \x03(\x0b\x32\x1c.metalstack.api.v2.DNSServerB\x08\xbaH\x05\x92\x01\x02\x10\x03R\ndnsServers\x12G\n\x0bntp_servers\x18\x06 \x03(\x0b\x32\x1c.metalstack.api.v2.NTPServerB\x08\xbaH\x05\x92\x01\x02\x10\nR\nntpServers\x12\x42\n\x16mgmt_service_addresses\x18\x07 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xc8\xa4\xb3\xb1\x02\x01R\x14mgmtServiceAddresses\"|\n\x0ePartitionQuery\x12 \n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01H\x00R\x02id\x88\x01\x01\x12\x36\n\x06labels\x18\x02 \x01(\x0b\x32\x19.metalstack.api.v2.LabelsH\x01R\x06labels\x88\x01\x01\x42\x05\n\x03_idB\t\n\x07_labels\"\x9e\x01\n\x1aPartitionBootConfiguration\x12(\n\timage_url\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xe0\xb3\xae\xb1\x02\x01R\x08imageUrl\x12*\n\nkernel_url\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xe0\xb3\xae\xb1\x02\x01R\tkernelUrl\x12*\n\x0b\x63ommandline\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\x80 R\x0b\x63ommandline\"$\n\tDNSServer\x12\x17\n\x02ip\x18\x01 \x01(\tB\x07\xbaH\x04r\x02p\x01R\x02ip\"2\n\tNTPServer\x12%\n\x07\x61\x64\x64ress\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xe8\xb3\xae\xb1\x02\x01R\x07\x61\x64\x64ress\"9\n\x1aPartitionServiceGetRequest\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xd0\xb3\xae\xb1\x02\x01R\x02id\"V\n\x1bPartitionServiceListRequest\x12\x37\n\x05query\x18\x01 \x01(\x0b\x32!.metalstack.api.v2.PartitionQueryR\x05query\"Y\n\x1bPartitionServiceGetResponse\x12:\n\tpartition\x18\x01 \x01(\x0b\x32\x1c.metalstack.api.v2.PartitionR\tpartition\"\\\n\x1cPartitionServiceListResponse\x12<\n\npartitions\x18\x01 \x03(\x0b\x32\x1c.metalstack.api.v2.PartitionR\npartitions2\xf5\x01\n\x10PartitionService\x12n\n\x03Get\x12-.metalstack.api.v2.PartitionServiceGetRequest\x1a..metalstack.api.v2.PartitionServiceGetResponse\"\x08\xd8\xf3\x18\x02\xe0\xf3\x18\x02\x12q\n\x04List\x12..metalstack.api.v2.PartitionServiceListRequest\x1a/.metalstack.api.v2.PartitionServiceListResponse\"\x08\xd8\xf3\x18\x02\xe0\xf3\x18\x02\x42\xc4\x01\n\x15\x63om.metalstack.api.v2B\x0ePartitionProtoP\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) @@ -51,6 +51,8 @@ _globals['_PARTITIONBOOTCONFIGURATION'].fields_by_name['image_url']._serialized_options = b'\272H\010r\006\340\263\256\261\002\001' _globals['_PARTITIONBOOTCONFIGURATION'].fields_by_name['kernel_url']._loaded_options = None _globals['_PARTITIONBOOTCONFIGURATION'].fields_by_name['kernel_url']._serialized_options = b'\272H\010r\006\340\263\256\261\002\001' + _globals['_PARTITIONBOOTCONFIGURATION'].fields_by_name['commandline']._loaded_options = None + _globals['_PARTITIONBOOTCONFIGURATION'].fields_by_name['commandline']._serialized_options = b'\272H\005r\003\030\200 ' _globals['_DNSSERVER'].fields_by_name['ip']._loaded_options = None _globals['_DNSSERVER'].fields_by_name['ip']._serialized_options = b'\272H\004r\002p\001' _globals['_NTPSERVER'].fields_by_name['address']._loaded_options = None @@ -66,19 +68,19 @@ _globals['_PARTITIONQUERY']._serialized_start=602 _globals['_PARTITIONQUERY']._serialized_end=726 _globals['_PARTITIONBOOTCONFIGURATION']._serialized_start=729 - _globals['_PARTITIONBOOTCONFIGURATION']._serialized_end=877 - _globals['_DNSSERVER']._serialized_start=879 - _globals['_DNSSERVER']._serialized_end=915 - _globals['_NTPSERVER']._serialized_start=917 - _globals['_NTPSERVER']._serialized_end=967 - _globals['_PARTITIONSERVICEGETREQUEST']._serialized_start=969 - _globals['_PARTITIONSERVICEGETREQUEST']._serialized_end=1026 - _globals['_PARTITIONSERVICELISTREQUEST']._serialized_start=1028 - _globals['_PARTITIONSERVICELISTREQUEST']._serialized_end=1114 - _globals['_PARTITIONSERVICEGETRESPONSE']._serialized_start=1116 - _globals['_PARTITIONSERVICEGETRESPONSE']._serialized_end=1205 - _globals['_PARTITIONSERVICELISTRESPONSE']._serialized_start=1207 - _globals['_PARTITIONSERVICELISTRESPONSE']._serialized_end=1299 - _globals['_PARTITIONSERVICE']._serialized_start=1302 - _globals['_PARTITIONSERVICE']._serialized_end=1547 + _globals['_PARTITIONBOOTCONFIGURATION']._serialized_end=887 + _globals['_DNSSERVER']._serialized_start=889 + _globals['_DNSSERVER']._serialized_end=925 + _globals['_NTPSERVER']._serialized_start=927 + _globals['_NTPSERVER']._serialized_end=977 + _globals['_PARTITIONSERVICEGETREQUEST']._serialized_start=979 + _globals['_PARTITIONSERVICEGETREQUEST']._serialized_end=1036 + _globals['_PARTITIONSERVICELISTREQUEST']._serialized_start=1038 + _globals['_PARTITIONSERVICELISTREQUEST']._serialized_end=1124 + _globals['_PARTITIONSERVICEGETRESPONSE']._serialized_start=1126 + _globals['_PARTITIONSERVICEGETRESPONSE']._serialized_end=1215 + _globals['_PARTITIONSERVICELISTRESPONSE']._serialized_start=1217 + _globals['_PARTITIONSERVICELISTRESPONSE']._serialized_end=1309 + _globals['_PARTITIONSERVICE']._serialized_start=1312 + _globals['_PARTITIONSERVICE']._serialized_end=1557 # @@protoc_insertion_point(module_scope) diff --git a/python/metalstack/api/v2/vpn_pb2.py b/python/metalstack/api/v2/vpn_pb2.py index 72bcad7c..1dc3c647 100644 --- a/python/metalstack/api/v2/vpn_pb2.py +++ b/python/metalstack/api/v2/vpn_pb2.py @@ -22,10 +22,12 @@ _sym_db = _symbol_database.Default() +from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 +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\x1bmetalstack/api/v2/vpn.proto\x12\x11metalstack.api.v2\x1a\x1fgoogle/protobuf/timestamp.proto\"\xbb\x01\n\x07VPNNode\x12\x0e\n\x02id\x18\x01 \x01(\x04R\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x18\n\x07project\x18\x03 \x01(\tR\x07project\x12!\n\x0cip_addresses\x18\x04 \x03(\tR\x0bipAddresses\x12\x37\n\tlast_seen\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x08lastSeen\x12\x16\n\x06online\x18\x06 \x01(\x08R\x06onlineB\xbe\x01\n\x15\x63om.metalstack.api.v2B\x08VpnProtoP\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\x1bmetalstack/api/v2/vpn.proto\x12\x11metalstack.api.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a(metalstack/api/v2/predefined_rules.proto\"\xe3\x01\n\x07VPNNode\x12\x0e\n\x02id\x18\x01 \x01(\x04R\x02id\x12\x1f\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x04name\x12%\n\x07project\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x07project\x12/\n\x0cip_addresses\x18\x04 \x03(\tB\x0c\xbaH\t\x92\x01\x06\xc0\xa4\xb3\xb1\x02\x01R\x0bipAddresses\x12\x37\n\tlast_seen\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x08lastSeen\x12\x16\n\x06online\x18\x06 \x01(\x08R\x06onlineB\xbe\x01\n\x15\x63om.metalstack.api.v2B\x08VpnProtoP\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) @@ -33,6 +35,12 @@ if not _descriptor._USE_C_DESCRIPTORS: _globals['DESCRIPTOR']._loaded_options = None _globals['DESCRIPTOR']._serialized_options = b'\n\025com.metalstack.api.v2B\010VpnProtoP\001Z5github.com/metal-stack/api/go/metalstack/api/v2;apiv2\242\002\003MAX\252\002\021Metalstack.Api.V2\312\002\021Metalstack\\Api\\V2\342\002\035Metalstack\\Api\\V2\\GPBMetadata\352\002\023Metalstack::Api::V2' - _globals['_VPNNODE']._serialized_start=84 - _globals['_VPNNODE']._serialized_end=271 + _globals['_VPNNODE'].fields_by_name['name']._loaded_options = None + _globals['_VPNNODE'].fields_by_name['name']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' + _globals['_VPNNODE'].fields_by_name['project']._loaded_options = None + _globals['_VPNNODE'].fields_by_name['project']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001' + _globals['_VPNNODE'].fields_by_name['ip_addresses']._loaded_options = None + _globals['_VPNNODE'].fields_by_name['ip_addresses']._serialized_options = b'\272H\t\222\001\006\300\244\263\261\002\001' + _globals['_VPNNODE']._serialized_start=155 + _globals['_VPNNODE']._serialized_end=382 # @@protoc_insertion_point(module_scope) diff --git a/python/metalstack/api/v2/vpn_pb2.pyi b/python/metalstack/api/v2/vpn_pb2.pyi index e07b8a45..0c6d9198 100644 --- a/python/metalstack/api/v2/vpn_pb2.pyi +++ b/python/metalstack/api/v2/vpn_pb2.pyi @@ -1,6 +1,8 @@ import datetime +from buf.validate import validate_pb2 as _validate_pb2 from google.protobuf import timestamp_pb2 as _timestamp_pb2 +from metalstack.api.v2 import predefined_rules_pb2 as _predefined_rules_pb2 from google.protobuf.internal import containers as _containers from google.protobuf import descriptor as _descriptor from google.protobuf import message as _message diff --git a/python/metalstack/infra/v2/event_pb2.py b/python/metalstack/infra/v2/event_pb2.py index ac502190..f436b3c8 100644 --- a/python/metalstack/infra/v2/event_pb2.py +++ b/python/metalstack/infra/v2/event_pb2.py @@ -25,9 +25,10 @@ from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 from metalstack.api.v2 import common_pb2 as metalstack_dot_api_dot_v2_dot_common__pb2 +from metalstack.api.v2 import machine_pb2 as metalstack_dot_api_dot_v2_dot_machine__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fmetalstack/infra/v2/event.proto\x12\x13metalstack.infra.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1emetalstack/api/v2/common.proto\"\xd5\x01\n\x17\x45ventServiceSendRequest\x12P\n\x06\x65vents\x18\x01 \x03(\x0b\x32\x38.metalstack.infra.v2.EventServiceSendRequest.EventsEntryR\x06\x65vents\x1ah\n\x0b\x45ventsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32-.metalstack.infra.v2.MachineProvisioningEventR\x05value:\x02\x38\x01\"J\n\x18\x45ventServiceSendResponse\x12\x16\n\x06\x65vents\x18\x01 \x01(\x04R\x06\x65vents\x12\x16\n\x06\x66\x61iled\x18\x02 \x03(\tR\x06\x66\x61iled\"\xb0\x01\n\x18MachineProvisioningEvent\x12.\n\x04time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x04time\x12J\n\x05\x65vent\x18\x02 \x01(\x0e\x32*.metalstack.infra.v2.ProvisioningEventTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05\x65vent\x12\x18\n\x07message\x18\x03 \x01(\tR\x07message*\xb8\x05\n\x15ProvisioningEventType\x12\'\n#PROVISIONING_EVENT_TYPE_UNSPECIFIED\x10\x00\x12,\n\x1dPROVISIONING_EVENT_TYPE_ALIVE\x10\x01\x1a\t\x82\xb2\x19\x05\x41live\x12\x30\n\x1fPROVISIONING_EVENT_TYPE_CRASHED\x10\x02\x1a\x0b\x82\xb2\x19\x07\x43rashed\x12\x38\n#PROVISIONING_EVENT_TYPE_PXE_BOOTING\x10\x03\x1a\x0f\x82\xb2\x19\x0bPXE Booting\x12>\n&PROVISIONING_EVENT_TYPE_PLANNED_REBOOT\x10\x04\x1a\x12\x82\xb2\x19\x0ePlanned Reboot\x12\x34\n!PROVISIONING_EVENT_TYPE_PREPARING\x10\x05\x1a\r\x82\xb2\x19\tPreparing\x12\x38\n#PROVISIONING_EVENT_TYPE_REGISTERING\x10\x06\x1a\x0f\x82\xb2\x19\x0bRegistering\x12\x30\n\x1fPROVISIONING_EVENT_TYPE_WAITING\x10\x07\x1a\x0b\x82\xb2\x19\x07Waiting\x12\x36\n\"PROVISIONING_EVENT_TYPE_INSTALLING\x10\x08\x1a\x0e\x82\xb2\x19\nInstalling\x12\x46\n*PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL\x10\t\x1a\x16\x82\xb2\x19\x12\x42ooting New Kernel\x12\x38\n#PROVISIONING_EVENT_TYPE_PHONED_HOME\x10\n\x1a\x0f\x82\xb2\x19\x0bPhoned Home\x12@\n\'PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM\x10\x0b\x1a\x13\x82\xb2\x19\x0fMachine Reclaim2~\n\x0c\x45ventService\x12n\n\x04Send\x12,.metalstack.infra.v2.EventServiceSendRequest\x1a-.metalstack.infra.v2.EventServiceSendResponse\"\t\xe0\xf3\x18\x02\xea\xf3\x18\x01\x01\x42\xce\x01\n\x17\x63om.metalstack.infra.v2B\nEventProtoP\x01Z9github.com/metal-stack/api/go/metalstack/infra/v2;infrav2\xa2\x02\x03MIX\xaa\x02\x13Metalstack.Infra.V2\xca\x02\x13Metalstack\\Infra\\V2\xe2\x02\x1fMetalstack\\Infra\\V2\\GPBMetadata\xea\x02\x15Metalstack::Infra::V2b\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fmetalstack/infra/v2/event.proto\x12\x13metalstack.infra.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1emetalstack/api/v2/common.proto\x1a\x1fmetalstack/api/v2/machine.proto\"\xd3\x01\n\x17\x45ventServiceSendRequest\x12P\n\x06\x65vents\x18\x01 \x03(\x0b\x32\x38.metalstack.infra.v2.EventServiceSendRequest.EventsEntryR\x06\x65vents\x1a\x66\n\x0b\x45ventsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x41\n\x05value\x18\x02 \x01(\x0b\x32+.metalstack.api.v2.MachineProvisioningEventR\x05value:\x02\x38\x01\"J\n\x18\x45ventServiceSendResponse\x12\x16\n\x06\x65vents\x18\x01 \x01(\x04R\x06\x65vents\x12\x16\n\x06\x66\x61iled\x18\x02 \x03(\tR\x06\x66\x61iled2~\n\x0c\x45ventService\x12n\n\x04Send\x12,.metalstack.infra.v2.EventServiceSendRequest\x1a-.metalstack.infra.v2.EventServiceSendResponse\"\t\xe0\xf3\x18\x02\xea\xf3\x18\x01\x01\x42\xce\x01\n\x17\x63om.metalstack.infra.v2B\nEventProtoP\x01Z9github.com/metal-stack/api/go/metalstack/infra/v2;infrav2\xa2\x02\x03MIX\xaa\x02\x13Metalstack.Infra.V2\xca\x02\x13Metalstack\\Infra\\V2\xe2\x02\x1fMetalstack\\Infra\\V2\\GPBMetadata\xea\x02\x15Metalstack::Infra::V2b\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -35,44 +36,16 @@ if not _descriptor._USE_C_DESCRIPTORS: _globals['DESCRIPTOR']._loaded_options = None _globals['DESCRIPTOR']._serialized_options = b'\n\027com.metalstack.infra.v2B\nEventProtoP\001Z9github.com/metal-stack/api/go/metalstack/infra/v2;infrav2\242\002\003MIX\252\002\023Metalstack.Infra.V2\312\002\023Metalstack\\Infra\\V2\342\002\037Metalstack\\Infra\\V2\\GPBMetadata\352\002\025Metalstack::Infra::V2' - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_ALIVE"]._loaded_options = None - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_ALIVE"]._serialized_options = b'\202\262\031\005Alive' - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_CRASHED"]._loaded_options = None - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_CRASHED"]._serialized_options = b'\202\262\031\007Crashed' - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_PXE_BOOTING"]._loaded_options = None - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_PXE_BOOTING"]._serialized_options = b'\202\262\031\013PXE Booting' - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_PLANNED_REBOOT"]._loaded_options = None - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_PLANNED_REBOOT"]._serialized_options = b'\202\262\031\016Planned Reboot' - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_PREPARING"]._loaded_options = None - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_PREPARING"]._serialized_options = b'\202\262\031\tPreparing' - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_REGISTERING"]._loaded_options = None - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_REGISTERING"]._serialized_options = b'\202\262\031\013Registering' - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_WAITING"]._loaded_options = None - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_WAITING"]._serialized_options = b'\202\262\031\007Waiting' - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_INSTALLING"]._loaded_options = None - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_INSTALLING"]._serialized_options = b'\202\262\031\nInstalling' - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL"]._loaded_options = None - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL"]._serialized_options = b'\202\262\031\022Booting New Kernel' - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_PHONED_HOME"]._loaded_options = None - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_PHONED_HOME"]._serialized_options = b'\202\262\031\013Phoned Home' - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM"]._loaded_options = None - _globals['_PROVISIONINGEVENTTYPE'].values_by_name["PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM"]._serialized_options = b'\202\262\031\017Machine Reclaim' _globals['_EVENTSERVICESENDREQUEST_EVENTSENTRY']._loaded_options = None _globals['_EVENTSERVICESENDREQUEST_EVENTSENTRY']._serialized_options = b'8\001' - _globals['_MACHINEPROVISIONINGEVENT'].fields_by_name['event']._loaded_options = None - _globals['_MACHINEPROVISIONINGEVENT'].fields_by_name['event']._serialized_options = b'\272H\005\202\001\002\020\001' _globals['_EVENTSERVICE'].methods_by_name['Send']._loaded_options = None _globals['_EVENTSERVICE'].methods_by_name['Send']._serialized_options = b'\340\363\030\002\352\363\030\001\001' - _globals['_PROVISIONINGEVENTTYPE']._serialized_start=622 - _globals['_PROVISIONINGEVENTTYPE']._serialized_end=1318 - _globals['_EVENTSERVICESENDREQUEST']._serialized_start=151 - _globals['_EVENTSERVICESENDREQUEST']._serialized_end=364 - _globals['_EVENTSERVICESENDREQUEST_EVENTSENTRY']._serialized_start=260 - _globals['_EVENTSERVICESENDREQUEST_EVENTSENTRY']._serialized_end=364 - _globals['_EVENTSERVICESENDRESPONSE']._serialized_start=366 - _globals['_EVENTSERVICESENDRESPONSE']._serialized_end=440 - _globals['_MACHINEPROVISIONINGEVENT']._serialized_start=443 - _globals['_MACHINEPROVISIONINGEVENT']._serialized_end=619 - _globals['_EVENTSERVICE']._serialized_start=1320 - _globals['_EVENTSERVICE']._serialized_end=1446 + _globals['_EVENTSERVICESENDREQUEST']._serialized_start=184 + _globals['_EVENTSERVICESENDREQUEST']._serialized_end=395 + _globals['_EVENTSERVICESENDREQUEST_EVENTSENTRY']._serialized_start=293 + _globals['_EVENTSERVICESENDREQUEST_EVENTSENTRY']._serialized_end=395 + _globals['_EVENTSERVICESENDRESPONSE']._serialized_start=397 + _globals['_EVENTSERVICESENDRESPONSE']._serialized_end=471 + _globals['_EVENTSERVICE']._serialized_start=473 + _globals['_EVENTSERVICE']._serialized_end=599 # @@protoc_insertion_point(module_scope) diff --git a/python/metalstack/infra/v2/event_pb2.pyi b/python/metalstack/infra/v2/event_pb2.pyi index 4f5ec506..ea14d0bb 100644 --- a/python/metalstack/infra/v2/event_pb2.pyi +++ b/python/metalstack/infra/v2/event_pb2.pyi @@ -1,10 +1,8 @@ -import datetime - from buf.validate import validate_pb2 as _validate_pb2 from google.protobuf import timestamp_pb2 as _timestamp_pb2 from metalstack.api.v2 import common_pb2 as _common_pb2 +from metalstack.api.v2 import machine_pb2 as _machine_pb2 from google.protobuf.internal import containers as _containers -from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper from google.protobuf import descriptor as _descriptor from google.protobuf import message as _message from collections.abc import Iterable as _Iterable, Mapping as _Mapping @@ -12,33 +10,6 @@ from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union DESCRIPTOR: _descriptor.FileDescriptor -class ProvisioningEventType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): - __slots__ = () - PROVISIONING_EVENT_TYPE_UNSPECIFIED: _ClassVar[ProvisioningEventType] - PROVISIONING_EVENT_TYPE_ALIVE: _ClassVar[ProvisioningEventType] - PROVISIONING_EVENT_TYPE_CRASHED: _ClassVar[ProvisioningEventType] - PROVISIONING_EVENT_TYPE_PXE_BOOTING: _ClassVar[ProvisioningEventType] - PROVISIONING_EVENT_TYPE_PLANNED_REBOOT: _ClassVar[ProvisioningEventType] - PROVISIONING_EVENT_TYPE_PREPARING: _ClassVar[ProvisioningEventType] - PROVISIONING_EVENT_TYPE_REGISTERING: _ClassVar[ProvisioningEventType] - PROVISIONING_EVENT_TYPE_WAITING: _ClassVar[ProvisioningEventType] - PROVISIONING_EVENT_TYPE_INSTALLING: _ClassVar[ProvisioningEventType] - PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL: _ClassVar[ProvisioningEventType] - PROVISIONING_EVENT_TYPE_PHONED_HOME: _ClassVar[ProvisioningEventType] - PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM: _ClassVar[ProvisioningEventType] -PROVISIONING_EVENT_TYPE_UNSPECIFIED: ProvisioningEventType -PROVISIONING_EVENT_TYPE_ALIVE: ProvisioningEventType -PROVISIONING_EVENT_TYPE_CRASHED: ProvisioningEventType -PROVISIONING_EVENT_TYPE_PXE_BOOTING: ProvisioningEventType -PROVISIONING_EVENT_TYPE_PLANNED_REBOOT: ProvisioningEventType -PROVISIONING_EVENT_TYPE_PREPARING: ProvisioningEventType -PROVISIONING_EVENT_TYPE_REGISTERING: ProvisioningEventType -PROVISIONING_EVENT_TYPE_WAITING: ProvisioningEventType -PROVISIONING_EVENT_TYPE_INSTALLING: ProvisioningEventType -PROVISIONING_EVENT_TYPE_BOOTING_NEW_KERNEL: ProvisioningEventType -PROVISIONING_EVENT_TYPE_PHONED_HOME: ProvisioningEventType -PROVISIONING_EVENT_TYPE_MACHINE_RECLAIM: ProvisioningEventType - class EventServiceSendRequest(_message.Message): __slots__ = ("events",) class EventsEntry(_message.Message): @@ -46,11 +17,11 @@ class EventServiceSendRequest(_message.Message): KEY_FIELD_NUMBER: _ClassVar[int] VALUE_FIELD_NUMBER: _ClassVar[int] key: str - value: MachineProvisioningEvent - def __init__(self, key: _Optional[str] = ..., value: _Optional[_Union[MachineProvisioningEvent, _Mapping]] = ...) -> None: ... + value: _machine_pb2.MachineProvisioningEvent + def __init__(self, key: _Optional[str] = ..., value: _Optional[_Union[_machine_pb2.MachineProvisioningEvent, _Mapping]] = ...) -> None: ... EVENTS_FIELD_NUMBER: _ClassVar[int] - events: _containers.MessageMap[str, MachineProvisioningEvent] - def __init__(self, events: _Optional[_Mapping[str, MachineProvisioningEvent]] = ...) -> None: ... + events: _containers.MessageMap[str, _machine_pb2.MachineProvisioningEvent] + def __init__(self, events: _Optional[_Mapping[str, _machine_pb2.MachineProvisioningEvent]] = ...) -> None: ... class EventServiceSendResponse(_message.Message): __slots__ = ("events", "failed") @@ -59,13 +30,3 @@ class EventServiceSendResponse(_message.Message): events: int failed: _containers.RepeatedScalarFieldContainer[str] def __init__(self, events: _Optional[int] = ..., failed: _Optional[_Iterable[str]] = ...) -> None: ... - -class MachineProvisioningEvent(_message.Message): - __slots__ = ("time", "event", "message") - TIME_FIELD_NUMBER: _ClassVar[int] - EVENT_FIELD_NUMBER: _ClassVar[int] - MESSAGE_FIELD_NUMBER: _ClassVar[int] - time: _timestamp_pb2.Timestamp - event: ProvisioningEventType - message: str - def __init__(self, time: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., event: _Optional[_Union[ProvisioningEventType, str]] = ..., message: _Optional[str] = ...) -> None: ... From 11aaa65ee6eb29cd75af9a74837e95cebd505217 Mon Sep 17 00:00:00 2001 From: Stefan Majer Date: Tue, 26 May 2026 13:44:32 +0200 Subject: [PATCH 3/4] Review findings --- doc/index.html | 8 +- findings.md | 205 ------------------ go/metalstack/admin/v2/size_reservation.pb.go | 6 +- go/metalstack/api/v2/filesystem.pb.go | 82 +++---- js/metalstack/admin/v2/size_reservation_pb.js | 2 +- js/metalstack/admin/v2/size_reservation_pb.ts | 2 +- js/metalstack/api/v2/filesystem_pb.d.ts | 16 +- js/metalstack/api/v2/filesystem_pb.js | 8 +- js/metalstack/api/v2/filesystem_pb.ts | 18 +- .../admin/v2/size_reservation.proto | 1 + proto/metalstack/api/v2/filesystem.proto | 6 +- .../admin/v2/size_reservation_pb2.py | 30 +-- python/metalstack/api/v2/filesystem_pb2.py | 80 +++---- python/metalstack/api/v2/filesystem_pb2.pyi | 6 +- 14 files changed, 133 insertions(+), 337 deletions(-) delete mode 100644 findings.md diff --git a/doc/index.html b/doc/index.html index a3305fad..4a82891c 100644 --- a/doc/index.html +++ b/doc/index.html @@ -675,7 +675,7 @@

    Table of Contents

  • - MMatchMachine + MMatchMachineAndFilesystemLayout
  • @@ -5669,7 +5669,7 @@

    FilesystemServiceMatchR machine_and_filesystemlayout - MatchMachine + MatchMachineAndFilesystemLayout

    MachineAndFilesystemlayout

    @@ -5781,8 +5781,8 @@

    MatchImageAndSize

    -

    MatchMachine

    -

    MatchMachine

    +

    MatchMachineAndFilesystemLayout

    +

    MatchMachineAndFilesystemLayout

    diff --git a/findings.md b/findings.md deleted file mode 100644 index 81f19321..00000000 --- a/findings.md +++ /dev/null @@ -1,205 +0,0 @@ -# Proto API Findings - -Prompt: please identify inconsistencies and logical problems and write them into findings.md - -This document captures inconsistencies and logical problems identified across the proto API definitions. - ---- - -## 1. Comment Mismatches with Field / Message Purpose - -### C1. partition.proto - "Meta for this ip" on Partition message (line 27)✅ - -``` -// Meta for this ip -Meta meta = 2; -``` - -The field belongs to the `Partition` message but the comment says "ip". Should be "Meta for this partition". - -### C2. partition.proto - "Ip the partition" on PartitionServiceGetResponse (line 87)✅ - -``` -// Ip the partition -Machine machine = 1; -``` -Comment says "Ip" instead of "Partition". - -### C3. partition.proto - "Ips the partitions" on PartitionServiceListResponse (line 92)✅ -``` -// Ips the partitions -repeated Machine machines = 1; -``` -Comment says "Ips" instead of "Partitions". - -### C4. image.proto - Multiple wrong references ("imageLayout" and "ip")✅ -- Line 70: `// Id of this imageLayout` should say "this image" -- Line 73: `// Meta for this ip` should say "this image" -- Lines 76-78: `// Name of this imageLayout` and `// Description of this imageLayout` should say "this image" - -### C5. project.proto - Delete and Update request comments say "to get"✅ -- Line 191 (`ProjectServiceDeleteRequest`, `uuid` field): `// Project is the uuid of the project to get` should say "to delete" -- Line 203 (`ProjectServiceUpdateRequest`, `uuid` field): same comment, should say "to update" - -### C6. version.proto comments (lines 22-27) - Validation misuse -All four fields (`version`, `revision`, `git_sha1`, `build_date`) use `is_description` which is semantically wrong. These are structured data (semantic version, revision, git SHA1, build date), not free-form description text. - -### C7. machine.proto - `firewall_spec` non-optional with conditional comment -- Line 147-148: `FirewallSpec firewall_spec = 18;` is non-optional, but the comment says `"if allocationType is firewall"`. Since it's not optional, an empty `FirewallSpec` is always sent regardless of `allocation_type`, making the conditional comment misleading. - -### C8. response messages say "request payload"✅ -All machine response messages incorrectly say "request payload" in their comments: -- `MachineServiceGetResponse` (line 73): "request payload" → "response payload" -- `MachineServiceCreateResponse` (line 158): same -- `MachineServiceUpdateResponse` (line 198): same -- `MachineServiceListResponse` (line 212): same -- `MachineServiceDeleteResponse` (line 226): same -- Same pattern in admin/v2/machine.proto lines 57 and 72 - -### C9. machine.proto - "deleteds" typo (line 228)✅ -``` -// Machine which was deleteds -``` - -### C10. common.proto - "Labels consists labels" (line 125) -``` -// Labels consists labels -``` - -### C11. common.proto - "infra role" vs "machine role" (line 104)✅ -``` -// MachineRole are used to define which infra role a microservice must provide to call this method -``` -Should say "which **machine** role" since the extension is for `MachineRole`. - -### C12. project.proto - Wrong type in comment (line 232)✅ -``` -// ProjectServiceInviteRequest is the response payload to a invite member request -``` -Comment says "ProjectServiceInviteRequest" but this is the `InviteResponse` message. - -### C13. project.proto - Wrong type in comment (line 306)✅ -``` -// ProjectServiceInvitesListResponse is the response payload to a accept invite request -``` -Comment says "InvitesListResponse" but this is the `InviteAcceptResponse` message. - -### C14. tenant.proto - Wrong type in comment (line 292)✅ -``` -// TenantServiceInvitesListResponse is the response payload to a accept invite request -``` -Same issue as C13. - -### C15. ip.proto - Awkward comment (lines 121-122)✅ -``` -// Ip the ip to update -``` -Should read "ID of the IP to update" or "IP address to update". - -### C16. machine.proto - "overrules" nonstandard word (line 85)✅ -``` -// this field overrules size and partition. -``` -Should be "overrides" or "takes precedence over". - -### C17. admin/v2/machine.proto - Grammar errors (line 105)✅ -``` -// Query to list one ore more bmcs of more machines -``` -"ore" → "or", "many machines" likely intended instead of "more machines". - -### C18. machine.proto - "store" should be "stored" (lines 112, 178, 332)✅ -``` -// At most 50 keys can be store. -``` -Should be "stored". - -### C19. predefined_rules.proto - "macadress" typo (line 11)✅ -Missing second "s": should be "macaddress". - ---- - -## 2. Validation Rule Misuse - -### V1. machine.proto - BMC fields use `is_description` (lines 279-287) -`MachineBMC` has six fields (`user`, `password`, `interface`, `version`, `power_state`, `address`) all validated with `is_description` (a rule meaning `size() <= 256`). This is wrong: -- `user` (BMC username) should use `is_name` or a dedicated username rule -- `password` should use min/max length validation -- `interface` should use a network interface name validation rule -- `version` should use a version-like pattern validation -- `power_state` should have a reasonable length constraint -- `address` at line 289 already uses `host_and_port` which is correct — only 5 of 6 fields are misvalidated - -### V2. machine.proto - BIOS fields use `is_description` (lines 579-581) -`MachineBios` fields `version`, `vendor`, and `date` all use `is_description`. These are BIOS identifiers, not descriptions. - -### V3. machine.proto - FRU fields all use `is_description` (lines 593-607) -All eight fields in `MachineFRU` (`chassis_part_number`, `chassis_part_serial`, `board_mfg`, `board_mfg_serial`, `board_part_number`, `product_manufacturer`, `product_part_number`, `product_serial`) use `is_description`. These are FRU identifiers. - -### V4. machine.proto - version.proto style issues -Same systematic misuse of `is_description` as in V1 above, applied to BIOS and FRU hardware identifiers that are structured data, not free-form descriptions. - -### V5. v2/size_imageconstraint.proto - semver_match uses `is_description` (lines 57-58) -``` -string semver_match = 2 [(buf.validate.field).string.(metalstack.api.v2.is_description) = true]; -``` -A semver match string (e.g., `">= 20.04.20211011"`) is structured data, not a description. - -### V6. admin/v2/switch.proto - Wrong rules (lines 100, 102) -- `management_user` uses `is_name` (likely wrong for a username, should use a dedicated username rule) -- `console_command` uses `is_description` (should use command-line validation) - ---- - -## 3. Validation Gaps - -### G1. vpn.proto - No validation on VPNNode (lines 15-22)✅ -``` -message VPNNode { - uint64 id = 1; - string name = 2; - string project = 3; - repeated string ip_addresses = 4; - google.protobuf.Timestamp last_seen = 5; - bool online = 6; -} -``` -At minimum, `name` should use `is_name` and `ip_addresses` should be validated for proper IP format. - -### G2. partition.proto - Boot commandline has no validation (line 57) ✅ -``` -string commandline = 3; -``` -Kernel command lines can be long and should have max length validation. - ---- - -## 4. Functional Inconsistencies - -### F1. BMC query cannot search by hostname -- `MachineBMC.address` (machine.proto line 495): uses `host_and_port` (accepts `:` or `:`) -- `MachineBMCQuery.address` (machine.proto line 507): uses `ip` only (pure IP addresses) - -This means you can store and use a BMC with a hostname, but you **cannot query** by that hostname. The query only matches IP addresses, making hostname-based BMC lookup impossible. - -### F2. Duplicate `MachineProvisioningEvent` definitions ✅ -Two completely separate definitions exist with identical structure: -- `metalstack.api.v2.MachineProvisioningEvent` (machine.proto line 690) -- `metalstack.infra.v2.MachineProvisioningEvent` (infra/v2/event.proto line 33) - -Both have enums with identical values ("Alive", "Crashed", "PXE Booting", etc.) but different enum name prefixes. The infra/event.proto does not import machine.proto — it duplicates everything. Risk of drift. - ---- - -## 5. Cross-Version Inconsistencies - -### X1. Partition `min_items` missing in admin update -- `api/v2/size_reservation.proto` (SizeReservation): partitions have `min_items: 1` — at least one required -- `admin/v2/size_reservation.proto` (SizeReservationServiceUpdateRequest): partitions at field 5 is **missing** `min_items: 1`, allowing empty partitions in updates - ---- - -## 6. Naming Pattern Inconsistencies in filesystem.proto - -### N1. `MatchMachine` message confusing naming -The message `MatchMachine` at line 73 has a field called `filesystem_layout` which is a string parameter, but the oneof case name is `machine_and_filesystemlayout`. The naming is inconsistent — the message name and field name don't clearly communicate what this match operation does. diff --git a/go/metalstack/admin/v2/size_reservation.pb.go b/go/metalstack/admin/v2/size_reservation.pb.go index 55fbefaf..0766e801 100644 --- a/go/metalstack/admin/v2/size_reservation.pb.go +++ b/go/metalstack/admin/v2/size_reservation.pb.go @@ -453,15 +453,15 @@ const file_metalstack_admin_v2_size_reservation_proto_rawDesc = "" + "#SizeReservationServiceCreateRequest\x12M\n" + "\x10size_reservation\x18\x01 \x01(\v2\".metalstack.api.v2.SizeReservationR\x0fsizeReservation\"u\n" + "$SizeReservationServiceCreateResponse\x12M\n" + - "\x10size_reservation\x18\x01 \x01(\v2\".metalstack.api.v2.SizeReservationR\x0fsizeReservation\"\xa8\x03\n" + + "\x10size_reservation\x18\x01 \x01(\v2\".metalstack.api.v2.SizeReservationR\x0fsizeReservation\"\xaa\x03\n" + "#SizeReservationServiceUpdateRequest\x12\x18\n" + "\x02id\x18\x01 \x01(\tB\b\xbaH\x05r\x03\xb0\x01\x01R\x02id\x12$\n" + "\x04name\x18\x02 \x01(\tB\v\xbaH\br\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x04name\x88\x01\x01\x122\n" + "\vdescription\x18\x03 \x01(\tB\v\xbaH\br\x06ȳ\xae\xb1\x02\x01H\x01R\vdescription\x88\x01\x01\x12F\n" + "\vupdate_meta\x18\x04 \x01(\v2\x1d.metalstack.api.v2.UpdateMetaB\x06\xbaH\x03\xc8\x01\x01R\n" + - "updateMeta\x122\n" + + "updateMeta\x124\n" + "\n" + - "partitions\x18\x05 \x03(\tB\x12\xbaH\x0f\x92\x01\f\x18\x01\"\br\x06г\xae\xb1\x02\x01R\n" + + "partitions\x18\x05 \x03(\tB\x14\xbaH\x11\x92\x01\x0e\b\x01\x18\x01\"\br\x06г\xae\xb1\x02\x01R\n" + "partitions\x12$\n" + "\x06amount\x18\x06 \x01(\x05B\a\xbaH\x04\x1a\x02 \x00H\x02R\x06amount\x88\x01\x01\x12<\n" + "\x06labels\x18\a \x01(\v2\x1f.metalstack.api.v2.UpdateLabelsH\x03R\x06labels\x88\x01\x01B\a\n" + diff --git a/go/metalstack/api/v2/filesystem.pb.go b/go/metalstack/api/v2/filesystem.pb.go index dea6fc7c..a948ab22 100644 --- a/go/metalstack/api/v2/filesystem.pb.go +++ b/go/metalstack/api/v2/filesystem.pb.go @@ -507,7 +507,7 @@ func (x *FilesystemServiceMatchRequest) GetSizeAndImage() *MatchImageAndSize { return nil } -func (x *FilesystemServiceMatchRequest) GetMachineAndFilesystemlayout() *MatchMachine { +func (x *FilesystemServiceMatchRequest) GetMachineAndFilesystemlayout() *MatchMachineAndFilesystemLayout { if x != nil { if x, ok := x.Match.(*FilesystemServiceMatchRequest_MachineAndFilesystemlayout); ok { return x.MachineAndFilesystemlayout @@ -527,7 +527,7 @@ type FilesystemServiceMatchRequest_SizeAndImage struct { type FilesystemServiceMatchRequest_MachineAndFilesystemlayout struct { // MachineAndFilesystemlayout - MachineAndFilesystemlayout *MatchMachine `protobuf:"bytes,2,opt,name=machine_and_filesystemlayout,json=machineAndFilesystemlayout,proto3,oneof"` + MachineAndFilesystemlayout *MatchMachineAndFilesystemLayout `protobuf:"bytes,2,opt,name=machine_and_filesystemlayout,json=machineAndFilesystemlayout,proto3,oneof"` } func (*FilesystemServiceMatchRequest_SizeAndImage) isFilesystemServiceMatchRequest_Match() {} @@ -590,8 +590,8 @@ func (x *MatchImageAndSize) GetImage() string { return "" } -// MatchMachine -type MatchMachine struct { +// 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"` @@ -601,20 +601,20 @@ type MatchMachine struct { sizeCache protoimpl.SizeCache } -func (x *MatchMachine) Reset() { - *x = MatchMachine{} +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 *MatchMachine) String() string { +func (x *MatchMachineAndFilesystemLayout) String() string { return protoimpl.X.MessageStringOf(x) } -func (*MatchMachine) ProtoMessage() {} +func (*MatchMachineAndFilesystemLayout) ProtoMessage() {} -func (x *MatchMachine) ProtoReflect() protoreflect.Message { +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)) @@ -626,19 +626,19 @@ func (x *MatchMachine) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use MatchMachine.ProtoReflect.Descriptor instead. -func (*MatchMachine) Descriptor() ([]byte, []int) { +// Deprecated: Use MatchMachineAndFilesystemLayout.ProtoReflect.Descriptor instead. +func (*MatchMachineAndFilesystemLayout) Descriptor() ([]byte, []int) { return file_metalstack_api_v2_filesystem_proto_rawDescGZIP(), []int{6} } -func (x *MatchMachine) GetMachine() string { +func (x *MatchMachineAndFilesystemLayout) GetMachine() string { if x != nil { return x.Machine } return "" } -func (x *MatchMachine) GetFilesystemLayout() string { +func (x *MatchMachineAndFilesystemLayout) GetFilesystemLayout() string { if x != nil { return x.FilesystemLayout } @@ -1342,15 +1342,15 @@ 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\"\xdb\x01\n" + + "\x12filesystem_layouts\x18\x01 \x03(\v2#.metalstack.api.v2.FilesystemLayoutR\x11filesystemLayouts\"\xee\x01\n" + "\x1dFilesystemServiceMatchRequest\x12L\n" + - "\x0esize_and_image\x18\x01 \x01(\v2$.metalstack.api.v2.MatchImageAndSizeH\x00R\fsizeAndImage\x12c\n" + - "\x1cmachine_and_filesystemlayout\x18\x02 \x01(\v2\x1f.metalstack.api.v2.MatchMachineH\x00R\x1amachineAndFilesystemlayoutB\a\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\a\n" + "\x05match\"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\"l\n" + - "\fMatchMachine\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" + @@ -1466,34 +1466,34 @@ 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_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 - (*MatchMachine)(nil), // 10: metalstack.api.v2.MatchMachine - (*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 + (*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 } 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.MatchMachine + 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 diff --git a/js/metalstack/admin/v2/size_reservation_pb.js b/js/metalstack/admin/v2/size_reservation_pb.js index 6a61addf..e1fbcd43 100644 --- a/js/metalstack/admin/v2/size_reservation_pb.js +++ b/js/metalstack/admin/v2/size_reservation_pb.js @@ -9,7 +9,7 @@ import { file_metalstack_api_v2_size_reservation } from "../../api/v2/size_reser /** * Describes the file metalstack/admin/v2/size_reservation.proto. */ -export const file_metalstack_admin_v2_size_reservation = /*@__PURE__*/ fileDesc("CiptZXRhbHN0YWNrL2FkbWluL3YyL3NpemVfcmVzZXJ2YXRpb24ucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiYwojU2l6ZVJlc2VydmF0aW9uU2VydmljZUNyZWF0ZVJlcXVlc3QSPAoQc2l6ZV9yZXNlcnZhdGlvbhgBIAEoCzIiLm1ldGFsc3RhY2suYXBpLnYyLlNpemVSZXNlcnZhdGlvbiJkCiRTaXplUmVzZXJ2YXRpb25TZXJ2aWNlQ3JlYXRlUmVzcG9uc2USPAoQc2l6ZV9yZXNlcnZhdGlvbhgBIAEoCzIiLm1ldGFsc3RhY2suYXBpLnYyLlNpemVSZXNlcnZhdGlvbiLpAgojU2l6ZVJlc2VydmF0aW9uU2VydmljZVVwZGF0ZVJlcXVlc3QSFAoCaWQYASABKAlCCLpIBXIDsAEBEh4KBG5hbWUYAiABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YAyABKAlCC7pICHIGyLOusQIBSAGIAQESOgoLdXBkYXRlX21ldGEYBCABKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5VcGRhdGVNZXRhQga6SAPIAQESJgoKcGFydGl0aW9ucxgFIAMoCUISukgPkgEMGAEiCHIG0LOusQIBEhwKBmFtb3VudBgGIAEoBUIHukgEGgIgAEgCiAEBEjQKBmxhYmVscxgHIAEoCzIfLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZUxhYmVsc0gDiAEBQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIJCgdfYW1vdW50QgkKB19sYWJlbHMiZAokU2l6ZVJlc2VydmF0aW9uU2VydmljZVVwZGF0ZVJlc3BvbnNlEjwKEHNpemVfcmVzZXJ2YXRpb24YASABKAsyIi5tZXRhbHN0YWNrLmFwaS52Mi5TaXplUmVzZXJ2YXRpb24iOwojU2l6ZVJlc2VydmF0aW9uU2VydmljZURlbGV0ZVJlcXVlc3QSFAoCaWQYASABKAlCCLpIBXIDsAEBImQKJFNpemVSZXNlcnZhdGlvblNlcnZpY2VEZWxldGVSZXNwb25zZRI8ChBzaXplX3Jlc2VydmF0aW9uGAEgASgLMiIubWV0YWxzdGFjay5hcGkudjIuU2l6ZVJlc2VydmF0aW9uIlsKIVNpemVSZXNlcnZhdGlvblNlcnZpY2VMaXN0UmVxdWVzdBI2CgVxdWVyeRgBIAEoCzInLm1ldGFsc3RhY2suYXBpLnYyLlNpemVSZXNlcnZhdGlvblF1ZXJ5ImMKIlNpemVSZXNlcnZhdGlvblNlcnZpY2VMaXN0UmVzcG9uc2USPQoRc2l6ZV9yZXNlcnZhdGlvbnMYASADKAsyIi5tZXRhbHN0YWNrLmFwaS52Mi5TaXplUmVzZXJ2YXRpb24yvwQKFlNpemVSZXNlcnZhdGlvblNlcnZpY2USiAEKBkNyZWF0ZRI4Lm1ldGFsc3RhY2suYWRtaW4udjIuU2l6ZVJlc2VydmF0aW9uU2VydmljZUNyZWF0ZVJlcXVlc3QaOS5tZXRhbHN0YWNrLmFkbWluLnYyLlNpemVSZXNlcnZhdGlvblNlcnZpY2VDcmVhdGVSZXNwb25zZSIJ0vMYAQHg8xgBEogBCgZVcGRhdGUSOC5tZXRhbHN0YWNrLmFkbWluLnYyLlNpemVSZXNlcnZhdGlvblNlcnZpY2VVcGRhdGVSZXF1ZXN0GjkubWV0YWxzdGFjay5hZG1pbi52Mi5TaXplUmVzZXJ2YXRpb25TZXJ2aWNlVXBkYXRlUmVzcG9uc2UiCdLzGAEB4PMYARKIAQoGRGVsZXRlEjgubWV0YWxzdGFjay5hZG1pbi52Mi5TaXplUmVzZXJ2YXRpb25TZXJ2aWNlRGVsZXRlUmVxdWVzdBo5Lm1ldGFsc3RhY2suYWRtaW4udjIuU2l6ZVJlc2VydmF0aW9uU2VydmljZURlbGV0ZVJlc3BvbnNlIgnS8xgBAeDzGAESgwEKBExpc3QSNi5tZXRhbHN0YWNrLmFkbWluLnYyLlNpemVSZXNlcnZhdGlvblNlcnZpY2VMaXN0UmVxdWVzdBo3Lm1ldGFsc3RhY2suYWRtaW4udjIuU2l6ZVJlc2VydmF0aW9uU2VydmljZUxpc3RSZXNwb25zZSIK0vMYAgEC4PMYAkLYAQoXY29tLm1ldGFsc3RhY2suYWRtaW4udjJCFFNpemVSZXNlcnZhdGlvblByb3RvUAFaOWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYWRtaW4vdjI7YWRtaW52MqICA01BWKoCE01ldGFsc3RhY2suQWRtaW4uVjLKAhNNZXRhbHN0YWNrXEFkbWluXFYy4gIfTWV0YWxzdGFja1xBZG1pblxWMlxHUEJNZXRhZGF0YeoCFU1ldGFsc3RhY2s6OkFkbWluOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_size_reservation]); +export const file_metalstack_admin_v2_size_reservation = /*@__PURE__*/ fileDesc("CiptZXRhbHN0YWNrL2FkbWluL3YyL3NpemVfcmVzZXJ2YXRpb24ucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiYwojU2l6ZVJlc2VydmF0aW9uU2VydmljZUNyZWF0ZVJlcXVlc3QSPAoQc2l6ZV9yZXNlcnZhdGlvbhgBIAEoCzIiLm1ldGFsc3RhY2suYXBpLnYyLlNpemVSZXNlcnZhdGlvbiJkCiRTaXplUmVzZXJ2YXRpb25TZXJ2aWNlQ3JlYXRlUmVzcG9uc2USPAoQc2l6ZV9yZXNlcnZhdGlvbhgBIAEoCzIiLm1ldGFsc3RhY2suYXBpLnYyLlNpemVSZXNlcnZhdGlvbiLrAgojU2l6ZVJlc2VydmF0aW9uU2VydmljZVVwZGF0ZVJlcXVlc3QSFAoCaWQYASABKAlCCLpIBXIDsAEBEh4KBG5hbWUYAiABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YAyABKAlCC7pICHIGyLOusQIBSAGIAQESOgoLdXBkYXRlX21ldGEYBCABKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5VcGRhdGVNZXRhQga6SAPIAQESKAoKcGFydGl0aW9ucxgFIAMoCUIUukgRkgEOCAEYASIIcgbQs66xAgESHAoGYW1vdW50GAYgASgFQge6SAQaAiAASAKIAQESNAoGbGFiZWxzGAcgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuVXBkYXRlTGFiZWxzSAOIAQFCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uQgkKB19hbW91bnRCCQoHX2xhYmVscyJkCiRTaXplUmVzZXJ2YXRpb25TZXJ2aWNlVXBkYXRlUmVzcG9uc2USPAoQc2l6ZV9yZXNlcnZhdGlvbhgBIAEoCzIiLm1ldGFsc3RhY2suYXBpLnYyLlNpemVSZXNlcnZhdGlvbiI7CiNTaXplUmVzZXJ2YXRpb25TZXJ2aWNlRGVsZXRlUmVxdWVzdBIUCgJpZBgBIAEoCUIIukgFcgOwAQEiZAokU2l6ZVJlc2VydmF0aW9uU2VydmljZURlbGV0ZVJlc3BvbnNlEjwKEHNpemVfcmVzZXJ2YXRpb24YASABKAsyIi5tZXRhbHN0YWNrLmFwaS52Mi5TaXplUmVzZXJ2YXRpb24iWwohU2l6ZVJlc2VydmF0aW9uU2VydmljZUxpc3RSZXF1ZXN0EjYKBXF1ZXJ5GAEgASgLMicubWV0YWxzdGFjay5hcGkudjIuU2l6ZVJlc2VydmF0aW9uUXVlcnkiYwoiU2l6ZVJlc2VydmF0aW9uU2VydmljZUxpc3RSZXNwb25zZRI9ChFzaXplX3Jlc2VydmF0aW9ucxgBIAMoCzIiLm1ldGFsc3RhY2suYXBpLnYyLlNpemVSZXNlcnZhdGlvbjK/BAoWU2l6ZVJlc2VydmF0aW9uU2VydmljZRKIAQoGQ3JlYXRlEjgubWV0YWxzdGFjay5hZG1pbi52Mi5TaXplUmVzZXJ2YXRpb25TZXJ2aWNlQ3JlYXRlUmVxdWVzdBo5Lm1ldGFsc3RhY2suYWRtaW4udjIuU2l6ZVJlc2VydmF0aW9uU2VydmljZUNyZWF0ZVJlc3BvbnNlIgnS8xgBAeDzGAESiAEKBlVwZGF0ZRI4Lm1ldGFsc3RhY2suYWRtaW4udjIuU2l6ZVJlc2VydmF0aW9uU2VydmljZVVwZGF0ZVJlcXVlc3QaOS5tZXRhbHN0YWNrLmFkbWluLnYyLlNpemVSZXNlcnZhdGlvblNlcnZpY2VVcGRhdGVSZXNwb25zZSIJ0vMYAQHg8xgBEogBCgZEZWxldGUSOC5tZXRhbHN0YWNrLmFkbWluLnYyLlNpemVSZXNlcnZhdGlvblNlcnZpY2VEZWxldGVSZXF1ZXN0GjkubWV0YWxzdGFjay5hZG1pbi52Mi5TaXplUmVzZXJ2YXRpb25TZXJ2aWNlRGVsZXRlUmVzcG9uc2UiCdLzGAEB4PMYARKDAQoETGlzdBI2Lm1ldGFsc3RhY2suYWRtaW4udjIuU2l6ZVJlc2VydmF0aW9uU2VydmljZUxpc3RSZXF1ZXN0GjcubWV0YWxzdGFjay5hZG1pbi52Mi5TaXplUmVzZXJ2YXRpb25TZXJ2aWNlTGlzdFJlc3BvbnNlIgrS8xgCAQLg8xgCQtgBChdjb20ubWV0YWxzdGFjay5hZG1pbi52MkIUU2l6ZVJlc2VydmF0aW9uUHJvdG9QAVo5Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9hZG1pbi92MjthZG1pbnYyogIDTUFYqgITTWV0YWxzdGFjay5BZG1pbi5WMsoCE01ldGFsc3RhY2tcQWRtaW5cVjLiAh9NZXRhbHN0YWNrXEFkbWluXFYyXEdQQk1ldGFkYXRh6gIVTWV0YWxzdGFjazo6QWRtaW46OlYyYgZwcm90bzM", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_size_reservation]); /** * Describes the message metalstack.admin.v2.SizeReservationServiceCreateRequest. * Use `create(SizeReservationServiceCreateRequestSchema)` to create a new message. diff --git a/js/metalstack/admin/v2/size_reservation_pb.ts b/js/metalstack/admin/v2/size_reservation_pb.ts index b618a3c6..6ac22173 100644 --- a/js/metalstack/admin/v2/size_reservation_pb.ts +++ b/js/metalstack/admin/v2/size_reservation_pb.ts @@ -16,7 +16,7 @@ import type { Message } from "@bufbuild/protobuf"; * Describes the file metalstack/admin/v2/size_reservation.proto. */ export const file_metalstack_admin_v2_size_reservation: GenFile = /*@__PURE__*/ - fileDesc("CiptZXRhbHN0YWNrL2FkbWluL3YyL3NpemVfcmVzZXJ2YXRpb24ucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiYwojU2l6ZVJlc2VydmF0aW9uU2VydmljZUNyZWF0ZVJlcXVlc3QSPAoQc2l6ZV9yZXNlcnZhdGlvbhgBIAEoCzIiLm1ldGFsc3RhY2suYXBpLnYyLlNpemVSZXNlcnZhdGlvbiJkCiRTaXplUmVzZXJ2YXRpb25TZXJ2aWNlQ3JlYXRlUmVzcG9uc2USPAoQc2l6ZV9yZXNlcnZhdGlvbhgBIAEoCzIiLm1ldGFsc3RhY2suYXBpLnYyLlNpemVSZXNlcnZhdGlvbiLpAgojU2l6ZVJlc2VydmF0aW9uU2VydmljZVVwZGF0ZVJlcXVlc3QSFAoCaWQYASABKAlCCLpIBXIDsAEBEh4KBG5hbWUYAiABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YAyABKAlCC7pICHIGyLOusQIBSAGIAQESOgoLdXBkYXRlX21ldGEYBCABKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5VcGRhdGVNZXRhQga6SAPIAQESJgoKcGFydGl0aW9ucxgFIAMoCUISukgPkgEMGAEiCHIG0LOusQIBEhwKBmFtb3VudBgGIAEoBUIHukgEGgIgAEgCiAEBEjQKBmxhYmVscxgHIAEoCzIfLm1ldGFsc3RhY2suYXBpLnYyLlVwZGF0ZUxhYmVsc0gDiAEBQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIJCgdfYW1vdW50QgkKB19sYWJlbHMiZAokU2l6ZVJlc2VydmF0aW9uU2VydmljZVVwZGF0ZVJlc3BvbnNlEjwKEHNpemVfcmVzZXJ2YXRpb24YASABKAsyIi5tZXRhbHN0YWNrLmFwaS52Mi5TaXplUmVzZXJ2YXRpb24iOwojU2l6ZVJlc2VydmF0aW9uU2VydmljZURlbGV0ZVJlcXVlc3QSFAoCaWQYASABKAlCCLpIBXIDsAEBImQKJFNpemVSZXNlcnZhdGlvblNlcnZpY2VEZWxldGVSZXNwb25zZRI8ChBzaXplX3Jlc2VydmF0aW9uGAEgASgLMiIubWV0YWxzdGFjay5hcGkudjIuU2l6ZVJlc2VydmF0aW9uIlsKIVNpemVSZXNlcnZhdGlvblNlcnZpY2VMaXN0UmVxdWVzdBI2CgVxdWVyeRgBIAEoCzInLm1ldGFsc3RhY2suYXBpLnYyLlNpemVSZXNlcnZhdGlvblF1ZXJ5ImMKIlNpemVSZXNlcnZhdGlvblNlcnZpY2VMaXN0UmVzcG9uc2USPQoRc2l6ZV9yZXNlcnZhdGlvbnMYASADKAsyIi5tZXRhbHN0YWNrLmFwaS52Mi5TaXplUmVzZXJ2YXRpb24yvwQKFlNpemVSZXNlcnZhdGlvblNlcnZpY2USiAEKBkNyZWF0ZRI4Lm1ldGFsc3RhY2suYWRtaW4udjIuU2l6ZVJlc2VydmF0aW9uU2VydmljZUNyZWF0ZVJlcXVlc3QaOS5tZXRhbHN0YWNrLmFkbWluLnYyLlNpemVSZXNlcnZhdGlvblNlcnZpY2VDcmVhdGVSZXNwb25zZSIJ0vMYAQHg8xgBEogBCgZVcGRhdGUSOC5tZXRhbHN0YWNrLmFkbWluLnYyLlNpemVSZXNlcnZhdGlvblNlcnZpY2VVcGRhdGVSZXF1ZXN0GjkubWV0YWxzdGFjay5hZG1pbi52Mi5TaXplUmVzZXJ2YXRpb25TZXJ2aWNlVXBkYXRlUmVzcG9uc2UiCdLzGAEB4PMYARKIAQoGRGVsZXRlEjgubWV0YWxzdGFjay5hZG1pbi52Mi5TaXplUmVzZXJ2YXRpb25TZXJ2aWNlRGVsZXRlUmVxdWVzdBo5Lm1ldGFsc3RhY2suYWRtaW4udjIuU2l6ZVJlc2VydmF0aW9uU2VydmljZURlbGV0ZVJlc3BvbnNlIgnS8xgBAeDzGAESgwEKBExpc3QSNi5tZXRhbHN0YWNrLmFkbWluLnYyLlNpemVSZXNlcnZhdGlvblNlcnZpY2VMaXN0UmVxdWVzdBo3Lm1ldGFsc3RhY2suYWRtaW4udjIuU2l6ZVJlc2VydmF0aW9uU2VydmljZUxpc3RSZXNwb25zZSIK0vMYAgEC4PMYAkLYAQoXY29tLm1ldGFsc3RhY2suYWRtaW4udjJCFFNpemVSZXNlcnZhdGlvblByb3RvUAFaOWdpdGh1Yi5jb20vbWV0YWwtc3RhY2svYXBpL2dvL21ldGFsc3RhY2svYWRtaW4vdjI7YWRtaW52MqICA01BWKoCE01ldGFsc3RhY2suQWRtaW4uVjLKAhNNZXRhbHN0YWNrXEFkbWluXFYy4gIfTWV0YWxzdGFja1xBZG1pblxWMlxHUEJNZXRhZGF0YeoCFU1ldGFsc3RhY2s6OkFkbWluOjpWMmIGcHJvdG8z", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_size_reservation]); + fileDesc("CiptZXRhbHN0YWNrL2FkbWluL3YyL3NpemVfcmVzZXJ2YXRpb24ucHJvdG8SE21ldGFsc3RhY2suYWRtaW4udjIiYwojU2l6ZVJlc2VydmF0aW9uU2VydmljZUNyZWF0ZVJlcXVlc3QSPAoQc2l6ZV9yZXNlcnZhdGlvbhgBIAEoCzIiLm1ldGFsc3RhY2suYXBpLnYyLlNpemVSZXNlcnZhdGlvbiJkCiRTaXplUmVzZXJ2YXRpb25TZXJ2aWNlQ3JlYXRlUmVzcG9uc2USPAoQc2l6ZV9yZXNlcnZhdGlvbhgBIAEoCzIiLm1ldGFsc3RhY2suYXBpLnYyLlNpemVSZXNlcnZhdGlvbiLrAgojU2l6ZVJlc2VydmF0aW9uU2VydmljZVVwZGF0ZVJlcXVlc3QSFAoCaWQYASABKAlCCLpIBXIDsAEBEh4KBG5hbWUYAiABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YAyABKAlCC7pICHIGyLOusQIBSAGIAQESOgoLdXBkYXRlX21ldGEYBCABKAsyHS5tZXRhbHN0YWNrLmFwaS52Mi5VcGRhdGVNZXRhQga6SAPIAQESKAoKcGFydGl0aW9ucxgFIAMoCUIUukgRkgEOCAEYASIIcgbQs66xAgESHAoGYW1vdW50GAYgASgFQge6SAQaAiAASAKIAQESNAoGbGFiZWxzGAcgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuVXBkYXRlTGFiZWxzSAOIAQFCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uQgkKB19hbW91bnRCCQoHX2xhYmVscyJkCiRTaXplUmVzZXJ2YXRpb25TZXJ2aWNlVXBkYXRlUmVzcG9uc2USPAoQc2l6ZV9yZXNlcnZhdGlvbhgBIAEoCzIiLm1ldGFsc3RhY2suYXBpLnYyLlNpemVSZXNlcnZhdGlvbiI7CiNTaXplUmVzZXJ2YXRpb25TZXJ2aWNlRGVsZXRlUmVxdWVzdBIUCgJpZBgBIAEoCUIIukgFcgOwAQEiZAokU2l6ZVJlc2VydmF0aW9uU2VydmljZURlbGV0ZVJlc3BvbnNlEjwKEHNpemVfcmVzZXJ2YXRpb24YASABKAsyIi5tZXRhbHN0YWNrLmFwaS52Mi5TaXplUmVzZXJ2YXRpb24iWwohU2l6ZVJlc2VydmF0aW9uU2VydmljZUxpc3RSZXF1ZXN0EjYKBXF1ZXJ5GAEgASgLMicubWV0YWxzdGFjay5hcGkudjIuU2l6ZVJlc2VydmF0aW9uUXVlcnkiYwoiU2l6ZVJlc2VydmF0aW9uU2VydmljZUxpc3RSZXNwb25zZRI9ChFzaXplX3Jlc2VydmF0aW9ucxgBIAMoCzIiLm1ldGFsc3RhY2suYXBpLnYyLlNpemVSZXNlcnZhdGlvbjK/BAoWU2l6ZVJlc2VydmF0aW9uU2VydmljZRKIAQoGQ3JlYXRlEjgubWV0YWxzdGFjay5hZG1pbi52Mi5TaXplUmVzZXJ2YXRpb25TZXJ2aWNlQ3JlYXRlUmVxdWVzdBo5Lm1ldGFsc3RhY2suYWRtaW4udjIuU2l6ZVJlc2VydmF0aW9uU2VydmljZUNyZWF0ZVJlc3BvbnNlIgnS8xgBAeDzGAESiAEKBlVwZGF0ZRI4Lm1ldGFsc3RhY2suYWRtaW4udjIuU2l6ZVJlc2VydmF0aW9uU2VydmljZVVwZGF0ZVJlcXVlc3QaOS5tZXRhbHN0YWNrLmFkbWluLnYyLlNpemVSZXNlcnZhdGlvblNlcnZpY2VVcGRhdGVSZXNwb25zZSIJ0vMYAQHg8xgBEogBCgZEZWxldGUSOC5tZXRhbHN0YWNrLmFkbWluLnYyLlNpemVSZXNlcnZhdGlvblNlcnZpY2VEZWxldGVSZXF1ZXN0GjkubWV0YWxzdGFjay5hZG1pbi52Mi5TaXplUmVzZXJ2YXRpb25TZXJ2aWNlRGVsZXRlUmVzcG9uc2UiCdLzGAEB4PMYARKDAQoETGlzdBI2Lm1ldGFsc3RhY2suYWRtaW4udjIuU2l6ZVJlc2VydmF0aW9uU2VydmljZUxpc3RSZXF1ZXN0GjcubWV0YWxzdGFjay5hZG1pbi52Mi5TaXplUmVzZXJ2YXRpb25TZXJ2aWNlTGlzdFJlc3BvbnNlIgrS8xgCAQLg8xgCQtgBChdjb20ubWV0YWxzdGFjay5hZG1pbi52MkIUU2l6ZVJlc2VydmF0aW9uUHJvdG9QAVo5Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9hZG1pbi92MjthZG1pbnYyogIDTUFYqgITTWV0YWxzdGFjay5BZG1pbi5WMsoCE01ldGFsc3RhY2tcQWRtaW5cVjLiAh9NZXRhbHN0YWNrXEFkbWluXFYyXEdQQk1ldGFkYXRh6gIVTWV0YWxzdGFjazo6QWRtaW46OlYyYgZwcm90bzM", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules, file_metalstack_api_v2_size_reservation]); /** * SizeReservationServiceCreateRequest is the request payload for creating a size reservation. diff --git a/js/metalstack/api/v2/filesystem_pb.d.ts b/js/metalstack/api/v2/filesystem_pb.d.ts index 83e88f3f..28834311 100644 --- a/js/metalstack/api/v2/filesystem_pb.d.ts +++ b/js/metalstack/api/v2/filesystem_pb.d.ts @@ -101,9 +101,9 @@ export type FilesystemServiceMatchRequest = Message<"metalstack.api.v2.Filesyste /** * MachineAndFilesystemlayout * - * @generated from field: metalstack.api.v2.MatchMachine machine_and_filesystemlayout = 2; + * @generated from field: metalstack.api.v2.MatchMachineAndFilesystemLayout machine_and_filesystemlayout = 2; */ - value: MatchMachine; + value: MatchMachineAndFilesystemLayout; case: "machineAndFilesystemlayout"; } | { case: undefined; @@ -140,11 +140,11 @@ export type MatchImageAndSize = Message<"metalstack.api.v2.MatchImageAndSize"> & */ export declare const MatchImageAndSizeSchema: GenMessage; /** - * MatchMachine + * MatchMachineAndFilesystemLayout * - * @generated from message metalstack.api.v2.MatchMachine + * @generated from message metalstack.api.v2.MatchMachineAndFilesystemLayout */ -export type MatchMachine = Message<"metalstack.api.v2.MatchMachine"> & { +export type MatchMachineAndFilesystemLayout = Message<"metalstack.api.v2.MatchMachineAndFilesystemLayout"> & { /** * Machine to check * @@ -159,10 +159,10 @@ export type MatchMachine = Message<"metalstack.api.v2.MatchMachine"> & { filesystemLayout: string; }; /** - * Describes the message metalstack.api.v2.MatchMachine. - * Use `create(MatchMachineSchema)` to create a new message. + * Describes the message metalstack.api.v2.MatchMachineAndFilesystemLayout. + * Use `create(MatchMachineAndFilesystemLayoutSchema)` to create a new message. */ -export declare const MatchMachineSchema: GenMessage; +export declare const MatchMachineAndFilesystemLayoutSchema: GenMessage; /** * FilesystemServiceMatchResponse * diff --git a/js/metalstack/api/v2/filesystem_pb.js b/js/metalstack/api/v2/filesystem_pb.js index 44bbed0d..ca92ea73 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("CiJtZXRhbHN0YWNrL2FwaS92Mi9maWxlc3lzdGVtLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiI2ChtGaWxlc3lzdGVtU2VydmljZUdldFJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIkMKHEZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQFCBQoDX2lkIl4KHEZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0ImAKHUZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlc3BvbnNlEj8KEmZpbGVzeXN0ZW1fbGF5b3V0cxgBIAMoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQisQEKHUZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXF1ZXN0Ej4KDnNpemVfYW5kX2ltYWdlGAEgASgLMiQubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hJbWFnZUFuZFNpemVIABJHChxtYWNoaW5lX2FuZF9maWxlc3lzdGVtbGF5b3V0GAIgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hNYWNoaW5lSABCBwoFbWF0Y2giSgoRTWF0Y2hJbWFnZUFuZFNpemUSGQoEc2l6ZRgBIAEoCUILukgIcgbAs66xAgESGgoFaW1hZ2UYAiABKAlCC7pICHIGwLOusQIBIlEKDE1hdGNoTWFjaGluZRIZCgdtYWNoaW5lGAEgASgJQgi6SAVyA7ABARImChFmaWxlc3lzdGVtX2xheW91dBgCIAEoCUILukgIcgbAs66xAgEiYAoeRmlsZXN5c3RlbVNlcnZpY2VNYXRjaFJlc3BvbnNlEj4KEWZpbGVzeXN0ZW1fbGF5b3V0GAEgASgLMiMubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dCLsAwoQRmlsZXN5c3RlbUxheW91dBIXCgJpZBgBIAEoCUILukgIcgbAs66xAgESJQoEbWV0YRgCIAEoCzIXLm1ldGFsc3RhY2suYXBpLnYyLk1ldGESHgoEbmFtZRgDIAEoCUILukgIcgbAs66xAgFIAIgBARIlCgtkZXNjcmlwdGlvbhgEIAEoCUILukgIcgbIs66xAgFIAYgBARIyCgtmaWxlc3lzdGVtcxgFIAMoCzIdLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW0SJgoFZGlza3MYBiADKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5EaXNrEiUKBHJhaWQYByADKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5SYWlkEjUKDXZvbHVtZV9ncm91cHMYCCADKAsyHi5tZXRhbHN0YWNrLmFwaS52Mi5Wb2x1bWVHcm91cBI5Cg9sb2dpY2FsX3ZvbHVtZXMYCSADKAsyIC5tZXRhbHN0YWNrLmFwaS52Mi5Mb2dpY2FsVm9sdW1lEkMKC2NvbnN0cmFpbnRzGAogASgLMi4ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dENvbnN0cmFpbnRzQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbiKnAQobRmlsZXN5c3RlbUxheW91dENvbnN0cmFpbnRzEg0KBXNpemVzGAEgAygJEkoKBmltYWdlcxgCIAMoCzI6Lm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXRDb25zdHJhaW50cy5JbWFnZXNFbnRyeRotCgtJbWFnZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIuwCCgpGaWxlc3lzdGVtEhsKBmRldmljZRgBIAEoCUILukgIcgbAs66xAgESNgoGZm9ybWF0GAIgASgOMhkubWV0YWxzdGFjay5hcGkudjIuRm9ybWF0Qgu6SAjIAQGCAQIQARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEh0KBHBhdGgYBSABKAlCCrpIB3IFEAEYgCBIAogBARIeCgVsYWJlbBgGIAEoCUIKukgHcgUQAhiAAUgDiAEBEioKDW1vdW50X29wdGlvbnMYByADKAlCE7pIEJIBDRAgGAEiB3IFEAEYgAESKwoOY3JlYXRlX29wdGlvbnMYCCADKAlCE7pIEJIBDRAgGAEiB3IFEAEYgAFCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uQgcKBV9wYXRoQggKBl9sYWJlbCJYCgREaXNrEhoKBmRldmljZRgBIAEoCUIKukgHcgUQAhiAARI0CgpwYXJ0aXRpb25zGAIgAygLMiAubWV0YWxzdGFjay5hcGkudjIuRGlza1BhcnRpdGlvbiKiAQoEUmFpZBISCgphcnJheV9uYW1lGAEgASgJEg8KB2RldmljZXMYAiADKAkSOAoFbGV2ZWwYAyABKA4yHC5tZXRhbHN0YWNrLmFwaS52Mi5SYWlkTGV2ZWxCC7pICMgBAYIBAhABEisKDmNyZWF0ZV9vcHRpb25zGAQgAygJQhO6SBCSAQ0QIBgBIgdyBRABGIABEg4KBnNwYXJlcxgFIAEoBSKYAQoNRGlza1BhcnRpdGlvbhIOCgZudW1iZXIYASABKA0SEgoFbGFiZWwYAiABKAlIAIgBARIMCgRzaXplGAMgASgEEj4KCGdwdF90eXBlGAQgASgOMhoubWV0YWxzdGFjay5hcGkudjIuR1BUVHlwZUILukgIyAEBggECEAFIAYgBAUIICgZfbGFiZWxCCwoJX2dwdF90eXBlIkcKC1ZvbHVtZUdyb3VwEhkKBG5hbWUYASABKAlCC7pICHIGwLOusQIBEg8KB2RldmljZXMYAiADKAkSDAoEdGFncxgDIAMoCSKSAQoNTG9naWNhbFZvbHVtZRIZCgRuYW1lGAEgASgJQgu6SAhyBsCzrrECARIgCgx2b2x1bWVfZ3JvdXAYAiABKAlCCrpIB3IFEAIYgAESDAoEc2l6ZRgDIAEoBBI2Cghsdm1fdHlwZRgEIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLkxWTVR5cGVCCLpIBYIBAhABKoYBCgdMVk1UeXBlEhgKFExWTV9UWVBFX1VOU1BFQ0lGSUVEEAASHwoPTFZNX1RZUEVfTElORUFSEAEaCoKyGQZsaW5lYXISIQoQTFZNX1RZUEVfU1RSSVBFRBACGguCshkHc3RyaXBlZBIdCg5MVk1fVFlQRV9SQUlEMRADGgmCshkFcmFpZDEqxAEKBkZvcm1hdBIWChJGT1JNQVRfVU5TUEVDSUZJRUQQABIZCgtGT1JNQVRfVkZBVBABGgiCshkEdmZhdBIZCgtGT1JNQVRfRVhUMxACGgiCshkEZXh0MxIZCgtGT1JNQVRfRVhUNBADGgiCshkEZXh0NBIZCgtGT1JNQVRfU1dBUBAEGgiCshkEc3dhcBIbCgxGT1JNQVRfVE1QRlMQBRoJgrIZBXRtcGZzEhkKC0ZPUk1BVF9OT05FEAYaCIKyGQRub25lKqMBCgdHUFRUeXBlEhgKFEdQVF9UWVBFX1VOU1BFQ0lGSUVEEAASGwoNR1BUX1RZUEVfQk9PVBABGgiCshkEZWYwMBIcCg5HUFRfVFlQRV9MSU5VWBACGgiCshkEODMwMBIhChNHUFRfVFlQRV9MSU5VWF9SQUlEEAMaCIKyGQRmZDAwEiAKEkdQVF9UWVBFX0xJTlVYX0xWTRAEGgiCshkEOGUwMCpLCglSYWlkTGV2ZWwSGgoWUkFJRF9MRVZFTF9VTlNQRUNJRklFRBAAEhAKDFJBSURfTEVWRUxfMBABEhAKDFJBSURfTEVWRUxfMRACMvICChFGaWxlc3lzdGVtU2VydmljZRJwCgNHZXQSLi5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZUdldFJlcXVlc3QaLy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZUdldFJlc3BvbnNlIgjY8xgC4PMYAhJzCgRMaXN0Ei8ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VMaXN0UmVxdWVzdBowLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlc3BvbnNlIgjY8xgC4PMYAhJ2CgVNYXRjaBIwLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXF1ZXN0GjEubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VNYXRjaFJlc3BvbnNlIgjY8xgC4PMYAkLFAQoVY29tLm1ldGFsc3RhY2suYXBpLnYyQg9GaWxlc3lzdGVtUHJvdG9QAVo1Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9hcGkvdjI7YXBpdjKiAgNNQViqAhFNZXRhbHN0YWNrLkFwaS5WMsoCEU1ldGFsc3RhY2tcQXBpXFYy4gIdTWV0YWxzdGFja1xBcGlcVjJcR1BCTWV0YWRhdGHqAhNNZXRhbHN0YWNrOjpBcGk6OlYyYgZwcm90bzM", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules]); +export const file_metalstack_api_v2_filesystem = /*@__PURE__*/ fileDesc("CiJtZXRhbHN0YWNrL2FwaS92Mi9maWxlc3lzdGVtLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiI2ChtGaWxlc3lzdGVtU2VydmljZUdldFJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIkMKHEZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQFCBQoDX2lkIl4KHEZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0ImAKHUZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlc3BvbnNlEj8KEmZpbGVzeXN0ZW1fbGF5b3V0cxgBIAMoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQixAEKHUZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXF1ZXN0Ej4KDnNpemVfYW5kX2ltYWdlGAEgASgLMiQubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hJbWFnZUFuZFNpemVIABJaChxtYWNoaW5lX2FuZF9maWxlc3lzdGVtbGF5b3V0GAIgASgLMjIubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hNYWNoaW5lQW5kRmlsZXN5c3RlbUxheW91dEgAQgcKBW1hdGNoIkoKEU1hdGNoSW1hZ2VBbmRTaXplEhkKBHNpemUYASABKAlCC7pICHIGwLOusQIBEhoKBWltYWdlGAIgASgJQgu6SAhyBsCzrrECASJkCh9NYXRjaE1hY2hpbmVBbmRGaWxlc3lzdGVtTGF5b3V0EhkKB21hY2hpbmUYASABKAlCCLpIBXIDsAEBEiYKEWZpbGVzeXN0ZW1fbGF5b3V0GAIgASgJQgu6SAhyBsCzrrECASJgCh5GaWxlc3lzdGVtU2VydmljZU1hdGNoUmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0IuwDChBGaWxlc3lzdGVtTGF5b3V0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARIlCgRtZXRhGAIgASgLMhcubWV0YWxzdGFjay5hcGkudjIuTWV0YRIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjIKC2ZpbGVzeXN0ZW1zGAUgAygLMh0ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbRImCgVkaXNrcxgGIAMoCzIXLm1ldGFsc3RhY2suYXBpLnYyLkRpc2sSJQoEcmFpZBgHIAMoCzIXLm1ldGFsc3RhY2suYXBpLnYyLlJhaWQSNQoNdm9sdW1lX2dyb3VwcxgIIAMoCzIeLm1ldGFsc3RhY2suYXBpLnYyLlZvbHVtZUdyb3VwEjkKD2xvZ2ljYWxfdm9sdW1lcxgJIAMoCzIgLm1ldGFsc3RhY2suYXBpLnYyLkxvZ2ljYWxWb2x1bWUSQwoLY29uc3RyYWludHMYCiABKAsyLi5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0Q29uc3RyYWludHNCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uIqcBChtGaWxlc3lzdGVtTGF5b3V0Q29uc3RyYWludHMSDQoFc2l6ZXMYASADKAkSSgoGaW1hZ2VzGAIgAygLMjoubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dENvbnN0cmFpbnRzLkltYWdlc0VudHJ5Gi0KC0ltYWdlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEi7AIKCkZpbGVzeXN0ZW0SGwoGZGV2aWNlGAEgASgJQgu6SAhyBsCzrrECARI2CgZmb3JtYXQYAiABKA4yGS5tZXRhbHN0YWNrLmFwaS52Mi5Gb3JtYXRCC7pICMgBAYIBAhABEh4KBG5hbWUYAyABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSAGIAQESHQoEcGF0aBgFIAEoCUIKukgHcgUQARiAIEgCiAEBEh4KBWxhYmVsGAYgASgJQgq6SAdyBRACGIABSAOIAQESKgoNbW91bnRfb3B0aW9ucxgHIAMoCUITukgQkgENECAYASIHcgUQARiAARIrCg5jcmVhdGVfb3B0aW9ucxgIIAMoCUITukgQkgENECAYASIHcgUQARiAAUIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CBwoFX3BhdGhCCAoGX2xhYmVsIlgKBERpc2sSGgoGZGV2aWNlGAEgASgJQgq6SAdyBRACGIABEjQKCnBhcnRpdGlvbnMYAiADKAsyIC5tZXRhbHN0YWNrLmFwaS52Mi5EaXNrUGFydGl0aW9uIqIBCgRSYWlkEhIKCmFycmF5X25hbWUYASABKAkSDwoHZGV2aWNlcxgCIAMoCRI4CgVsZXZlbBgDIAEoDjIcLm1ldGFsc3RhY2suYXBpLnYyLlJhaWRMZXZlbEILukgIyAEBggECEAESKwoOY3JlYXRlX29wdGlvbnMYBCADKAlCE7pIEJIBDRAgGAEiB3IFEAEYgAESDgoGc3BhcmVzGAUgASgFIpgBCg1EaXNrUGFydGl0aW9uEg4KBm51bWJlchgBIAEoDRISCgVsYWJlbBgCIAEoCUgAiAEBEgwKBHNpemUYAyABKAQSPgoIZ3B0X3R5cGUYBCABKA4yGi5tZXRhbHN0YWNrLmFwaS52Mi5HUFRUeXBlQgu6SAjIAQGCAQIQAUgBiAEBQggKBl9sYWJlbEILCglfZ3B0X3R5cGUiRwoLVm9sdW1lR3JvdXASGQoEbmFtZRgBIAEoCUILukgIcgbAs66xAgESDwoHZGV2aWNlcxgCIAMoCRIMCgR0YWdzGAMgAygJIpIBCg1Mb2dpY2FsVm9sdW1lEhkKBG5hbWUYASABKAlCC7pICHIGwLOusQIBEiAKDHZvbHVtZV9ncm91cBgCIAEoCUIKukgHcgUQAhiAARIMCgRzaXplGAMgASgEEjYKCGx2bV90eXBlGAQgASgOMhoubWV0YWxzdGFjay5hcGkudjIuTFZNVHlwZUIIukgFggECEAEqhgEKB0xWTVR5cGUSGAoUTFZNX1RZUEVfVU5TUEVDSUZJRUQQABIfCg9MVk1fVFlQRV9MSU5FQVIQARoKgrIZBmxpbmVhchIhChBMVk1fVFlQRV9TVFJJUEVEEAIaC4KyGQdzdHJpcGVkEh0KDkxWTV9UWVBFX1JBSUQxEAMaCYKyGQVyYWlkMSrEAQoGRm9ybWF0EhYKEkZPUk1BVF9VTlNQRUNJRklFRBAAEhkKC0ZPUk1BVF9WRkFUEAEaCIKyGQR2ZmF0EhkKC0ZPUk1BVF9FWFQzEAIaCIKyGQRleHQzEhkKC0ZPUk1BVF9FWFQ0EAMaCIKyGQRleHQ0EhkKC0ZPUk1BVF9TV0FQEAQaCIKyGQRzd2FwEhsKDEZPUk1BVF9UTVBGUxAFGgmCshkFdG1wZnMSGQoLRk9STUFUX05PTkUQBhoIgrIZBG5vbmUqowEKB0dQVFR5cGUSGAoUR1BUX1RZUEVfVU5TUEVDSUZJRUQQABIbCg1HUFRfVFlQRV9CT09UEAEaCIKyGQRlZjAwEhwKDkdQVF9UWVBFX0xJTlVYEAIaCIKyGQQ4MzAwEiEKE0dQVF9UWVBFX0xJTlVYX1JBSUQQAxoIgrIZBGZkMDASIAoSR1BUX1RZUEVfTElOVVhfTFZNEAQaCIKyGQQ4ZTAwKksKCVJhaWRMZXZlbBIaChZSQUlEX0xFVkVMX1VOU1BFQ0lGSUVEEAASEAoMUkFJRF9MRVZFTF8wEAESEAoMUkFJRF9MRVZFTF8xEAIy8gIKEUZpbGVzeXN0ZW1TZXJ2aWNlEnAKA0dldBIuLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVzcG9uc2UiCNjzGALg8xgCEnMKBExpc3QSLy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZUxpc3RSZXF1ZXN0GjAubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VMaXN0UmVzcG9uc2UiCNjzGALg8xgCEnYKBU1hdGNoEjAubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VNYXRjaFJlcXVlc3QaMS5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZU1hdGNoUmVzcG9uc2UiCNjzGALg8xgCQsUBChVjb20ubWV0YWxzdGFjay5hcGkudjJCD0ZpbGVzeXN0ZW1Qcm90b1ABWjVnaXRodWIuY29tL21ldGFsLXN0YWNrL2FwaS9nby9tZXRhbHN0YWNrL2FwaS92MjthcGl2MqICA01BWKoCEU1ldGFsc3RhY2suQXBpLlYyygIRTWV0YWxzdGFja1xBcGlcVjLiAh1NZXRhbHN0YWNrXEFwaVxWMlxHUEJNZXRhZGF0YeoCE01ldGFsc3RhY2s6OkFwaTo6VjJiBnByb3RvMw", [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. @@ -40,10 +40,10 @@ export const FilesystemServiceMatchRequestSchema = /*@__PURE__*/ messageDesc(fil */ export const MatchImageAndSizeSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 5); /** - * Describes the message metalstack.api.v2.MatchMachine. - * Use `create(MatchMachineSchema)` to create a new message. + * Describes the message metalstack.api.v2.MatchMachineAndFilesystemLayout. + * Use `create(MatchMachineAndFilesystemLayoutSchema)` to create a new message. */ -export const MatchMachineSchema = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 6); +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. diff --git a/js/metalstack/api/v2/filesystem_pb.ts b/js/metalstack/api/v2/filesystem_pb.ts index 5b6340c9..26e8005a 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("CiJtZXRhbHN0YWNrL2FwaS92Mi9maWxlc3lzdGVtLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiI2ChtGaWxlc3lzdGVtU2VydmljZUdldFJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIkMKHEZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQFCBQoDX2lkIl4KHEZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0ImAKHUZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlc3BvbnNlEj8KEmZpbGVzeXN0ZW1fbGF5b3V0cxgBIAMoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQisQEKHUZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXF1ZXN0Ej4KDnNpemVfYW5kX2ltYWdlGAEgASgLMiQubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hJbWFnZUFuZFNpemVIABJHChxtYWNoaW5lX2FuZF9maWxlc3lzdGVtbGF5b3V0GAIgASgLMh8ubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hNYWNoaW5lSABCBwoFbWF0Y2giSgoRTWF0Y2hJbWFnZUFuZFNpemUSGQoEc2l6ZRgBIAEoCUILukgIcgbAs66xAgESGgoFaW1hZ2UYAiABKAlCC7pICHIGwLOusQIBIlEKDE1hdGNoTWFjaGluZRIZCgdtYWNoaW5lGAEgASgJQgi6SAVyA7ABARImChFmaWxlc3lzdGVtX2xheW91dBgCIAEoCUILukgIcgbAs66xAgEiYAoeRmlsZXN5c3RlbVNlcnZpY2VNYXRjaFJlc3BvbnNlEj4KEWZpbGVzeXN0ZW1fbGF5b3V0GAEgASgLMiMubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dCLsAwoQRmlsZXN5c3RlbUxheW91dBIXCgJpZBgBIAEoCUILukgIcgbAs66xAgESJQoEbWV0YRgCIAEoCzIXLm1ldGFsc3RhY2suYXBpLnYyLk1ldGESHgoEbmFtZRgDIAEoCUILukgIcgbAs66xAgFIAIgBARIlCgtkZXNjcmlwdGlvbhgEIAEoCUILukgIcgbIs66xAgFIAYgBARIyCgtmaWxlc3lzdGVtcxgFIAMoCzIdLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW0SJgoFZGlza3MYBiADKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5EaXNrEiUKBHJhaWQYByADKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5SYWlkEjUKDXZvbHVtZV9ncm91cHMYCCADKAsyHi5tZXRhbHN0YWNrLmFwaS52Mi5Wb2x1bWVHcm91cBI5Cg9sb2dpY2FsX3ZvbHVtZXMYCSADKAsyIC5tZXRhbHN0YWNrLmFwaS52Mi5Mb2dpY2FsVm9sdW1lEkMKC2NvbnN0cmFpbnRzGAogASgLMi4ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dENvbnN0cmFpbnRzQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbiKnAQobRmlsZXN5c3RlbUxheW91dENvbnN0cmFpbnRzEg0KBXNpemVzGAEgAygJEkoKBmltYWdlcxgCIAMoCzI6Lm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXRDb25zdHJhaW50cy5JbWFnZXNFbnRyeRotCgtJbWFnZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIuwCCgpGaWxlc3lzdGVtEhsKBmRldmljZRgBIAEoCUILukgIcgbAs66xAgESNgoGZm9ybWF0GAIgASgOMhkubWV0YWxzdGFjay5hcGkudjIuRm9ybWF0Qgu6SAjIAQGCAQIQARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEh0KBHBhdGgYBSABKAlCCrpIB3IFEAEYgCBIAogBARIeCgVsYWJlbBgGIAEoCUIKukgHcgUQAhiAAUgDiAEBEioKDW1vdW50X29wdGlvbnMYByADKAlCE7pIEJIBDRAgGAEiB3IFEAEYgAESKwoOY3JlYXRlX29wdGlvbnMYCCADKAlCE7pIEJIBDRAgGAEiB3IFEAEYgAFCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uQgcKBV9wYXRoQggKBl9sYWJlbCJYCgREaXNrEhoKBmRldmljZRgBIAEoCUIKukgHcgUQAhiAARI0CgpwYXJ0aXRpb25zGAIgAygLMiAubWV0YWxzdGFjay5hcGkudjIuRGlza1BhcnRpdGlvbiKiAQoEUmFpZBISCgphcnJheV9uYW1lGAEgASgJEg8KB2RldmljZXMYAiADKAkSOAoFbGV2ZWwYAyABKA4yHC5tZXRhbHN0YWNrLmFwaS52Mi5SYWlkTGV2ZWxCC7pICMgBAYIBAhABEisKDmNyZWF0ZV9vcHRpb25zGAQgAygJQhO6SBCSAQ0QIBgBIgdyBRABGIABEg4KBnNwYXJlcxgFIAEoBSKYAQoNRGlza1BhcnRpdGlvbhIOCgZudW1iZXIYASABKA0SEgoFbGFiZWwYAiABKAlIAIgBARIMCgRzaXplGAMgASgEEj4KCGdwdF90eXBlGAQgASgOMhoubWV0YWxzdGFjay5hcGkudjIuR1BUVHlwZUILukgIyAEBggECEAFIAYgBAUIICgZfbGFiZWxCCwoJX2dwdF90eXBlIkcKC1ZvbHVtZUdyb3VwEhkKBG5hbWUYASABKAlCC7pICHIGwLOusQIBEg8KB2RldmljZXMYAiADKAkSDAoEdGFncxgDIAMoCSKSAQoNTG9naWNhbFZvbHVtZRIZCgRuYW1lGAEgASgJQgu6SAhyBsCzrrECARIgCgx2b2x1bWVfZ3JvdXAYAiABKAlCCrpIB3IFEAIYgAESDAoEc2l6ZRgDIAEoBBI2Cghsdm1fdHlwZRgEIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLkxWTVR5cGVCCLpIBYIBAhABKoYBCgdMVk1UeXBlEhgKFExWTV9UWVBFX1VOU1BFQ0lGSUVEEAASHwoPTFZNX1RZUEVfTElORUFSEAEaCoKyGQZsaW5lYXISIQoQTFZNX1RZUEVfU1RSSVBFRBACGguCshkHc3RyaXBlZBIdCg5MVk1fVFlQRV9SQUlEMRADGgmCshkFcmFpZDEqxAEKBkZvcm1hdBIWChJGT1JNQVRfVU5TUEVDSUZJRUQQABIZCgtGT1JNQVRfVkZBVBABGgiCshkEdmZhdBIZCgtGT1JNQVRfRVhUMxACGgiCshkEZXh0MxIZCgtGT1JNQVRfRVhUNBADGgiCshkEZXh0NBIZCgtGT1JNQVRfU1dBUBAEGgiCshkEc3dhcBIbCgxGT1JNQVRfVE1QRlMQBRoJgrIZBXRtcGZzEhkKC0ZPUk1BVF9OT05FEAYaCIKyGQRub25lKqMBCgdHUFRUeXBlEhgKFEdQVF9UWVBFX1VOU1BFQ0lGSUVEEAASGwoNR1BUX1RZUEVfQk9PVBABGgiCshkEZWYwMBIcCg5HUFRfVFlQRV9MSU5VWBACGgiCshkEODMwMBIhChNHUFRfVFlQRV9MSU5VWF9SQUlEEAMaCIKyGQRmZDAwEiAKEkdQVF9UWVBFX0xJTlVYX0xWTRAEGgiCshkEOGUwMCpLCglSYWlkTGV2ZWwSGgoWUkFJRF9MRVZFTF9VTlNQRUNJRklFRBAAEhAKDFJBSURfTEVWRUxfMBABEhAKDFJBSURfTEVWRUxfMRACMvICChFGaWxlc3lzdGVtU2VydmljZRJwCgNHZXQSLi5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZUdldFJlcXVlc3QaLy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZUdldFJlc3BvbnNlIgjY8xgC4PMYAhJzCgRMaXN0Ei8ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VMaXN0UmVxdWVzdBowLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlc3BvbnNlIgjY8xgC4PMYAhJ2CgVNYXRjaBIwLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXF1ZXN0GjEubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VNYXRjaFJlc3BvbnNlIgjY8xgC4PMYAkLFAQoVY29tLm1ldGFsc3RhY2suYXBpLnYyQg9GaWxlc3lzdGVtUHJvdG9QAVo1Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9hcGkvdjI7YXBpdjKiAgNNQViqAhFNZXRhbHN0YWNrLkFwaS5WMsoCEU1ldGFsc3RhY2tcQXBpXFYy4gIdTWV0YWxzdGFja1xBcGlcVjJcR1BCTWV0YWRhdGHqAhNNZXRhbHN0YWNrOjpBcGk6OlYyYgZwcm90bzM", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules]); + fileDesc("CiJtZXRhbHN0YWNrL2FwaS92Mi9maWxlc3lzdGVtLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiI2ChtGaWxlc3lzdGVtU2VydmljZUdldFJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIkMKHEZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQFCBQoDX2lkIl4KHEZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0ImAKHUZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlc3BvbnNlEj8KEmZpbGVzeXN0ZW1fbGF5b3V0cxgBIAMoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQixAEKHUZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXF1ZXN0Ej4KDnNpemVfYW5kX2ltYWdlGAEgASgLMiQubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hJbWFnZUFuZFNpemVIABJaChxtYWNoaW5lX2FuZF9maWxlc3lzdGVtbGF5b3V0GAIgASgLMjIubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hNYWNoaW5lQW5kRmlsZXN5c3RlbUxheW91dEgAQgcKBW1hdGNoIkoKEU1hdGNoSW1hZ2VBbmRTaXplEhkKBHNpemUYASABKAlCC7pICHIGwLOusQIBEhoKBWltYWdlGAIgASgJQgu6SAhyBsCzrrECASJkCh9NYXRjaE1hY2hpbmVBbmRGaWxlc3lzdGVtTGF5b3V0EhkKB21hY2hpbmUYASABKAlCCLpIBXIDsAEBEiYKEWZpbGVzeXN0ZW1fbGF5b3V0GAIgASgJQgu6SAhyBsCzrrECASJgCh5GaWxlc3lzdGVtU2VydmljZU1hdGNoUmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0IuwDChBGaWxlc3lzdGVtTGF5b3V0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARIlCgRtZXRhGAIgASgLMhcubWV0YWxzdGFjay5hcGkudjIuTWV0YRIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjIKC2ZpbGVzeXN0ZW1zGAUgAygLMh0ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbRImCgVkaXNrcxgGIAMoCzIXLm1ldGFsc3RhY2suYXBpLnYyLkRpc2sSJQoEcmFpZBgHIAMoCzIXLm1ldGFsc3RhY2suYXBpLnYyLlJhaWQSNQoNdm9sdW1lX2dyb3VwcxgIIAMoCzIeLm1ldGFsc3RhY2suYXBpLnYyLlZvbHVtZUdyb3VwEjkKD2xvZ2ljYWxfdm9sdW1lcxgJIAMoCzIgLm1ldGFsc3RhY2suYXBpLnYyLkxvZ2ljYWxWb2x1bWUSQwoLY29uc3RyYWludHMYCiABKAsyLi5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0Q29uc3RyYWludHNCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uIqcBChtGaWxlc3lzdGVtTGF5b3V0Q29uc3RyYWludHMSDQoFc2l6ZXMYASADKAkSSgoGaW1hZ2VzGAIgAygLMjoubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dENvbnN0cmFpbnRzLkltYWdlc0VudHJ5Gi0KC0ltYWdlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEi7AIKCkZpbGVzeXN0ZW0SGwoGZGV2aWNlGAEgASgJQgu6SAhyBsCzrrECARI2CgZmb3JtYXQYAiABKA4yGS5tZXRhbHN0YWNrLmFwaS52Mi5Gb3JtYXRCC7pICMgBAYIBAhABEh4KBG5hbWUYAyABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSAGIAQESHQoEcGF0aBgFIAEoCUIKukgHcgUQARiAIEgCiAEBEh4KBWxhYmVsGAYgASgJQgq6SAdyBRACGIABSAOIAQESKgoNbW91bnRfb3B0aW9ucxgHIAMoCUITukgQkgENECAYASIHcgUQARiAARIrCg5jcmVhdGVfb3B0aW9ucxgIIAMoCUITukgQkgENECAYASIHcgUQARiAAUIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CBwoFX3BhdGhCCAoGX2xhYmVsIlgKBERpc2sSGgoGZGV2aWNlGAEgASgJQgq6SAdyBRACGIABEjQKCnBhcnRpdGlvbnMYAiADKAsyIC5tZXRhbHN0YWNrLmFwaS52Mi5EaXNrUGFydGl0aW9uIqIBCgRSYWlkEhIKCmFycmF5X25hbWUYASABKAkSDwoHZGV2aWNlcxgCIAMoCRI4CgVsZXZlbBgDIAEoDjIcLm1ldGFsc3RhY2suYXBpLnYyLlJhaWRMZXZlbEILukgIyAEBggECEAESKwoOY3JlYXRlX29wdGlvbnMYBCADKAlCE7pIEJIBDRAgGAEiB3IFEAEYgAESDgoGc3BhcmVzGAUgASgFIpgBCg1EaXNrUGFydGl0aW9uEg4KBm51bWJlchgBIAEoDRISCgVsYWJlbBgCIAEoCUgAiAEBEgwKBHNpemUYAyABKAQSPgoIZ3B0X3R5cGUYBCABKA4yGi5tZXRhbHN0YWNrLmFwaS52Mi5HUFRUeXBlQgu6SAjIAQGCAQIQAUgBiAEBQggKBl9sYWJlbEILCglfZ3B0X3R5cGUiRwoLVm9sdW1lR3JvdXASGQoEbmFtZRgBIAEoCUILukgIcgbAs66xAgESDwoHZGV2aWNlcxgCIAMoCRIMCgR0YWdzGAMgAygJIpIBCg1Mb2dpY2FsVm9sdW1lEhkKBG5hbWUYASABKAlCC7pICHIGwLOusQIBEiAKDHZvbHVtZV9ncm91cBgCIAEoCUIKukgHcgUQAhiAARIMCgRzaXplGAMgASgEEjYKCGx2bV90eXBlGAQgASgOMhoubWV0YWxzdGFjay5hcGkudjIuTFZNVHlwZUIIukgFggECEAEqhgEKB0xWTVR5cGUSGAoUTFZNX1RZUEVfVU5TUEVDSUZJRUQQABIfCg9MVk1fVFlQRV9MSU5FQVIQARoKgrIZBmxpbmVhchIhChBMVk1fVFlQRV9TVFJJUEVEEAIaC4KyGQdzdHJpcGVkEh0KDkxWTV9UWVBFX1JBSUQxEAMaCYKyGQVyYWlkMSrEAQoGRm9ybWF0EhYKEkZPUk1BVF9VTlNQRUNJRklFRBAAEhkKC0ZPUk1BVF9WRkFUEAEaCIKyGQR2ZmF0EhkKC0ZPUk1BVF9FWFQzEAIaCIKyGQRleHQzEhkKC0ZPUk1BVF9FWFQ0EAMaCIKyGQRleHQ0EhkKC0ZPUk1BVF9TV0FQEAQaCIKyGQRzd2FwEhsKDEZPUk1BVF9UTVBGUxAFGgmCshkFdG1wZnMSGQoLRk9STUFUX05PTkUQBhoIgrIZBG5vbmUqowEKB0dQVFR5cGUSGAoUR1BUX1RZUEVfVU5TUEVDSUZJRUQQABIbCg1HUFRfVFlQRV9CT09UEAEaCIKyGQRlZjAwEhwKDkdQVF9UWVBFX0xJTlVYEAIaCIKyGQQ4MzAwEiEKE0dQVF9UWVBFX0xJTlVYX1JBSUQQAxoIgrIZBGZkMDASIAoSR1BUX1RZUEVfTElOVVhfTFZNEAQaCIKyGQQ4ZTAwKksKCVJhaWRMZXZlbBIaChZSQUlEX0xFVkVMX1VOU1BFQ0lGSUVEEAASEAoMUkFJRF9MRVZFTF8wEAESEAoMUkFJRF9MRVZFTF8xEAIy8gIKEUZpbGVzeXN0ZW1TZXJ2aWNlEnAKA0dldBIuLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVzcG9uc2UiCNjzGALg8xgCEnMKBExpc3QSLy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZUxpc3RSZXF1ZXN0GjAubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VMaXN0UmVzcG9uc2UiCNjzGALg8xgCEnYKBU1hdGNoEjAubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VNYXRjaFJlcXVlc3QaMS5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZU1hdGNoUmVzcG9uc2UiCNjzGALg8xgCQsUBChVjb20ubWV0YWxzdGFjay5hcGkudjJCD0ZpbGVzeXN0ZW1Qcm90b1ABWjVnaXRodWIuY29tL21ldGFsLXN0YWNrL2FwaS9nby9tZXRhbHN0YWNrL2FwaS92MjthcGl2MqICA01BWKoCEU1ldGFsc3RhY2suQXBpLlYyygIRTWV0YWxzdGFja1xBcGlcVjLiAh1NZXRhbHN0YWNrXEFwaVxWMlxHUEJNZXRhZGF0YeoCE01ldGFsc3RhY2s6OkFwaTo6VjJiBnByb3RvMw", [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 @@ -124,9 +124,9 @@ export type FilesystemServiceMatchRequest = Message<"metalstack.api.v2.Filesyste /** * MachineAndFilesystemlayout * - * @generated from field: metalstack.api.v2.MatchMachine machine_and_filesystemlayout = 2; + * @generated from field: metalstack.api.v2.MatchMachineAndFilesystemLayout machine_and_filesystemlayout = 2; */ - value: MatchMachine; + value: MatchMachineAndFilesystemLayout; case: "machineAndFilesystemlayout"; } | { case: undefined; value?: undefined }; }; @@ -167,11 +167,11 @@ export const MatchImageAndSizeSchema: GenMessage = /*@__PURE_ messageDesc(file_metalstack_api_v2_filesystem, 5); /** - * MatchMachine + * MatchMachineAndFilesystemLayout * - * @generated from message metalstack.api.v2.MatchMachine + * @generated from message metalstack.api.v2.MatchMachineAndFilesystemLayout */ -export type MatchMachine = Message<"metalstack.api.v2.MatchMachine"> & { +export type MatchMachineAndFilesystemLayout = Message<"metalstack.api.v2.MatchMachineAndFilesystemLayout"> & { /** * Machine to check * @@ -188,10 +188,10 @@ export type MatchMachine = Message<"metalstack.api.v2.MatchMachine"> & { }; /** - * Describes the message metalstack.api.v2.MatchMachine. - * Use `create(MatchMachineSchema)` to create a new message. + * Describes the message metalstack.api.v2.MatchMachineAndFilesystemLayout. + * Use `create(MatchMachineAndFilesystemLayoutSchema)` to create a new message. */ -export const MatchMachineSchema: GenMessage = /*@__PURE__*/ +export const MatchMachineAndFilesystemLayoutSchema: GenMessage = /*@__PURE__*/ messageDesc(file_metalstack_api_v2_filesystem, 6); /** diff --git a/proto/metalstack/admin/v2/size_reservation.proto b/proto/metalstack/admin/v2/size_reservation.proto index 010d64c7..253c3352 100644 --- a/proto/metalstack/admin/v2/size_reservation.proto +++ b/proto/metalstack/admin/v2/size_reservation.proto @@ -56,6 +56,7 @@ message SizeReservationServiceUpdateRequest { metalstack.api.v2.UpdateMeta update_meta = 4 [(buf.validate.field).required = true]; // Partition ids of this size reservation repeated string partitions = 5 [ + (buf.validate.field).repeated.min_items = 1, (buf.validate.field).repeated.unique = true, (buf.validate.field).repeated.items.string.(metalstack.api.v2.is_partition) = true ]; diff --git a/proto/metalstack/api/v2/filesystem.proto b/proto/metalstack/api/v2/filesystem.proto index 0487df4a..3543d64e 100644 --- a/proto/metalstack/api/v2/filesystem.proto +++ b/proto/metalstack/api/v2/filesystem.proto @@ -57,7 +57,7 @@ message FilesystemServiceMatchRequest { // SizeAndImage MatchImageAndSize size_and_image = 1; // MachineAndFilesystemlayout - MatchMachine machine_and_filesystemlayout = 2; + MatchMachineAndFilesystemLayout machine_and_filesystemlayout = 2; } } @@ -69,8 +69,8 @@ message MatchImageAndSize { string image = 2 [(buf.validate.field).string.(metalstack.api.v2.is_name) = true]; } -// MatchMachine -message MatchMachine { +// MatchMachineAndFilesystemLayout +message MatchMachineAndFilesystemLayout { // Machine to check string machine = 1 [(buf.validate.field).string.uuid = true]; // FilesystemLayout to check diff --git a/python/metalstack/admin/v2/size_reservation_pb2.py b/python/metalstack/admin/v2/size_reservation_pb2.py index aeca1329..74c6c3c0 100644 --- a/python/metalstack/admin/v2/size_reservation_pb2.py +++ b/python/metalstack/admin/v2/size_reservation_pb2.py @@ -28,7 +28,7 @@ from metalstack.api.v2 import size_reservation_pb2 as metalstack_dot_api_dot_v2_dot_size__reservation__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n*metalstack/admin/v2/size_reservation.proto\x12\x13metalstack.admin.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\x1a(metalstack/api/v2/predefined_rules.proto\x1a(metalstack/api/v2/size_reservation.proto\"t\n#SizeReservationServiceCreateRequest\x12M\n\x10size_reservation\x18\x01 \x01(\x0b\x32\".metalstack.api.v2.SizeReservationR\x0fsizeReservation\"u\n$SizeReservationServiceCreateResponse\x12M\n\x10size_reservation\x18\x01 \x01(\x0b\x32\".metalstack.api.v2.SizeReservationR\x0fsizeReservation\"\xa8\x03\n#SizeReservationServiceUpdateRequest\x12\x18\n\x02id\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x02id\x12$\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x46\n\x0bupdate_meta\x18\x04 \x01(\x0b\x32\x1d.metalstack.api.v2.UpdateMetaB\x06\xbaH\x03\xc8\x01\x01R\nupdateMeta\x12\x32\n\npartitions\x18\x05 \x03(\tB\x12\xbaH\x0f\x92\x01\x0c\x18\x01\"\x08r\x06\xd0\xb3\xae\xb1\x02\x01R\npartitions\x12$\n\x06\x61mount\x18\x06 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00H\x02R\x06\x61mount\x88\x01\x01\x12<\n\x06labels\x18\x07 \x01(\x0b\x32\x1f.metalstack.api.v2.UpdateLabelsH\x03R\x06labels\x88\x01\x01\x42\x07\n\x05_nameB\x0e\n\x0c_descriptionB\t\n\x07_amountB\t\n\x07_labels\"u\n$SizeReservationServiceUpdateResponse\x12M\n\x10size_reservation\x18\x01 \x01(\x0b\x32\".metalstack.api.v2.SizeReservationR\x0fsizeReservation\"?\n#SizeReservationServiceDeleteRequest\x12\x18\n\x02id\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x02id\"u\n$SizeReservationServiceDeleteResponse\x12M\n\x10size_reservation\x18\x01 \x01(\x0b\x32\".metalstack.api.v2.SizeReservationR\x0fsizeReservation\"b\n!SizeReservationServiceListRequest\x12=\n\x05query\x18\x01 \x01(\x0b\x32\'.metalstack.api.v2.SizeReservationQueryR\x05query\"u\n\"SizeReservationServiceListResponse\x12O\n\x11size_reservations\x18\x01 \x03(\x0b\x32\".metalstack.api.v2.SizeReservationR\x10sizeReservations2\xbf\x04\n\x16SizeReservationService\x12\x88\x01\n\x06\x43reate\x12\x38.metalstack.admin.v2.SizeReservationServiceCreateRequest\x1a\x39.metalstack.admin.v2.SizeReservationServiceCreateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12\x88\x01\n\x06Update\x12\x38.metalstack.admin.v2.SizeReservationServiceUpdateRequest\x1a\x39.metalstack.admin.v2.SizeReservationServiceUpdateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12\x88\x01\n\x06\x44\x65lete\x12\x38.metalstack.admin.v2.SizeReservationServiceDeleteRequest\x1a\x39.metalstack.admin.v2.SizeReservationServiceDeleteResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12\x83\x01\n\x04List\x12\x36.metalstack.admin.v2.SizeReservationServiceListRequest\x1a\x37.metalstack.admin.v2.SizeReservationServiceListResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x42\xd8\x01\n\x17\x63om.metalstack.admin.v2B\x14SizeReservationProtoP\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/size_reservation.proto\x12\x13metalstack.admin.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1emetalstack/api/v2/common.proto\x1a(metalstack/api/v2/predefined_rules.proto\x1a(metalstack/api/v2/size_reservation.proto\"t\n#SizeReservationServiceCreateRequest\x12M\n\x10size_reservation\x18\x01 \x01(\x0b\x32\".metalstack.api.v2.SizeReservationR\x0fsizeReservation\"u\n$SizeReservationServiceCreateResponse\x12M\n\x10size_reservation\x18\x01 \x01(\x0b\x32\".metalstack.api.v2.SizeReservationR\x0fsizeReservation\"\xaa\x03\n#SizeReservationServiceUpdateRequest\x12\x18\n\x02id\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x02id\x12$\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x00R\x04name\x88\x01\x01\x12\x32\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\xc8\xb3\xae\xb1\x02\x01H\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x46\n\x0bupdate_meta\x18\x04 \x01(\x0b\x32\x1d.metalstack.api.v2.UpdateMetaB\x06\xbaH\x03\xc8\x01\x01R\nupdateMeta\x12\x34\n\npartitions\x18\x05 \x03(\tB\x14\xbaH\x11\x92\x01\x0e\x08\x01\x18\x01\"\x08r\x06\xd0\xb3\xae\xb1\x02\x01R\npartitions\x12$\n\x06\x61mount\x18\x06 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00H\x02R\x06\x61mount\x88\x01\x01\x12<\n\x06labels\x18\x07 \x01(\x0b\x32\x1f.metalstack.api.v2.UpdateLabelsH\x03R\x06labels\x88\x01\x01\x42\x07\n\x05_nameB\x0e\n\x0c_descriptionB\t\n\x07_amountB\t\n\x07_labels\"u\n$SizeReservationServiceUpdateResponse\x12M\n\x10size_reservation\x18\x01 \x01(\x0b\x32\".metalstack.api.v2.SizeReservationR\x0fsizeReservation\"?\n#SizeReservationServiceDeleteRequest\x12\x18\n\x02id\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x02id\"u\n$SizeReservationServiceDeleteResponse\x12M\n\x10size_reservation\x18\x01 \x01(\x0b\x32\".metalstack.api.v2.SizeReservationR\x0fsizeReservation\"b\n!SizeReservationServiceListRequest\x12=\n\x05query\x18\x01 \x01(\x0b\x32\'.metalstack.api.v2.SizeReservationQueryR\x05query\"u\n\"SizeReservationServiceListResponse\x12O\n\x11size_reservations\x18\x01 \x03(\x0b\x32\".metalstack.api.v2.SizeReservationR\x10sizeReservations2\xbf\x04\n\x16SizeReservationService\x12\x88\x01\n\x06\x43reate\x12\x38.metalstack.admin.v2.SizeReservationServiceCreateRequest\x1a\x39.metalstack.admin.v2.SizeReservationServiceCreateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12\x88\x01\n\x06Update\x12\x38.metalstack.admin.v2.SizeReservationServiceUpdateRequest\x1a\x39.metalstack.admin.v2.SizeReservationServiceUpdateResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12\x88\x01\n\x06\x44\x65lete\x12\x38.metalstack.admin.v2.SizeReservationServiceDeleteRequest\x1a\x39.metalstack.admin.v2.SizeReservationServiceDeleteResponse\"\t\xd2\xf3\x18\x01\x01\xe0\xf3\x18\x01\x12\x83\x01\n\x04List\x12\x36.metalstack.admin.v2.SizeReservationServiceListRequest\x1a\x37.metalstack.admin.v2.SizeReservationServiceListResponse\"\n\xd2\xf3\x18\x02\x01\x02\xe0\xf3\x18\x02\x42\xd8\x01\n\x17\x63om.metalstack.admin.v2B\x14SizeReservationProtoP\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) @@ -45,7 +45,7 @@ _globals['_SIZERESERVATIONSERVICEUPDATEREQUEST'].fields_by_name['update_meta']._loaded_options = None _globals['_SIZERESERVATIONSERVICEUPDATEREQUEST'].fields_by_name['update_meta']._serialized_options = b'\272H\003\310\001\001' _globals['_SIZERESERVATIONSERVICEUPDATEREQUEST'].fields_by_name['partitions']._loaded_options = None - _globals['_SIZERESERVATIONSERVICEUPDATEREQUEST'].fields_by_name['partitions']._serialized_options = b'\272H\017\222\001\014\030\001\"\010r\006\320\263\256\261\002\001' + _globals['_SIZERESERVATIONSERVICEUPDATEREQUEST'].fields_by_name['partitions']._serialized_options = b'\272H\021\222\001\016\010\001\030\001\"\010r\006\320\263\256\261\002\001' _globals['_SIZERESERVATIONSERVICEUPDATEREQUEST'].fields_by_name['amount']._loaded_options = None _globals['_SIZERESERVATIONSERVICEUPDATEREQUEST'].fields_by_name['amount']._serialized_options = b'\272H\004\032\002 \000' _globals['_SIZERESERVATIONSERVICEDELETEREQUEST'].fields_by_name['id']._loaded_options = None @@ -63,17 +63,17 @@ _globals['_SIZERESERVATIONSERVICECREATERESPONSE']._serialized_start=330 _globals['_SIZERESERVATIONSERVICECREATERESPONSE']._serialized_end=447 _globals['_SIZERESERVATIONSERVICEUPDATEREQUEST']._serialized_start=450 - _globals['_SIZERESERVATIONSERVICEUPDATEREQUEST']._serialized_end=874 - _globals['_SIZERESERVATIONSERVICEUPDATERESPONSE']._serialized_start=876 - _globals['_SIZERESERVATIONSERVICEUPDATERESPONSE']._serialized_end=993 - _globals['_SIZERESERVATIONSERVICEDELETEREQUEST']._serialized_start=995 - _globals['_SIZERESERVATIONSERVICEDELETEREQUEST']._serialized_end=1058 - _globals['_SIZERESERVATIONSERVICEDELETERESPONSE']._serialized_start=1060 - _globals['_SIZERESERVATIONSERVICEDELETERESPONSE']._serialized_end=1177 - _globals['_SIZERESERVATIONSERVICELISTREQUEST']._serialized_start=1179 - _globals['_SIZERESERVATIONSERVICELISTREQUEST']._serialized_end=1277 - _globals['_SIZERESERVATIONSERVICELISTRESPONSE']._serialized_start=1279 - _globals['_SIZERESERVATIONSERVICELISTRESPONSE']._serialized_end=1396 - _globals['_SIZERESERVATIONSERVICE']._serialized_start=1399 - _globals['_SIZERESERVATIONSERVICE']._serialized_end=1974 + _globals['_SIZERESERVATIONSERVICEUPDATEREQUEST']._serialized_end=876 + _globals['_SIZERESERVATIONSERVICEUPDATERESPONSE']._serialized_start=878 + _globals['_SIZERESERVATIONSERVICEUPDATERESPONSE']._serialized_end=995 + _globals['_SIZERESERVATIONSERVICEDELETEREQUEST']._serialized_start=997 + _globals['_SIZERESERVATIONSERVICEDELETEREQUEST']._serialized_end=1060 + _globals['_SIZERESERVATIONSERVICEDELETERESPONSE']._serialized_start=1062 + _globals['_SIZERESERVATIONSERVICEDELETERESPONSE']._serialized_end=1179 + _globals['_SIZERESERVATIONSERVICELISTREQUEST']._serialized_start=1181 + _globals['_SIZERESERVATIONSERVICELISTREQUEST']._serialized_end=1279 + _globals['_SIZERESERVATIONSERVICELISTRESPONSE']._serialized_start=1281 + _globals['_SIZERESERVATIONSERVICELISTRESPONSE']._serialized_end=1398 + _globals['_SIZERESERVATIONSERVICE']._serialized_start=1401 + _globals['_SIZERESERVATIONSERVICE']._serialized_end=1976 # @@protoc_insertion_point(module_scope) diff --git a/python/metalstack/api/v2/filesystem_pb2.py b/python/metalstack/api/v2/filesystem_pb2.py index 0035b571..55311134 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\"\xdb\x01\n\x1d\x46ilesystemServiceMatchRequest\x12L\n\x0esize_and_image\x18\x01 \x01(\x0b\x32$.metalstack.api.v2.MatchImageAndSizeH\x00R\x0csizeAndImage\x12\x63\n\x1cmachine_and_filesystemlayout\x18\x02 \x01(\x0b\x32\x1f.metalstack.api.v2.MatchMachineH\x00R\x1amachineAndFilesystemlayoutB\x07\n\x05match\"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\"l\n\x0cMatchMachine\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\"\xee\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\x07\n\x05match\"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') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -69,10 +69,10 @@ _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['_MATCHMACHINE'].fields_by_name['machine']._loaded_options = None - _globals['_MATCHMACHINE'].fields_by_name['machine']._serialized_options = b'\272H\005r\003\260\001\001' - _globals['_MATCHMACHINE'].fields_by_name['filesystem_layout']._loaded_options = None - _globals['_MATCHMACHINE'].fields_by_name['filesystem_layout']._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,14 +119,14 @@ _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=3083 - _globals['_LVMTYPE']._serialized_end=3217 - _globals['_FORMAT']._serialized_start=3220 - _globals['_FORMAT']._serialized_end=3416 - _globals['_GPTTYPE']._serialized_start=3419 - _globals['_GPTTYPE']._serialized_end=3582 - _globals['_RAIDLEVEL']._serialized_start=3584 - _globals['_RAIDLEVEL']._serialized_end=3659 + _globals['_LVMTYPE']._serialized_start=3121 + _globals['_LVMTYPE']._serialized_end=3255 + _globals['_FORMAT']._serialized_start=3258 + _globals['_FORMAT']._serialized_end=3454 + _globals['_GPTTYPE']._serialized_start=3457 + _globals['_GPTTYPE']._serialized_end=3620 + _globals['_RAIDLEVEL']._serialized_start=3622 + _globals['_RAIDLEVEL']._serialized_end=3697 _globals['_FILESYSTEMSERVICEGETREQUEST']._serialized_start=160 _globals['_FILESYSTEMSERVICEGETREQUEST']._serialized_end=218 _globals['_FILESYSTEMSERVICELISTREQUEST']._serialized_start=220 @@ -136,31 +136,31 @@ _globals['_FILESYSTEMSERVICELISTRESPONSE']._serialized_start=407 _globals['_FILESYSTEMSERVICELISTRESPONSE']._serialized_end=522 _globals['_FILESYSTEMSERVICEMATCHREQUEST']._serialized_start=525 - _globals['_FILESYSTEMSERVICEMATCHREQUEST']._serialized_end=744 - _globals['_MATCHIMAGEANDSIZE']._serialized_start=746 - _globals['_MATCHIMAGEANDSIZE']._serialized_end=833 - _globals['_MATCHMACHINE']._serialized_start=835 - _globals['_MATCHMACHINE']._serialized_end=943 - _globals['_FILESYSTEMSERVICEMATCHRESPONSE']._serialized_start=945 - _globals['_FILESYSTEMSERVICEMATCHRESPONSE']._serialized_end=1059 - _globals['_FILESYSTEMLAYOUT']._serialized_start=1062 - _globals['_FILESYSTEMLAYOUT']._serialized_end=1652 - _globals['_FILESYSTEMLAYOUTCONSTRAINTS']._serialized_start=1655 - _globals['_FILESYSTEMLAYOUTCONSTRAINTS']._serialized_end=1849 - _globals['_FILESYSTEMLAYOUTCONSTRAINTS_IMAGESENTRY']._serialized_start=1792 - _globals['_FILESYSTEMLAYOUTCONSTRAINTS_IMAGESENTRY']._serialized_end=1849 - _globals['_FILESYSTEM']._serialized_start=1852 - _globals['_FILESYSTEM']._serialized_end=2293 - _globals['_DISK']._serialized_start=2295 - _globals['_DISK']._serialized_end=2403 - _globals['_RAID']._serialized_start=2406 - _globals['_RAID']._serialized_end=2618 - _globals['_DISKPARTITION']._serialized_start=2621 - _globals['_DISKPARTITION']._serialized_end=2803 - _globals['_VOLUMEGROUP']._serialized_start=2805 - _globals['_VOLUMEGROUP']._serialized_end=2897 - _globals['_LOGICALVOLUME']._serialized_start=2900 - _globals['_LOGICALVOLUME']._serialized_end=3080 - _globals['_FILESYSTEMSERVICE']._serialized_start=3662 - _globals['_FILESYSTEMSERVICE']._serialized_end=4032 + _globals['_FILESYSTEMSERVICEMATCHREQUEST']._serialized_end=763 + _globals['_MATCHIMAGEANDSIZE']._serialized_start=765 + _globals['_MATCHIMAGEANDSIZE']._serialized_end=852 + _globals['_MATCHMACHINEANDFILESYSTEMLAYOUT']._serialized_start=854 + _globals['_MATCHMACHINEANDFILESYSTEMLAYOUT']._serialized_end=981 + _globals['_FILESYSTEMSERVICEMATCHRESPONSE']._serialized_start=983 + _globals['_FILESYSTEMSERVICEMATCHRESPONSE']._serialized_end=1097 + _globals['_FILESYSTEMLAYOUT']._serialized_start=1100 + _globals['_FILESYSTEMLAYOUT']._serialized_end=1690 + _globals['_FILESYSTEMLAYOUTCONSTRAINTS']._serialized_start=1693 + _globals['_FILESYSTEMLAYOUTCONSTRAINTS']._serialized_end=1887 + _globals['_FILESYSTEMLAYOUTCONSTRAINTS_IMAGESENTRY']._serialized_start=1830 + _globals['_FILESYSTEMLAYOUTCONSTRAINTS_IMAGESENTRY']._serialized_end=1887 + _globals['_FILESYSTEM']._serialized_start=1890 + _globals['_FILESYSTEM']._serialized_end=2331 + _globals['_DISK']._serialized_start=2333 + _globals['_DISK']._serialized_end=2441 + _globals['_RAID']._serialized_start=2444 + _globals['_RAID']._serialized_end=2656 + _globals['_DISKPARTITION']._serialized_start=2659 + _globals['_DISKPARTITION']._serialized_end=2841 + _globals['_VOLUMEGROUP']._serialized_start=2843 + _globals['_VOLUMEGROUP']._serialized_end=2935 + _globals['_LOGICALVOLUME']._serialized_start=2938 + _globals['_LOGICALVOLUME']._serialized_end=3118 + _globals['_FILESYSTEMSERVICE']._serialized_start=3700 + _globals['_FILESYSTEMSERVICE']._serialized_end=4070 # @@protoc_insertion_point(module_scope) diff --git a/python/metalstack/api/v2/filesystem_pb2.pyi b/python/metalstack/api/v2/filesystem_pb2.pyi index d48edaad..c9cc5fee 100644 --- a/python/metalstack/api/v2/filesystem_pb2.pyi +++ b/python/metalstack/api/v2/filesystem_pb2.pyi @@ -89,8 +89,8 @@ class FilesystemServiceMatchRequest(_message.Message): SIZE_AND_IMAGE_FIELD_NUMBER: _ClassVar[int] MACHINE_AND_FILESYSTEMLAYOUT_FIELD_NUMBER: _ClassVar[int] size_and_image: MatchImageAndSize - machine_and_filesystemlayout: MatchMachine - def __init__(self, size_and_image: _Optional[_Union[MatchImageAndSize, _Mapping]] = ..., machine_and_filesystemlayout: _Optional[_Union[MatchMachine, _Mapping]] = ...) -> None: ... + 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") @@ -100,7 +100,7 @@ class MatchImageAndSize(_message.Message): image: str def __init__(self, size: _Optional[str] = ..., image: _Optional[str] = ...) -> None: ... -class MatchMachine(_message.Message): +class MatchMachineAndFilesystemLayout(_message.Message): __slots__ = ("machine", "filesystem_layout") MACHINE_FIELD_NUMBER: _ClassVar[int] FILESYSTEM_LAYOUT_FIELD_NUMBER: _ClassVar[int] From 3a5f74989debd79ddf4aa9a1d6345f4d01e1d3da Mon Sep 17 00:00:00 2001 From: Stefan Majer Date: Tue, 26 May 2026 17:32:08 +0200 Subject: [PATCH 4/4] updates --- go/metalstack/api/v2/filesystem.pb.go | 6 +- js/metalstack/api/v2/filesystem_pb.js | 2 +- js/metalstack/api/v2/filesystem_pb.ts | 2 +- proto/Makefile | 2 +- proto/buf.gen.yaml | 4 +- proto/metalstack/api/v2/filesystem.proto | 2 + python/metalstack/admin/v2/audit_pb2.py | 6 +- python/metalstack/admin/v2/component_pb2.py | 6 +- python/metalstack/admin/v2/filesystem_pb2.py | 6 +- python/metalstack/admin/v2/image_pb2.py | 6 +- python/metalstack/admin/v2/ip_pb2.py | 6 +- python/metalstack/admin/v2/machine_pb2.py | 6 +- python/metalstack/admin/v2/network_pb2.py | 6 +- python/metalstack/admin/v2/partition_pb2.py | 6 +- python/metalstack/admin/v2/project_pb2.py | 6 +- .../admin/v2/size_imageconstraint_pb2.py | 6 +- python/metalstack/admin/v2/size_pb2.py | 6 +- .../admin/v2/size_reservation_pb2.py | 6 +- python/metalstack/admin/v2/switch_pb2.py | 6 +- python/metalstack/admin/v2/task_pb2.py | 6 +- python/metalstack/admin/v2/tenant_pb2.py | 6 +- python/metalstack/admin/v2/token_pb2.py | 6 +- python/metalstack/admin/v2/vpn_pb2.py | 6 +- python/metalstack/api/v2/audit_pb2.py | 6 +- python/metalstack/api/v2/common_pb2.py | 6 +- python/metalstack/api/v2/component_pb2.py | 6 +- python/metalstack/api/v2/filesystem_pb2.py | 80 ++++++++++--------- python/metalstack/api/v2/health_pb2.py | 6 +- python/metalstack/api/v2/image_pb2.py | 6 +- python/metalstack/api/v2/ip_pb2.py | 6 +- python/metalstack/api/v2/machine_pb2.py | 6 +- python/metalstack/api/v2/method_pb2.py | 6 +- python/metalstack/api/v2/network_pb2.py | 6 +- python/metalstack/api/v2/partition_pb2.py | 6 +- .../metalstack/api/v2/predefined_rules_pb2.py | 6 +- python/metalstack/api/v2/project_pb2.py | 6 +- .../api/v2/size_imageconstraint_pb2.py | 6 +- python/metalstack/api/v2/size_pb2.py | 6 +- .../metalstack/api/v2/size_reservation_pb2.py | 6 +- python/metalstack/api/v2/switch_pb2.py | 6 +- python/metalstack/api/v2/tenant_pb2.py | 6 +- python/metalstack/api/v2/token_pb2.py | 6 +- python/metalstack/api/v2/user_pb2.py | 6 +- python/metalstack/api/v2/version_pb2.py | 6 +- python/metalstack/api/v2/vpn_pb2.py | 6 +- python/metalstack/infra/v2/bmc_pb2.py | 6 +- python/metalstack/infra/v2/boot_pb2.py | 6 +- python/metalstack/infra/v2/component_pb2.py | 6 +- python/metalstack/infra/v2/event_pb2.py | 6 +- python/metalstack/infra/v2/switch_pb2.py | 6 +- 50 files changed, 180 insertions(+), 176 deletions(-) diff --git a/go/metalstack/api/v2/filesystem.pb.go b/go/metalstack/api/v2/filesystem.pb.go index a948ab22..d3826fce 100644 --- a/go/metalstack/api/v2/filesystem.pb.go +++ b/go/metalstack/api/v2/filesystem.pb.go @@ -1342,11 +1342,11 @@ 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\"\xee\x01\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\a\n" + - "\x05match\"W\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" + diff --git a/js/metalstack/api/v2/filesystem_pb.js b/js/metalstack/api/v2/filesystem_pb.js index ca92ea73..c3103e73 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("CiJtZXRhbHN0YWNrL2FwaS92Mi9maWxlc3lzdGVtLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiI2ChtGaWxlc3lzdGVtU2VydmljZUdldFJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIkMKHEZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQFCBQoDX2lkIl4KHEZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0ImAKHUZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlc3BvbnNlEj8KEmZpbGVzeXN0ZW1fbGF5b3V0cxgBIAMoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQixAEKHUZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXF1ZXN0Ej4KDnNpemVfYW5kX2ltYWdlGAEgASgLMiQubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hJbWFnZUFuZFNpemVIABJaChxtYWNoaW5lX2FuZF9maWxlc3lzdGVtbGF5b3V0GAIgASgLMjIubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hNYWNoaW5lQW5kRmlsZXN5c3RlbUxheW91dEgAQgcKBW1hdGNoIkoKEU1hdGNoSW1hZ2VBbmRTaXplEhkKBHNpemUYASABKAlCC7pICHIGwLOusQIBEhoKBWltYWdlGAIgASgJQgu6SAhyBsCzrrECASJkCh9NYXRjaE1hY2hpbmVBbmRGaWxlc3lzdGVtTGF5b3V0EhkKB21hY2hpbmUYASABKAlCCLpIBXIDsAEBEiYKEWZpbGVzeXN0ZW1fbGF5b3V0GAIgASgJQgu6SAhyBsCzrrECASJgCh5GaWxlc3lzdGVtU2VydmljZU1hdGNoUmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0IuwDChBGaWxlc3lzdGVtTGF5b3V0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARIlCgRtZXRhGAIgASgLMhcubWV0YWxzdGFjay5hcGkudjIuTWV0YRIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjIKC2ZpbGVzeXN0ZW1zGAUgAygLMh0ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbRImCgVkaXNrcxgGIAMoCzIXLm1ldGFsc3RhY2suYXBpLnYyLkRpc2sSJQoEcmFpZBgHIAMoCzIXLm1ldGFsc3RhY2suYXBpLnYyLlJhaWQSNQoNdm9sdW1lX2dyb3VwcxgIIAMoCzIeLm1ldGFsc3RhY2suYXBpLnYyLlZvbHVtZUdyb3VwEjkKD2xvZ2ljYWxfdm9sdW1lcxgJIAMoCzIgLm1ldGFsc3RhY2suYXBpLnYyLkxvZ2ljYWxWb2x1bWUSQwoLY29uc3RyYWludHMYCiABKAsyLi5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0Q29uc3RyYWludHNCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uIqcBChtGaWxlc3lzdGVtTGF5b3V0Q29uc3RyYWludHMSDQoFc2l6ZXMYASADKAkSSgoGaW1hZ2VzGAIgAygLMjoubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dENvbnN0cmFpbnRzLkltYWdlc0VudHJ5Gi0KC0ltYWdlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEi7AIKCkZpbGVzeXN0ZW0SGwoGZGV2aWNlGAEgASgJQgu6SAhyBsCzrrECARI2CgZmb3JtYXQYAiABKA4yGS5tZXRhbHN0YWNrLmFwaS52Mi5Gb3JtYXRCC7pICMgBAYIBAhABEh4KBG5hbWUYAyABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSAGIAQESHQoEcGF0aBgFIAEoCUIKukgHcgUQARiAIEgCiAEBEh4KBWxhYmVsGAYgASgJQgq6SAdyBRACGIABSAOIAQESKgoNbW91bnRfb3B0aW9ucxgHIAMoCUITukgQkgENECAYASIHcgUQARiAARIrCg5jcmVhdGVfb3B0aW9ucxgIIAMoCUITukgQkgENECAYASIHcgUQARiAAUIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CBwoFX3BhdGhCCAoGX2xhYmVsIlgKBERpc2sSGgoGZGV2aWNlGAEgASgJQgq6SAdyBRACGIABEjQKCnBhcnRpdGlvbnMYAiADKAsyIC5tZXRhbHN0YWNrLmFwaS52Mi5EaXNrUGFydGl0aW9uIqIBCgRSYWlkEhIKCmFycmF5X25hbWUYASABKAkSDwoHZGV2aWNlcxgCIAMoCRI4CgVsZXZlbBgDIAEoDjIcLm1ldGFsc3RhY2suYXBpLnYyLlJhaWRMZXZlbEILukgIyAEBggECEAESKwoOY3JlYXRlX29wdGlvbnMYBCADKAlCE7pIEJIBDRAgGAEiB3IFEAEYgAESDgoGc3BhcmVzGAUgASgFIpgBCg1EaXNrUGFydGl0aW9uEg4KBm51bWJlchgBIAEoDRISCgVsYWJlbBgCIAEoCUgAiAEBEgwKBHNpemUYAyABKAQSPgoIZ3B0X3R5cGUYBCABKA4yGi5tZXRhbHN0YWNrLmFwaS52Mi5HUFRUeXBlQgu6SAjIAQGCAQIQAUgBiAEBQggKBl9sYWJlbEILCglfZ3B0X3R5cGUiRwoLVm9sdW1lR3JvdXASGQoEbmFtZRgBIAEoCUILukgIcgbAs66xAgESDwoHZGV2aWNlcxgCIAMoCRIMCgR0YWdzGAMgAygJIpIBCg1Mb2dpY2FsVm9sdW1lEhkKBG5hbWUYASABKAlCC7pICHIGwLOusQIBEiAKDHZvbHVtZV9ncm91cBgCIAEoCUIKukgHcgUQAhiAARIMCgRzaXplGAMgASgEEjYKCGx2bV90eXBlGAQgASgOMhoubWV0YWxzdGFjay5hcGkudjIuTFZNVHlwZUIIukgFggECEAEqhgEKB0xWTVR5cGUSGAoUTFZNX1RZUEVfVU5TUEVDSUZJRUQQABIfCg9MVk1fVFlQRV9MSU5FQVIQARoKgrIZBmxpbmVhchIhChBMVk1fVFlQRV9TVFJJUEVEEAIaC4KyGQdzdHJpcGVkEh0KDkxWTV9UWVBFX1JBSUQxEAMaCYKyGQVyYWlkMSrEAQoGRm9ybWF0EhYKEkZPUk1BVF9VTlNQRUNJRklFRBAAEhkKC0ZPUk1BVF9WRkFUEAEaCIKyGQR2ZmF0EhkKC0ZPUk1BVF9FWFQzEAIaCIKyGQRleHQzEhkKC0ZPUk1BVF9FWFQ0EAMaCIKyGQRleHQ0EhkKC0ZPUk1BVF9TV0FQEAQaCIKyGQRzd2FwEhsKDEZPUk1BVF9UTVBGUxAFGgmCshkFdG1wZnMSGQoLRk9STUFUX05PTkUQBhoIgrIZBG5vbmUqowEKB0dQVFR5cGUSGAoUR1BUX1RZUEVfVU5TUEVDSUZJRUQQABIbCg1HUFRfVFlQRV9CT09UEAEaCIKyGQRlZjAwEhwKDkdQVF9UWVBFX0xJTlVYEAIaCIKyGQQ4MzAwEiEKE0dQVF9UWVBFX0xJTlVYX1JBSUQQAxoIgrIZBGZkMDASIAoSR1BUX1RZUEVfTElOVVhfTFZNEAQaCIKyGQQ4ZTAwKksKCVJhaWRMZXZlbBIaChZSQUlEX0xFVkVMX1VOU1BFQ0lGSUVEEAASEAoMUkFJRF9MRVZFTF8wEAESEAoMUkFJRF9MRVZFTF8xEAIy8gIKEUZpbGVzeXN0ZW1TZXJ2aWNlEnAKA0dldBIuLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVzcG9uc2UiCNjzGALg8xgCEnMKBExpc3QSLy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZUxpc3RSZXF1ZXN0GjAubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VMaXN0UmVzcG9uc2UiCNjzGALg8xgCEnYKBU1hdGNoEjAubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VNYXRjaFJlcXVlc3QaMS5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZU1hdGNoUmVzcG9uc2UiCNjzGALg8xgCQsUBChVjb20ubWV0YWxzdGFjay5hcGkudjJCD0ZpbGVzeXN0ZW1Qcm90b1ABWjVnaXRodWIuY29tL21ldGFsLXN0YWNrL2FwaS9nby9tZXRhbHN0YWNrL2FwaS92MjthcGl2MqICA01BWKoCEU1ldGFsc3RhY2suQXBpLlYyygIRTWV0YWxzdGFja1xBcGlcVjLiAh1NZXRhbHN0YWNrXEFwaVxWMlxHUEJNZXRhZGF0YeoCE01ldGFsc3RhY2s6OkFwaTo6VjJiBnByb3RvMw", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules]); +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]); /** * Describes the message metalstack.api.v2.FilesystemServiceGetRequest. * Use `create(FilesystemServiceGetRequestSchema)` to create a new message. diff --git a/js/metalstack/api/v2/filesystem_pb.ts b/js/metalstack/api/v2/filesystem_pb.ts index 26e8005a..7c79b77a 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("CiJtZXRhbHN0YWNrL2FwaS92Mi9maWxlc3lzdGVtLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiI2ChtGaWxlc3lzdGVtU2VydmljZUdldFJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIkMKHEZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQFCBQoDX2lkIl4KHEZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0ImAKHUZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlc3BvbnNlEj8KEmZpbGVzeXN0ZW1fbGF5b3V0cxgBIAMoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQixAEKHUZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXF1ZXN0Ej4KDnNpemVfYW5kX2ltYWdlGAEgASgLMiQubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hJbWFnZUFuZFNpemVIABJaChxtYWNoaW5lX2FuZF9maWxlc3lzdGVtbGF5b3V0GAIgASgLMjIubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hNYWNoaW5lQW5kRmlsZXN5c3RlbUxheW91dEgAQgcKBW1hdGNoIkoKEU1hdGNoSW1hZ2VBbmRTaXplEhkKBHNpemUYASABKAlCC7pICHIGwLOusQIBEhoKBWltYWdlGAIgASgJQgu6SAhyBsCzrrECASJkCh9NYXRjaE1hY2hpbmVBbmRGaWxlc3lzdGVtTGF5b3V0EhkKB21hY2hpbmUYASABKAlCCLpIBXIDsAEBEiYKEWZpbGVzeXN0ZW1fbGF5b3V0GAIgASgJQgu6SAhyBsCzrrECASJgCh5GaWxlc3lzdGVtU2VydmljZU1hdGNoUmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0IuwDChBGaWxlc3lzdGVtTGF5b3V0EhcKAmlkGAEgASgJQgu6SAhyBsCzrrECARIlCgRtZXRhGAIgASgLMhcubWV0YWxzdGFjay5hcGkudjIuTWV0YRIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEjIKC2ZpbGVzeXN0ZW1zGAUgAygLMh0ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbRImCgVkaXNrcxgGIAMoCzIXLm1ldGFsc3RhY2suYXBpLnYyLkRpc2sSJQoEcmFpZBgHIAMoCzIXLm1ldGFsc3RhY2suYXBpLnYyLlJhaWQSNQoNdm9sdW1lX2dyb3VwcxgIIAMoCzIeLm1ldGFsc3RhY2suYXBpLnYyLlZvbHVtZUdyb3VwEjkKD2xvZ2ljYWxfdm9sdW1lcxgJIAMoCzIgLm1ldGFsc3RhY2suYXBpLnYyLkxvZ2ljYWxWb2x1bWUSQwoLY29uc3RyYWludHMYCiABKAsyLi5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0Q29uc3RyYWludHNCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uIqcBChtGaWxlc3lzdGVtTGF5b3V0Q29uc3RyYWludHMSDQoFc2l6ZXMYASADKAkSSgoGaW1hZ2VzGAIgAygLMjoubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dENvbnN0cmFpbnRzLkltYWdlc0VudHJ5Gi0KC0ltYWdlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEi7AIKCkZpbGVzeXN0ZW0SGwoGZGV2aWNlGAEgASgJQgu6SAhyBsCzrrECARI2CgZmb3JtYXQYAiABKA4yGS5tZXRhbHN0YWNrLmFwaS52Mi5Gb3JtYXRCC7pICMgBAYIBAhABEh4KBG5hbWUYAyABKAlCC7pICHIGwLOusQIBSACIAQESJQoLZGVzY3JpcHRpb24YBCABKAlCC7pICHIGyLOusQIBSAGIAQESHQoEcGF0aBgFIAEoCUIKukgHcgUQARiAIEgCiAEBEh4KBWxhYmVsGAYgASgJQgq6SAdyBRACGIABSAOIAQESKgoNbW91bnRfb3B0aW9ucxgHIAMoCUITukgQkgENECAYASIHcgUQARiAARIrCg5jcmVhdGVfb3B0aW9ucxgIIAMoCUITukgQkgENECAYASIHcgUQARiAAUIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CBwoFX3BhdGhCCAoGX2xhYmVsIlgKBERpc2sSGgoGZGV2aWNlGAEgASgJQgq6SAdyBRACGIABEjQKCnBhcnRpdGlvbnMYAiADKAsyIC5tZXRhbHN0YWNrLmFwaS52Mi5EaXNrUGFydGl0aW9uIqIBCgRSYWlkEhIKCmFycmF5X25hbWUYASABKAkSDwoHZGV2aWNlcxgCIAMoCRI4CgVsZXZlbBgDIAEoDjIcLm1ldGFsc3RhY2suYXBpLnYyLlJhaWRMZXZlbEILukgIyAEBggECEAESKwoOY3JlYXRlX29wdGlvbnMYBCADKAlCE7pIEJIBDRAgGAEiB3IFEAEYgAESDgoGc3BhcmVzGAUgASgFIpgBCg1EaXNrUGFydGl0aW9uEg4KBm51bWJlchgBIAEoDRISCgVsYWJlbBgCIAEoCUgAiAEBEgwKBHNpemUYAyABKAQSPgoIZ3B0X3R5cGUYBCABKA4yGi5tZXRhbHN0YWNrLmFwaS52Mi5HUFRUeXBlQgu6SAjIAQGCAQIQAUgBiAEBQggKBl9sYWJlbEILCglfZ3B0X3R5cGUiRwoLVm9sdW1lR3JvdXASGQoEbmFtZRgBIAEoCUILukgIcgbAs66xAgESDwoHZGV2aWNlcxgCIAMoCRIMCgR0YWdzGAMgAygJIpIBCg1Mb2dpY2FsVm9sdW1lEhkKBG5hbWUYASABKAlCC7pICHIGwLOusQIBEiAKDHZvbHVtZV9ncm91cBgCIAEoCUIKukgHcgUQAhiAARIMCgRzaXplGAMgASgEEjYKCGx2bV90eXBlGAQgASgOMhoubWV0YWxzdGFjay5hcGkudjIuTFZNVHlwZUIIukgFggECEAEqhgEKB0xWTVR5cGUSGAoUTFZNX1RZUEVfVU5TUEVDSUZJRUQQABIfCg9MVk1fVFlQRV9MSU5FQVIQARoKgrIZBmxpbmVhchIhChBMVk1fVFlQRV9TVFJJUEVEEAIaC4KyGQdzdHJpcGVkEh0KDkxWTV9UWVBFX1JBSUQxEAMaCYKyGQVyYWlkMSrEAQoGRm9ybWF0EhYKEkZPUk1BVF9VTlNQRUNJRklFRBAAEhkKC0ZPUk1BVF9WRkFUEAEaCIKyGQR2ZmF0EhkKC0ZPUk1BVF9FWFQzEAIaCIKyGQRleHQzEhkKC0ZPUk1BVF9FWFQ0EAMaCIKyGQRleHQ0EhkKC0ZPUk1BVF9TV0FQEAQaCIKyGQRzd2FwEhsKDEZPUk1BVF9UTVBGUxAFGgmCshkFdG1wZnMSGQoLRk9STUFUX05PTkUQBhoIgrIZBG5vbmUqowEKB0dQVFR5cGUSGAoUR1BUX1RZUEVfVU5TUEVDSUZJRUQQABIbCg1HUFRfVFlQRV9CT09UEAEaCIKyGQRlZjAwEhwKDkdQVF9UWVBFX0xJTlVYEAIaCIKyGQQ4MzAwEiEKE0dQVF9UWVBFX0xJTlVYX1JBSUQQAxoIgrIZBGZkMDASIAoSR1BUX1RZUEVfTElOVVhfTFZNEAQaCIKyGQQ4ZTAwKksKCVJhaWRMZXZlbBIaChZSQUlEX0xFVkVMX1VOU1BFQ0lGSUVEEAASEAoMUkFJRF9MRVZFTF8wEAESEAoMUkFJRF9MRVZFTF8xEAIy8gIKEUZpbGVzeXN0ZW1TZXJ2aWNlEnAKA0dldBIuLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVxdWVzdBovLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVzcG9uc2UiCNjzGALg8xgCEnMKBExpc3QSLy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZUxpc3RSZXF1ZXN0GjAubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VMaXN0UmVzcG9uc2UiCNjzGALg8xgCEnYKBU1hdGNoEjAubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VNYXRjaFJlcXVlc3QaMS5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZU1hdGNoUmVzcG9uc2UiCNjzGALg8xgCQsUBChVjb20ubWV0YWxzdGFjay5hcGkudjJCD0ZpbGVzeXN0ZW1Qcm90b1ABWjVnaXRodWIuY29tL21ldGFsLXN0YWNrL2FwaS9nby9tZXRhbHN0YWNrL2FwaS92MjthcGl2MqICA01BWKoCEU1ldGFsc3RhY2suQXBpLlYyygIRTWV0YWxzdGFja1xBcGlcVjLiAh1NZXRhbHN0YWNrXEFwaVxWMlxHUEJNZXRhZGF0YeoCE01ldGFsc3RhY2s6OkFwaTo6VjJiBnByb3RvMw", [file_buf_validate_validate, file_metalstack_api_v2_common, file_metalstack_api_v2_predefined_rules]); + fileDesc("CiJtZXRhbHN0YWNrL2FwaS92Mi9maWxlc3lzdGVtLnByb3RvEhFtZXRhbHN0YWNrLmFwaS52MiI2ChtGaWxlc3lzdGVtU2VydmljZUdldFJlcXVlc3QSFwoCaWQYASABKAlCC7pICHIGwLOusQIBIkMKHEZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlcXVlc3QSHAoCaWQYASABKAlCC7pICHIGwLOusQIBSACIAQFCBQoDX2lkIl4KHEZpbGVzeXN0ZW1TZXJ2aWNlR2V0UmVzcG9uc2USPgoRZmlsZXN5c3RlbV9sYXlvdXQYASABKAsyIy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtTGF5b3V0ImAKHUZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlc3BvbnNlEj8KEmZpbGVzeXN0ZW1fbGF5b3V0cxgBIAMoCzIjLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXQiywEKHUZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXF1ZXN0Ej4KDnNpemVfYW5kX2ltYWdlGAEgASgLMiQubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hJbWFnZUFuZFNpemVIABJaChxtYWNoaW5lX2FuZF9maWxlc3lzdGVtbGF5b3V0GAIgASgLMjIubWV0YWxzdGFjay5hcGkudjIuTWF0Y2hNYWNoaW5lQW5kRmlsZXN5c3RlbUxheW91dEgAQg4KBW1hdGNoEgW6SAIIASJKChFNYXRjaEltYWdlQW5kU2l6ZRIZCgRzaXplGAEgASgJQgu6SAhyBsCzrrECARIaCgVpbWFnZRgCIAEoCUILukgIcgbAs66xAgEiZAofTWF0Y2hNYWNoaW5lQW5kRmlsZXN5c3RlbUxheW91dBIZCgdtYWNoaW5lGAEgASgJQgi6SAVyA7ABARImChFmaWxlc3lzdGVtX2xheW91dBgCIAEoCUILukgIcgbAs66xAgEiYAoeRmlsZXN5c3RlbVNlcnZpY2VNYXRjaFJlc3BvbnNlEj4KEWZpbGVzeXN0ZW1fbGF5b3V0GAEgASgLMiMubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dCLsAwoQRmlsZXN5c3RlbUxheW91dBIXCgJpZBgBIAEoCUILukgIcgbAs66xAgESJQoEbWV0YRgCIAEoCzIXLm1ldGFsc3RhY2suYXBpLnYyLk1ldGESHgoEbmFtZRgDIAEoCUILukgIcgbAs66xAgFIAIgBARIlCgtkZXNjcmlwdGlvbhgEIAEoCUILukgIcgbIs66xAgFIAYgBARIyCgtmaWxlc3lzdGVtcxgFIAMoCzIdLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW0SJgoFZGlza3MYBiADKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5EaXNrEiUKBHJhaWQYByADKAsyFy5tZXRhbHN0YWNrLmFwaS52Mi5SYWlkEjUKDXZvbHVtZV9ncm91cHMYCCADKAsyHi5tZXRhbHN0YWNrLmFwaS52Mi5Wb2x1bWVHcm91cBI5Cg9sb2dpY2FsX3ZvbHVtZXMYCSADKAsyIC5tZXRhbHN0YWNrLmFwaS52Mi5Mb2dpY2FsVm9sdW1lEkMKC2NvbnN0cmFpbnRzGAogASgLMi4ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbUxheW91dENvbnN0cmFpbnRzQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbiKnAQobRmlsZXN5c3RlbUxheW91dENvbnN0cmFpbnRzEg0KBXNpemVzGAEgAygJEkoKBmltYWdlcxgCIAMoCzI6Lm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1MYXlvdXRDb25zdHJhaW50cy5JbWFnZXNFbnRyeRotCgtJbWFnZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIuwCCgpGaWxlc3lzdGVtEhsKBmRldmljZRgBIAEoCUILukgIcgbAs66xAgESNgoGZm9ybWF0GAIgASgOMhkubWV0YWxzdGFjay5hcGkudjIuRm9ybWF0Qgu6SAjIAQGCAQIQARIeCgRuYW1lGAMgASgJQgu6SAhyBsCzrrECAUgAiAEBEiUKC2Rlc2NyaXB0aW9uGAQgASgJQgu6SAhyBsizrrECAUgBiAEBEh0KBHBhdGgYBSABKAlCCrpIB3IFEAEYgCBIAogBARIeCgVsYWJlbBgGIAEoCUIKukgHcgUQAhiAAUgDiAEBEioKDW1vdW50X29wdGlvbnMYByADKAlCE7pIEJIBDRAgGAEiB3IFEAEYgAESKwoOY3JlYXRlX29wdGlvbnMYCCADKAlCE7pIEJIBDRAgGAEiB3IFEAEYgAFCBwoFX25hbWVCDgoMX2Rlc2NyaXB0aW9uQgcKBV9wYXRoQggKBl9sYWJlbCJYCgREaXNrEhoKBmRldmljZRgBIAEoCUIKukgHcgUQAhiAARI0CgpwYXJ0aXRpb25zGAIgAygLMiAubWV0YWxzdGFjay5hcGkudjIuRGlza1BhcnRpdGlvbiKiAQoEUmFpZBISCgphcnJheV9uYW1lGAEgASgJEg8KB2RldmljZXMYAiADKAkSOAoFbGV2ZWwYAyABKA4yHC5tZXRhbHN0YWNrLmFwaS52Mi5SYWlkTGV2ZWxCC7pICMgBAYIBAhABEisKDmNyZWF0ZV9vcHRpb25zGAQgAygJQhO6SBCSAQ0QIBgBIgdyBRABGIABEg4KBnNwYXJlcxgFIAEoBSKYAQoNRGlza1BhcnRpdGlvbhIOCgZudW1iZXIYASABKA0SEgoFbGFiZWwYAiABKAlIAIgBARIMCgRzaXplGAMgASgEEj4KCGdwdF90eXBlGAQgASgOMhoubWV0YWxzdGFjay5hcGkudjIuR1BUVHlwZUILukgIyAEBggECEAFIAYgBAUIICgZfbGFiZWxCCwoJX2dwdF90eXBlIkcKC1ZvbHVtZUdyb3VwEhkKBG5hbWUYASABKAlCC7pICHIGwLOusQIBEg8KB2RldmljZXMYAiADKAkSDAoEdGFncxgDIAMoCSKSAQoNTG9naWNhbFZvbHVtZRIZCgRuYW1lGAEgASgJQgu6SAhyBsCzrrECARIgCgx2b2x1bWVfZ3JvdXAYAiABKAlCCrpIB3IFEAIYgAESDAoEc2l6ZRgDIAEoBBI2Cghsdm1fdHlwZRgEIAEoDjIaLm1ldGFsc3RhY2suYXBpLnYyLkxWTVR5cGVCCLpIBYIBAhABKoYBCgdMVk1UeXBlEhgKFExWTV9UWVBFX1VOU1BFQ0lGSUVEEAASHwoPTFZNX1RZUEVfTElORUFSEAEaCoKyGQZsaW5lYXISIQoQTFZNX1RZUEVfU1RSSVBFRBACGguCshkHc3RyaXBlZBIdCg5MVk1fVFlQRV9SQUlEMRADGgmCshkFcmFpZDEqxAEKBkZvcm1hdBIWChJGT1JNQVRfVU5TUEVDSUZJRUQQABIZCgtGT1JNQVRfVkZBVBABGgiCshkEdmZhdBIZCgtGT1JNQVRfRVhUMxACGgiCshkEZXh0MxIZCgtGT1JNQVRfRVhUNBADGgiCshkEZXh0NBIZCgtGT1JNQVRfU1dBUBAEGgiCshkEc3dhcBIbCgxGT1JNQVRfVE1QRlMQBRoJgrIZBXRtcGZzEhkKC0ZPUk1BVF9OT05FEAYaCIKyGQRub25lKqMBCgdHUFRUeXBlEhgKFEdQVF9UWVBFX1VOU1BFQ0lGSUVEEAASGwoNR1BUX1RZUEVfQk9PVBABGgiCshkEZWYwMBIcCg5HUFRfVFlQRV9MSU5VWBACGgiCshkEODMwMBIhChNHUFRfVFlQRV9MSU5VWF9SQUlEEAMaCIKyGQRmZDAwEiAKEkdQVF9UWVBFX0xJTlVYX0xWTRAEGgiCshkEOGUwMCpLCglSYWlkTGV2ZWwSGgoWUkFJRF9MRVZFTF9VTlNQRUNJRklFRBAAEhAKDFJBSURfTEVWRUxfMBABEhAKDFJBSURfTEVWRUxfMRACMvICChFGaWxlc3lzdGVtU2VydmljZRJwCgNHZXQSLi5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZUdldFJlcXVlc3QaLy5tZXRhbHN0YWNrLmFwaS52Mi5GaWxlc3lzdGVtU2VydmljZUdldFJlc3BvbnNlIgjY8xgC4PMYAhJzCgRMaXN0Ei8ubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VMaXN0UmVxdWVzdBowLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlTGlzdFJlc3BvbnNlIgjY8xgC4PMYAhJ2CgVNYXRjaBIwLm1ldGFsc3RhY2suYXBpLnYyLkZpbGVzeXN0ZW1TZXJ2aWNlTWF0Y2hSZXF1ZXN0GjEubWV0YWxzdGFjay5hcGkudjIuRmlsZXN5c3RlbVNlcnZpY2VNYXRjaFJlc3BvbnNlIgjY8xgC4PMYAkLFAQoVY29tLm1ldGFsc3RhY2suYXBpLnYyQg9GaWxlc3lzdGVtUHJvdG9QAVo1Z2l0aHViLmNvbS9tZXRhbC1zdGFjay9hcGkvZ28vbWV0YWxzdGFjay9hcGkvdjI7YXBpdjKiAgNNQViqAhFNZXRhbHN0YWNrLkFwaS5WMsoCEU1ldGFsc3RhY2tcQXBpXFYy4gIdTWV0YWxzdGFja1xBcGlcVjJcR1BCTWV0YWRhdGHqAhNNZXRhbHN0YWNrOjpBcGk6OlYyYgZwcm90bzM", [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 diff --git a/proto/Makefile b/proto/Makefile index 93484a50..f254ea04 100644 --- a/proto/Makefile +++ b/proto/Makefile @@ -1,5 +1,5 @@ MAKEFLAGS += --no-print-directory -BUF_VERSION := 1.69.0 +BUF_VERSION := 1.70.0 _buf: docker run --rm \ diff --git a/proto/buf.gen.yaml b/proto/buf.gen.yaml index a5275673..713ab183 100644 --- a/proto/buf.gen.yaml +++ b/proto/buf.gen.yaml @@ -20,9 +20,9 @@ plugins: out: ../go opt: paths=source_relative,simple # python - - remote: buf.build/protocolbuffers/python:v34.1 + - remote: buf.build/protocolbuffers/python:v35.0 out: ../python - - remote: buf.build/protocolbuffers/pyi:v34.1 + - remote: buf.build/protocolbuffers/pyi:v35.0 out: ../python - remote: buf.build/connectrpc/python:v0.8.1 out: ../python diff --git a/proto/metalstack/api/v2/filesystem.proto b/proto/metalstack/api/v2/filesystem.proto index 3543d64e..21d3426e 100644 --- a/proto/metalstack/api/v2/filesystem.proto +++ b/proto/metalstack/api/v2/filesystem.proto @@ -54,6 +54,8 @@ 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 diff --git a/python/metalstack/admin/v2/audit_pb2.py b/python/metalstack/admin/v2/audit_pb2.py index 4570edbc..cf257a9d 100644 --- a/python/metalstack/admin/v2/audit_pb2.py +++ b/python/metalstack/admin/v2/audit_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/admin/v2/audit.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/admin/v2/audit.proto' ) diff --git a/python/metalstack/admin/v2/component_pb2.py b/python/metalstack/admin/v2/component_pb2.py index 04773643..c13a4856 100644 --- a/python/metalstack/admin/v2/component_pb2.py +++ b/python/metalstack/admin/v2/component_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/admin/v2/component.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/admin/v2/component.proto' ) diff --git a/python/metalstack/admin/v2/filesystem_pb2.py b/python/metalstack/admin/v2/filesystem_pb2.py index a7de8f99..4818638d 100644 --- a/python/metalstack/admin/v2/filesystem_pb2.py +++ b/python/metalstack/admin/v2/filesystem_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/admin/v2/filesystem.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/admin/v2/filesystem.proto' ) diff --git a/python/metalstack/admin/v2/image_pb2.py b/python/metalstack/admin/v2/image_pb2.py index c8552df8..e86fa46b 100644 --- a/python/metalstack/admin/v2/image_pb2.py +++ b/python/metalstack/admin/v2/image_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/admin/v2/image.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/admin/v2/image.proto' ) diff --git a/python/metalstack/admin/v2/ip_pb2.py b/python/metalstack/admin/v2/ip_pb2.py index 21f202a0..8ff4b0a3 100644 --- a/python/metalstack/admin/v2/ip_pb2.py +++ b/python/metalstack/admin/v2/ip_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/admin/v2/ip.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/admin/v2/ip.proto' ) diff --git a/python/metalstack/admin/v2/machine_pb2.py b/python/metalstack/admin/v2/machine_pb2.py index c4084424..1291814c 100644 --- a/python/metalstack/admin/v2/machine_pb2.py +++ b/python/metalstack/admin/v2/machine_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/admin/v2/machine.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/admin/v2/machine.proto' ) diff --git a/python/metalstack/admin/v2/network_pb2.py b/python/metalstack/admin/v2/network_pb2.py index 80085afa..669c6cf4 100644 --- a/python/metalstack/admin/v2/network_pb2.py +++ b/python/metalstack/admin/v2/network_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/admin/v2/network.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/admin/v2/network.proto' ) diff --git a/python/metalstack/admin/v2/partition_pb2.py b/python/metalstack/admin/v2/partition_pb2.py index 15a02060..6843dfcc 100644 --- a/python/metalstack/admin/v2/partition_pb2.py +++ b/python/metalstack/admin/v2/partition_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/admin/v2/partition.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/admin/v2/partition.proto' ) diff --git a/python/metalstack/admin/v2/project_pb2.py b/python/metalstack/admin/v2/project_pb2.py index 3bb22058..2e0431fb 100644 --- a/python/metalstack/admin/v2/project_pb2.py +++ b/python/metalstack/admin/v2/project_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/admin/v2/project.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/admin/v2/project.proto' ) diff --git a/python/metalstack/admin/v2/size_imageconstraint_pb2.py b/python/metalstack/admin/v2/size_imageconstraint_pb2.py index c9babafb..3e0672d1 100644 --- a/python/metalstack/admin/v2/size_imageconstraint_pb2.py +++ b/python/metalstack/admin/v2/size_imageconstraint_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/admin/v2/size_imageconstraint.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/admin/v2/size_imageconstraint.proto' ) diff --git a/python/metalstack/admin/v2/size_pb2.py b/python/metalstack/admin/v2/size_pb2.py index b45276f6..da1dc60c 100644 --- a/python/metalstack/admin/v2/size_pb2.py +++ b/python/metalstack/admin/v2/size_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/admin/v2/size.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/admin/v2/size.proto' ) diff --git a/python/metalstack/admin/v2/size_reservation_pb2.py b/python/metalstack/admin/v2/size_reservation_pb2.py index 74c6c3c0..78bb8923 100644 --- a/python/metalstack/admin/v2/size_reservation_pb2.py +++ b/python/metalstack/admin/v2/size_reservation_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/admin/v2/size_reservation.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/admin/v2/size_reservation.proto' ) diff --git a/python/metalstack/admin/v2/switch_pb2.py b/python/metalstack/admin/v2/switch_pb2.py index 771bc01c..521390ca 100644 --- a/python/metalstack/admin/v2/switch_pb2.py +++ b/python/metalstack/admin/v2/switch_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/admin/v2/switch.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/admin/v2/switch.proto' ) diff --git a/python/metalstack/admin/v2/task_pb2.py b/python/metalstack/admin/v2/task_pb2.py index 62c8e479..a5e77f2d 100644 --- a/python/metalstack/admin/v2/task_pb2.py +++ b/python/metalstack/admin/v2/task_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/admin/v2/task.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/admin/v2/task.proto' ) diff --git a/python/metalstack/admin/v2/tenant_pb2.py b/python/metalstack/admin/v2/tenant_pb2.py index ac0a2200..450fce34 100644 --- a/python/metalstack/admin/v2/tenant_pb2.py +++ b/python/metalstack/admin/v2/tenant_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/admin/v2/tenant.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/admin/v2/tenant.proto' ) diff --git a/python/metalstack/admin/v2/token_pb2.py b/python/metalstack/admin/v2/token_pb2.py index 70eeebfb..78f120f7 100644 --- a/python/metalstack/admin/v2/token_pb2.py +++ b/python/metalstack/admin/v2/token_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/admin/v2/token.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/admin/v2/token.proto' ) diff --git a/python/metalstack/admin/v2/vpn_pb2.py b/python/metalstack/admin/v2/vpn_pb2.py index 3544948c..eb97d218 100644 --- a/python/metalstack/admin/v2/vpn_pb2.py +++ b/python/metalstack/admin/v2/vpn_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/admin/v2/vpn.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/admin/v2/vpn.proto' ) diff --git a/python/metalstack/api/v2/audit_pb2.py b/python/metalstack/api/v2/audit_pb2.py index a011b2d1..47950da6 100644 --- a/python/metalstack/api/v2/audit_pb2.py +++ b/python/metalstack/api/v2/audit_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/audit.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/audit.proto' ) diff --git a/python/metalstack/api/v2/common_pb2.py b/python/metalstack/api/v2/common_pb2.py index 26793a1a..c7641ca6 100644 --- a/python/metalstack/api/v2/common_pb2.py +++ b/python/metalstack/api/v2/common_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/common.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/common.proto' ) diff --git a/python/metalstack/api/v2/component_pb2.py b/python/metalstack/api/v2/component_pb2.py index 66a0e3c3..3c557063 100644 --- a/python/metalstack/api/v2/component_pb2.py +++ b/python/metalstack/api/v2/component_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/component.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/component.proto' ) diff --git a/python/metalstack/api/v2/filesystem_pb2.py b/python/metalstack/api/v2/filesystem_pb2.py index 55311134..bc83d8e6 100644 --- a/python/metalstack/api/v2/filesystem_pb2.py +++ b/python/metalstack/api/v2/filesystem_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/filesystem.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/filesystem.proto' ) @@ -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\"\xee\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\x07\n\x05match\"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\"\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') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -65,6 +65,8 @@ _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 @@ -119,14 +121,14 @@ _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=3121 - _globals['_LVMTYPE']._serialized_end=3255 - _globals['_FORMAT']._serialized_start=3258 - _globals['_FORMAT']._serialized_end=3454 - _globals['_GPTTYPE']._serialized_start=3457 - _globals['_GPTTYPE']._serialized_end=3620 - _globals['_RAIDLEVEL']._serialized_start=3622 - _globals['_RAIDLEVEL']._serialized_end=3697 + _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['_FILESYSTEMSERVICEGETREQUEST']._serialized_start=160 _globals['_FILESYSTEMSERVICEGETREQUEST']._serialized_end=218 _globals['_FILESYSTEMSERVICELISTREQUEST']._serialized_start=220 @@ -136,31 +138,31 @@ _globals['_FILESYSTEMSERVICELISTRESPONSE']._serialized_start=407 _globals['_FILESYSTEMSERVICELISTRESPONSE']._serialized_end=522 _globals['_FILESYSTEMSERVICEMATCHREQUEST']._serialized_start=525 - _globals['_FILESYSTEMSERVICEMATCHREQUEST']._serialized_end=763 - _globals['_MATCHIMAGEANDSIZE']._serialized_start=765 - _globals['_MATCHIMAGEANDSIZE']._serialized_end=852 - _globals['_MATCHMACHINEANDFILESYSTEMLAYOUT']._serialized_start=854 - _globals['_MATCHMACHINEANDFILESYSTEMLAYOUT']._serialized_end=981 - _globals['_FILESYSTEMSERVICEMATCHRESPONSE']._serialized_start=983 - _globals['_FILESYSTEMSERVICEMATCHRESPONSE']._serialized_end=1097 - _globals['_FILESYSTEMLAYOUT']._serialized_start=1100 - _globals['_FILESYSTEMLAYOUT']._serialized_end=1690 - _globals['_FILESYSTEMLAYOUTCONSTRAINTS']._serialized_start=1693 - _globals['_FILESYSTEMLAYOUTCONSTRAINTS']._serialized_end=1887 - _globals['_FILESYSTEMLAYOUTCONSTRAINTS_IMAGESENTRY']._serialized_start=1830 - _globals['_FILESYSTEMLAYOUTCONSTRAINTS_IMAGESENTRY']._serialized_end=1887 - _globals['_FILESYSTEM']._serialized_start=1890 - _globals['_FILESYSTEM']._serialized_end=2331 - _globals['_DISK']._serialized_start=2333 - _globals['_DISK']._serialized_end=2441 - _globals['_RAID']._serialized_start=2444 - _globals['_RAID']._serialized_end=2656 - _globals['_DISKPARTITION']._serialized_start=2659 - _globals['_DISKPARTITION']._serialized_end=2841 - _globals['_VOLUMEGROUP']._serialized_start=2843 - _globals['_VOLUMEGROUP']._serialized_end=2935 - _globals['_LOGICALVOLUME']._serialized_start=2938 - _globals['_LOGICALVOLUME']._serialized_end=3118 - _globals['_FILESYSTEMSERVICE']._serialized_start=3700 - _globals['_FILESYSTEMSERVICE']._serialized_end=4070 + _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 # @@protoc_insertion_point(module_scope) diff --git a/python/metalstack/api/v2/health_pb2.py b/python/metalstack/api/v2/health_pb2.py index cf48f89f..5b6db11f 100644 --- a/python/metalstack/api/v2/health_pb2.py +++ b/python/metalstack/api/v2/health_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/health.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/health.proto' ) diff --git a/python/metalstack/api/v2/image_pb2.py b/python/metalstack/api/v2/image_pb2.py index 2ea4aeb7..bf1db3b3 100644 --- a/python/metalstack/api/v2/image_pb2.py +++ b/python/metalstack/api/v2/image_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/image.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/image.proto' ) diff --git a/python/metalstack/api/v2/ip_pb2.py b/python/metalstack/api/v2/ip_pb2.py index 2963d2dc..c2d70912 100644 --- a/python/metalstack/api/v2/ip_pb2.py +++ b/python/metalstack/api/v2/ip_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/ip.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/ip.proto' ) diff --git a/python/metalstack/api/v2/machine_pb2.py b/python/metalstack/api/v2/machine_pb2.py index d0bfee3f..985a943e 100644 --- a/python/metalstack/api/v2/machine_pb2.py +++ b/python/metalstack/api/v2/machine_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/machine.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/machine.proto' ) diff --git a/python/metalstack/api/v2/method_pb2.py b/python/metalstack/api/v2/method_pb2.py index dcf4b87e..1e6f8840 100644 --- a/python/metalstack/api/v2/method_pb2.py +++ b/python/metalstack/api/v2/method_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/method.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/method.proto' ) diff --git a/python/metalstack/api/v2/network_pb2.py b/python/metalstack/api/v2/network_pb2.py index 1065ebee..c777b701 100644 --- a/python/metalstack/api/v2/network_pb2.py +++ b/python/metalstack/api/v2/network_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/network.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/network.proto' ) diff --git a/python/metalstack/api/v2/partition_pb2.py b/python/metalstack/api/v2/partition_pb2.py index 0ebc8b8d..94f9f3c7 100644 --- a/python/metalstack/api/v2/partition_pb2.py +++ b/python/metalstack/api/v2/partition_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/partition.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/partition.proto' ) diff --git a/python/metalstack/api/v2/predefined_rules_pb2.py b/python/metalstack/api/v2/predefined_rules_pb2.py index a3ea170a..e30eb41e 100644 --- a/python/metalstack/api/v2/predefined_rules_pb2.py +++ b/python/metalstack/api/v2/predefined_rules_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/predefined_rules.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/predefined_rules.proto' ) diff --git a/python/metalstack/api/v2/project_pb2.py b/python/metalstack/api/v2/project_pb2.py index f910aca9..713db901 100644 --- a/python/metalstack/api/v2/project_pb2.py +++ b/python/metalstack/api/v2/project_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/project.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/project.proto' ) diff --git a/python/metalstack/api/v2/size_imageconstraint_pb2.py b/python/metalstack/api/v2/size_imageconstraint_pb2.py index cf777819..130e78a2 100644 --- a/python/metalstack/api/v2/size_imageconstraint_pb2.py +++ b/python/metalstack/api/v2/size_imageconstraint_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/size_imageconstraint.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/size_imageconstraint.proto' ) diff --git a/python/metalstack/api/v2/size_pb2.py b/python/metalstack/api/v2/size_pb2.py index d9b7e227..f745f47c 100644 --- a/python/metalstack/api/v2/size_pb2.py +++ b/python/metalstack/api/v2/size_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/size.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/size.proto' ) diff --git a/python/metalstack/api/v2/size_reservation_pb2.py b/python/metalstack/api/v2/size_reservation_pb2.py index bab646f0..6ea0fa2f 100644 --- a/python/metalstack/api/v2/size_reservation_pb2.py +++ b/python/metalstack/api/v2/size_reservation_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/size_reservation.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/size_reservation.proto' ) diff --git a/python/metalstack/api/v2/switch_pb2.py b/python/metalstack/api/v2/switch_pb2.py index e11b18c4..c8f0ead9 100644 --- a/python/metalstack/api/v2/switch_pb2.py +++ b/python/metalstack/api/v2/switch_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/switch.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/switch.proto' ) diff --git a/python/metalstack/api/v2/tenant_pb2.py b/python/metalstack/api/v2/tenant_pb2.py index 911976b3..38ef83a8 100644 --- a/python/metalstack/api/v2/tenant_pb2.py +++ b/python/metalstack/api/v2/tenant_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/tenant.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/tenant.proto' ) diff --git a/python/metalstack/api/v2/token_pb2.py b/python/metalstack/api/v2/token_pb2.py index d7a768de..57d7ff04 100644 --- a/python/metalstack/api/v2/token_pb2.py +++ b/python/metalstack/api/v2/token_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/token.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/token.proto' ) diff --git a/python/metalstack/api/v2/user_pb2.py b/python/metalstack/api/v2/user_pb2.py index 60efb069..309e41b6 100644 --- a/python/metalstack/api/v2/user_pb2.py +++ b/python/metalstack/api/v2/user_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/user.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/user.proto' ) diff --git a/python/metalstack/api/v2/version_pb2.py b/python/metalstack/api/v2/version_pb2.py index 725fb09e..4ecadd84 100644 --- a/python/metalstack/api/v2/version_pb2.py +++ b/python/metalstack/api/v2/version_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/version.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/version.proto' ) diff --git a/python/metalstack/api/v2/vpn_pb2.py b/python/metalstack/api/v2/vpn_pb2.py index 1dc3c647..727173be 100644 --- a/python/metalstack/api/v2/vpn_pb2.py +++ b/python/metalstack/api/v2/vpn_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/api/v2/vpn.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/api/v2/vpn.proto' ) diff --git a/python/metalstack/infra/v2/bmc_pb2.py b/python/metalstack/infra/v2/bmc_pb2.py index e8637b56..7d889687 100644 --- a/python/metalstack/infra/v2/bmc_pb2.py +++ b/python/metalstack/infra/v2/bmc_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/infra/v2/bmc.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/infra/v2/bmc.proto' ) diff --git a/python/metalstack/infra/v2/boot_pb2.py b/python/metalstack/infra/v2/boot_pb2.py index a4a9ccdf..c4a90423 100644 --- a/python/metalstack/infra/v2/boot_pb2.py +++ b/python/metalstack/infra/v2/boot_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/infra/v2/boot.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/infra/v2/boot.proto' ) diff --git a/python/metalstack/infra/v2/component_pb2.py b/python/metalstack/infra/v2/component_pb2.py index 7991061b..57eaed49 100644 --- a/python/metalstack/infra/v2/component_pb2.py +++ b/python/metalstack/infra/v2/component_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/infra/v2/component.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/infra/v2/component.proto' ) diff --git a/python/metalstack/infra/v2/event_pb2.py b/python/metalstack/infra/v2/event_pb2.py index f436b3c8..7885adc7 100644 --- a/python/metalstack/infra/v2/event_pb2.py +++ b/python/metalstack/infra/v2/event_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/infra/v2/event.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/infra/v2/event.proto' ) diff --git a/python/metalstack/infra/v2/switch_pb2.py b/python/metalstack/infra/v2/switch_pb2.py index 545c8166..2eeb0b67 100644 --- a/python/metalstack/infra/v2/switch_pb2.py +++ b/python/metalstack/infra/v2/switch_pb2.py @@ -2,7 +2,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # NO CHECKED-IN PROTOBUF GENCODE # source: metalstack/infra/v2/switch.proto -# Protobuf Python Version: 7.34.1 +# Protobuf Python Version: 7.35.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -12,8 +12,8 @@ _runtime_version.ValidateProtobufRuntimeVersion( _runtime_version.Domain.PUBLIC, 7, - 34, - 1, + 35, + 0, '', 'metalstack/infra/v2/switch.proto' )