vagrant-unbundled 2.3.2.0 → 2.3.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (100) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +15 -0
  3. data/Gemfile.lock +12 -12
  4. data/LICENSE +1 -3
  5. data/lib/vagrant/errors.rb +4 -0
  6. data/lib/vagrant/util/install_cli_autocomplete.rb +3 -3
  7. data/lib/vagrant.rb +0 -3
  8. data/pkg/vagrant-unbundled-2.3.2.0.gem +0 -0
  9. data/plugins/commands/serve/command.rb +1 -1
  10. data/plugins/guests/solaris/cap/remove_public_key.rb +2 -2
  11. data/plugins/hosts/gentoo/host.rb +1 -1
  12. data/plugins/hosts/slackware/host.rb +1 -1
  13. data/plugins/providers/virtualbox/action/network.rb +8 -5
  14. data/plugins/providers/virtualbox/driver/base.rb +3 -1
  15. data/plugins/providers/virtualbox/driver/version_5_0.rb +40 -36
  16. data/plugins/providers/virtualbox/driver/version_7_0.rb +223 -5
  17. data/plugins/provisioners/ansible/cap/guest/debian/ansible_install.rb +1 -1
  18. data/plugins/provisioners/ansible/provisioner/host.rb +1 -1
  19. data/plugins/provisioners/chef/config/chef_zero.rb +1 -1
  20. data/plugins/synced_folders/rsync/helper.rb +1 -0
  21. data/templates/locales/en.yml +4 -0
  22. data/thirdparty/proto/api-common-protos/.bazelrc +2 -0
  23. data/thirdparty/proto/api-common-protos/.git +1 -0
  24. data/thirdparty/proto/api-common-protos/.gitignore +11 -0
  25. data/thirdparty/proto/api-common-protos/BUILD.bazel +129 -0
  26. data/thirdparty/proto/api-common-protos/CODE_OF_CONDUCT.md +43 -0
  27. data/thirdparty/proto/api-common-protos/CONTRIBUTING.md +42 -0
  28. data/thirdparty/proto/api-common-protos/Dockerfile +18 -0
  29. data/thirdparty/proto/api-common-protos/LICENSE +201 -0
  30. data/thirdparty/proto/api-common-protos/README.md +113 -0
  31. data/thirdparty/proto/api-common-protos/SECURITY.md +7 -0
  32. data/thirdparty/proto/api-common-protos/WORKSPACE +154 -0
  33. data/thirdparty/proto/api-common-protos/google/api/BUILD.bazel +246 -0
  34. data/thirdparty/proto/api-common-protos/google/api/README.md +46 -0
  35. data/thirdparty/proto/api-common-protos/google/api/annotations.proto +31 -0
  36. data/thirdparty/proto/api-common-protos/google/api/auth.proto +181 -0
  37. data/thirdparty/proto/api-common-protos/google/api/backend.proto +51 -0
  38. data/thirdparty/proto/api-common-protos/google/api/billing.proto +67 -0
  39. data/thirdparty/proto/api-common-protos/google/api/client.proto +99 -0
  40. data/thirdparty/proto/api-common-protos/google/api/config_change.proto +85 -0
  41. data/thirdparty/proto/api-common-protos/google/api/consumer.proto +83 -0
  42. data/thirdparty/proto/api-common-protos/google/api/context.proto +63 -0
  43. data/thirdparty/proto/api-common-protos/google/api/control.proto +33 -0
  44. data/thirdparty/proto/api-common-protos/google/api/distribution.proto +213 -0
  45. data/thirdparty/proto/api-common-protos/google/api/documentation.proto +157 -0
  46. data/thirdparty/proto/api-common-protos/google/api/endpoint.proto +71 -0
  47. data/thirdparty/proto/api-common-protos/google/api/field_behavior.proto +84 -0
  48. data/thirdparty/proto/api-common-protos/google/api/http.proto +318 -0
  49. data/thirdparty/proto/api-common-protos/google/api/httpbody.proto +76 -0
  50. data/thirdparty/proto/api-common-protos/google/api/label.proto +49 -0
  51. data/thirdparty/proto/api-common-protos/google/api/launch_stage.proto +67 -0
  52. data/thirdparty/proto/api-common-protos/google/api/log.proto +55 -0
  53. data/thirdparty/proto/api-common-protos/google/api/logging.proto +83 -0
  54. data/thirdparty/proto/api-common-protos/google/api/metric.proto +192 -0
  55. data/thirdparty/proto/api-common-protos/google/api/monitored_resource.proto +116 -0
  56. data/thirdparty/proto/api-common-protos/google/api/monitoring.proto +89 -0
  57. data/thirdparty/proto/api-common-protos/google/api/quota.proto +259 -0
  58. data/thirdparty/proto/api-common-protos/google/api/resource.proto +299 -0
  59. data/thirdparty/proto/api-common-protos/google/api/routing.proto +461 -0
  60. data/thirdparty/proto/api-common-protos/google/api/service.proto +175 -0
  61. data/thirdparty/proto/api-common-protos/google/api/source_info.proto +32 -0
  62. data/thirdparty/proto/api-common-protos/google/api/system_parameter.proto +96 -0
  63. data/thirdparty/proto/api-common-protos/google/api/usage.proto +92 -0
  64. data/thirdparty/proto/api-common-protos/google/cloud/extended_operations.proto +150 -0
  65. data/thirdparty/proto/api-common-protos/google/iam/README.md +14 -0
  66. data/thirdparty/proto/api-common-protos/google/iam/admin/v1/iam.proto +1087 -0
  67. data/thirdparty/proto/api-common-protos/google/iam/v1/iam_policy.proto +145 -0
  68. data/thirdparty/proto/api-common-protos/google/iam/v1/logging/audit_data.proto +34 -0
  69. data/thirdparty/proto/api-common-protos/google/iam/v1/options.proto +41 -0
  70. data/thirdparty/proto/api-common-protos/google/iam/v1/policy.proto +240 -0
  71. data/thirdparty/proto/api-common-protos/google/logging/type/README.md +12 -0
  72. data/thirdparty/proto/api-common-protos/google/logging/type/http_request.proto +92 -0
  73. data/thirdparty/proto/api-common-protos/google/logging/type/log_severity.proto +72 -0
  74. data/thirdparty/proto/api-common-protos/google/longrunning/README.md +31 -0
  75. data/thirdparty/proto/api-common-protos/google/longrunning/operations.proto +247 -0
  76. data/thirdparty/proto/api-common-protos/google/rpc/README.md +18 -0
  77. data/thirdparty/proto/api-common-protos/google/rpc/code.proto +186 -0
  78. data/thirdparty/proto/api-common-protos/google/rpc/context/attribute_context.proto +287 -0
  79. data/thirdparty/proto/api-common-protos/google/rpc/error_details.proto +246 -0
  80. data/thirdparty/proto/api-common-protos/google/rpc/status.proto +47 -0
  81. data/thirdparty/proto/api-common-protos/google/type/README.md +7 -0
  82. data/thirdparty/proto/api-common-protos/google/type/calendar_period.proto +57 -0
  83. data/thirdparty/proto/api-common-protos/google/type/color.proto +170 -0
  84. data/thirdparty/proto/api-common-protos/google/type/date.proto +50 -0
  85. data/thirdparty/proto/api-common-protos/google/type/datetime.proto +97 -0
  86. data/thirdparty/proto/api-common-protos/google/type/dayofweek.proto +51 -0
  87. data/thirdparty/proto/api-common-protos/google/type/expr.proto +51 -0
  88. data/thirdparty/proto/api-common-protos/google/type/fraction.proto +34 -0
  89. data/thirdparty/proto/api-common-protos/google/type/latlng.proto +37 -0
  90. data/thirdparty/proto/api-common-protos/google/type/money.proto +43 -0
  91. data/thirdparty/proto/api-common-protos/google/type/month.proto +66 -0
  92. data/thirdparty/proto/api-common-protos/google/type/postal_address.proto +135 -0
  93. data/thirdparty/proto/api-common-protos/google/type/quaternion.proto +95 -0
  94. data/thirdparty/proto/api-common-protos/google/type/timeofday.proto +44 -0
  95. data/thirdparty/proto/api-common-protos/renovate.json +5 -0
  96. data/thirdparty/proto/api-common-protos/repository_rules.bzl +222 -0
  97. data/vagrant.gemspec +4 -4
  98. data/version.txt +1 -1
  99. metadata +89 -20
  100. data/lib/vagrant/patches/net-ssh.rb +0 -286
@@ -0,0 +1,247 @@
1
+ // Copyright 2019 Google LLC.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ syntax = "proto3";
16
+
17
+ package google.longrunning;
18
+
19
+ import "google/api/annotations.proto";
20
+ import "google/api/client.proto";
21
+ import "google/protobuf/any.proto";
22
+ import "google/protobuf/duration.proto";
23
+ import "google/protobuf/empty.proto";
24
+ import "google/rpc/status.proto";
25
+ import "google/protobuf/descriptor.proto";
26
+
27
+ option cc_enable_arenas = true;
28
+ option csharp_namespace = "Google.LongRunning";
29
+ option go_package = "google.golang.org/genproto/googleapis/longrunning;longrunning";
30
+ option java_multiple_files = true;
31
+ option java_outer_classname = "OperationsProto";
32
+ option java_package = "com.google.longrunning";
33
+ option php_namespace = "Google\\LongRunning";
34
+
35
+ extend google.protobuf.MethodOptions {
36
+ // Additional information regarding long-running operations.
37
+ // In particular, this specifies the types that are returned from
38
+ // long-running operations.
39
+ //
40
+ // Required for methods that return `google.longrunning.Operation`; invalid
41
+ // otherwise.
42
+ google.longrunning.OperationInfo operation_info = 1049;
43
+ }
44
+
45
+ // Manages long-running operations with an API service.
46
+ //
47
+ // When an API method normally takes long time to complete, it can be designed
48
+ // to return [Operation][google.longrunning.Operation] to the client, and the client can use this
49
+ // interface to receive the real response asynchronously by polling the
50
+ // operation resource, or pass the operation resource to another API (such as
51
+ // Google Cloud Pub/Sub API) to receive the response. Any API service that
52
+ // returns long-running operations should implement the `Operations` interface
53
+ // so developers can have a consistent client experience.
54
+ service Operations {
55
+ option (google.api.default_host) = "longrunning.googleapis.com";
56
+
57
+ // Lists operations that match the specified filter in the request. If the
58
+ // server doesn't support this method, it returns `UNIMPLEMENTED`.
59
+ //
60
+ // NOTE: the `name` binding allows API services to override the binding
61
+ // to use different resource name schemes, such as `users/*/operations`. To
62
+ // override the binding, API services can add a binding such as
63
+ // `"/v1/{name=users/*}/operations"` to their service configuration.
64
+ // For backwards compatibility, the default name includes the operations
65
+ // collection id, however overriding users must ensure the name binding
66
+ // is the parent resource, without the operations collection id.
67
+ rpc ListOperations(ListOperationsRequest) returns (ListOperationsResponse) {
68
+ option (google.api.http) = {
69
+ get: "/v1/{name=operations}"
70
+ };
71
+ option (google.api.method_signature) = "name,filter";
72
+ }
73
+
74
+ // Gets the latest state of a long-running operation. Clients can use this
75
+ // method to poll the operation result at intervals as recommended by the API
76
+ // service.
77
+ rpc GetOperation(GetOperationRequest) returns (Operation) {
78
+ option (google.api.http) = {
79
+ get: "/v1/{name=operations/**}"
80
+ };
81
+ option (google.api.method_signature) = "name";
82
+ }
83
+
84
+ // Deletes a long-running operation. This method indicates that the client is
85
+ // no longer interested in the operation result. It does not cancel the
86
+ // operation. If the server doesn't support this method, it returns
87
+ // `google.rpc.Code.UNIMPLEMENTED`.
88
+ rpc DeleteOperation(DeleteOperationRequest) returns (google.protobuf.Empty) {
89
+ option (google.api.http) = {
90
+ delete: "/v1/{name=operations/**}"
91
+ };
92
+ option (google.api.method_signature) = "name";
93
+ }
94
+
95
+ // Starts asynchronous cancellation on a long-running operation. The server
96
+ // makes a best effort to cancel the operation, but success is not
97
+ // guaranteed. If the server doesn't support this method, it returns
98
+ // `google.rpc.Code.UNIMPLEMENTED`. Clients can use
99
+ // [Operations.GetOperation][google.longrunning.Operations.GetOperation] or
100
+ // other methods to check whether the cancellation succeeded or whether the
101
+ // operation completed despite cancellation. On successful cancellation,
102
+ // the operation is not deleted; instead, it becomes an operation with
103
+ // an [Operation.error][google.longrunning.Operation.error] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1,
104
+ // corresponding to `Code.CANCELLED`.
105
+ rpc CancelOperation(CancelOperationRequest) returns (google.protobuf.Empty) {
106
+ option (google.api.http) = {
107
+ post: "/v1/{name=operations/**}:cancel"
108
+ body: "*"
109
+ };
110
+ option (google.api.method_signature) = "name";
111
+ }
112
+
113
+ // Waits for the specified long-running operation until it is done or reaches
114
+ // at most a specified timeout, returning the latest state. If the operation
115
+ // is already done, the latest state is immediately returned. If the timeout
116
+ // specified is greater than the default HTTP/RPC timeout, the HTTP/RPC
117
+ // timeout is used. If the server does not support this method, it returns
118
+ // `google.rpc.Code.UNIMPLEMENTED`.
119
+ // Note that this method is on a best-effort basis. It may return the latest
120
+ // state before the specified timeout (including immediately), meaning even an
121
+ // immediate response is no guarantee that the operation is done.
122
+ rpc WaitOperation(WaitOperationRequest) returns (Operation) {
123
+ }
124
+ }
125
+
126
+ // This resource represents a long-running operation that is the result of a
127
+ // network API call.
128
+ message Operation {
129
+ // The server-assigned name, which is only unique within the same service that
130
+ // originally returns it. If you use the default HTTP mapping, the
131
+ // `name` should be a resource name ending with `operations/{unique_id}`.
132
+ string name = 1;
133
+
134
+ // Service-specific metadata associated with the operation. It typically
135
+ // contains progress information and common metadata such as create time.
136
+ // Some services might not provide such metadata. Any method that returns a
137
+ // long-running operation should document the metadata type, if any.
138
+ google.protobuf.Any metadata = 2;
139
+
140
+ // If the value is `false`, it means the operation is still in progress.
141
+ // If `true`, the operation is completed, and either `error` or `response` is
142
+ // available.
143
+ bool done = 3;
144
+
145
+ // The operation result, which can be either an `error` or a valid `response`.
146
+ // If `done` == `false`, neither `error` nor `response` is set.
147
+ // If `done` == `true`, exactly one of `error` or `response` is set.
148
+ oneof result {
149
+ // The error result of the operation in case of failure or cancellation.
150
+ google.rpc.Status error = 4;
151
+
152
+ // The normal response of the operation in case of success. If the original
153
+ // method returns no data on success, such as `Delete`, the response is
154
+ // `google.protobuf.Empty`. If the original method is standard
155
+ // `Get`/`Create`/`Update`, the response should be the resource. For other
156
+ // methods, the response should have the type `XxxResponse`, where `Xxx`
157
+ // is the original method name. For example, if the original method name
158
+ // is `TakeSnapshot()`, the inferred response type is
159
+ // `TakeSnapshotResponse`.
160
+ google.protobuf.Any response = 5;
161
+ }
162
+ }
163
+
164
+ // The request message for [Operations.GetOperation][google.longrunning.Operations.GetOperation].
165
+ message GetOperationRequest {
166
+ // The name of the operation resource.
167
+ string name = 1;
168
+ }
169
+
170
+ // The request message for [Operations.ListOperations][google.longrunning.Operations.ListOperations].
171
+ message ListOperationsRequest {
172
+ // The name of the operation's parent resource.
173
+ string name = 4;
174
+
175
+ // The standard list filter.
176
+ string filter = 1;
177
+
178
+ // The standard list page size.
179
+ int32 page_size = 2;
180
+
181
+ // The standard list page token.
182
+ string page_token = 3;
183
+ }
184
+
185
+ // The response message for [Operations.ListOperations][google.longrunning.Operations.ListOperations].
186
+ message ListOperationsResponse {
187
+ // A list of operations that matches the specified filter in the request.
188
+ repeated Operation operations = 1;
189
+
190
+ // The standard List next-page token.
191
+ string next_page_token = 2;
192
+ }
193
+
194
+ // The request message for [Operations.CancelOperation][google.longrunning.Operations.CancelOperation].
195
+ message CancelOperationRequest {
196
+ // The name of the operation resource to be cancelled.
197
+ string name = 1;
198
+ }
199
+
200
+ // The request message for [Operations.DeleteOperation][google.longrunning.Operations.DeleteOperation].
201
+ message DeleteOperationRequest {
202
+ // The name of the operation resource to be deleted.
203
+ string name = 1;
204
+ }
205
+
206
+ // The request message for [Operations.WaitOperation][google.longrunning.Operations.WaitOperation].
207
+ message WaitOperationRequest {
208
+ // The name of the operation resource to wait on.
209
+ string name = 1;
210
+
211
+ // The maximum duration to wait before timing out. If left blank, the wait
212
+ // will be at most the time permitted by the underlying HTTP/RPC protocol.
213
+ // If RPC context deadline is also specified, the shorter one will be used.
214
+ google.protobuf.Duration timeout = 2;
215
+ }
216
+
217
+ // A message representing the message types used by a long-running operation.
218
+ //
219
+ // Example:
220
+ //
221
+ // rpc LongRunningRecognize(LongRunningRecognizeRequest)
222
+ // returns (google.longrunning.Operation) {
223
+ // option (google.longrunning.operation_info) = {
224
+ // response_type: "LongRunningRecognizeResponse"
225
+ // metadata_type: "LongRunningRecognizeMetadata"
226
+ // };
227
+ // }
228
+ message OperationInfo {
229
+ // Required. The message name of the primary return type for this
230
+ // long-running operation.
231
+ // This type will be used to deserialize the LRO's response.
232
+ //
233
+ // If the response is in a different package from the rpc, a fully-qualified
234
+ // message name must be used (e.g. `google.protobuf.Struct`).
235
+ //
236
+ // Note: Altering this value constitutes a breaking change.
237
+ string response_type = 1;
238
+
239
+ // Required. The message name of the metadata type for this long-running
240
+ // operation.
241
+ //
242
+ // If the response is in a different package from the rpc, a fully-qualified
243
+ // message name must be used (e.g. `google.protobuf.Struct`).
244
+ //
245
+ // Note: Altering this value constitutes a breaking change.
246
+ string metadata_type = 2;
247
+ }
@@ -0,0 +1,18 @@
1
+ ## RPC (Remote Procedure Call) Types
2
+
3
+ This package contains [protocol buffer][protobuf] types that represent remote procedure
4
+ call concepts. While [gRPC](https://grpc.io) uses these types, we encourage their
5
+ use in any interested RPC implementation to promote compatibility and consistency.
6
+
7
+ ### Key Concepts
8
+
9
+ - **Code**: An enum that represents an error code returned by an RPC. These error codes
10
+ map to HTTP codes, but are slightly finer-grained. Every gRPC code has exactly one
11
+ corresponding HTTP code; however, some HTTP codes have more than one corresponding
12
+ gRPC code.
13
+ - **Error details**: Any of the types contained in `error_details.proto` which provide
14
+ extra details about particular types of failures.
15
+ - **Status**: Combines a code, message, and error details to represent the success or
16
+ failure details of an RPC call.
17
+
18
+ [protobuf]: https://developers.google.com/protocol-buffers/
@@ -0,0 +1,186 @@
1
+ // Copyright 2020 Google LLC
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ syntax = "proto3";
16
+
17
+ package google.rpc;
18
+
19
+ option go_package = "google.golang.org/genproto/googleapis/rpc/code;code";
20
+ option java_multiple_files = true;
21
+ option java_outer_classname = "CodeProto";
22
+ option java_package = "com.google.rpc";
23
+ option objc_class_prefix = "RPC";
24
+
25
+ // The canonical error codes for gRPC APIs.
26
+ //
27
+ //
28
+ // Sometimes multiple error codes may apply. Services should return
29
+ // the most specific error code that applies. For example, prefer
30
+ // `OUT_OF_RANGE` over `FAILED_PRECONDITION` if both codes apply.
31
+ // Similarly prefer `NOT_FOUND` or `ALREADY_EXISTS` over `FAILED_PRECONDITION`.
32
+ enum Code {
33
+ // Not an error; returned on success
34
+ //
35
+ // HTTP Mapping: 200 OK
36
+ OK = 0;
37
+
38
+ // The operation was cancelled, typically by the caller.
39
+ //
40
+ // HTTP Mapping: 499 Client Closed Request
41
+ CANCELLED = 1;
42
+
43
+ // Unknown error. For example, this error may be returned when
44
+ // a `Status` value received from another address space belongs to
45
+ // an error space that is not known in this address space. Also
46
+ // errors raised by APIs that do not return enough error information
47
+ // may be converted to this error.
48
+ //
49
+ // HTTP Mapping: 500 Internal Server Error
50
+ UNKNOWN = 2;
51
+
52
+ // The client specified an invalid argument. Note that this differs
53
+ // from `FAILED_PRECONDITION`. `INVALID_ARGUMENT` indicates arguments
54
+ // that are problematic regardless of the state of the system
55
+ // (e.g., a malformed file name).
56
+ //
57
+ // HTTP Mapping: 400 Bad Request
58
+ INVALID_ARGUMENT = 3;
59
+
60
+ // The deadline expired before the operation could complete. For operations
61
+ // that change the state of the system, this error may be returned
62
+ // even if the operation has completed successfully. For example, a
63
+ // successful response from a server could have been delayed long
64
+ // enough for the deadline to expire.
65
+ //
66
+ // HTTP Mapping: 504 Gateway Timeout
67
+ DEADLINE_EXCEEDED = 4;
68
+
69
+ // Some requested entity (e.g., file or directory) was not found.
70
+ //
71
+ // Note to server developers: if a request is denied for an entire class
72
+ // of users, such as gradual feature rollout or undocumented whitelist,
73
+ // `NOT_FOUND` may be used. If a request is denied for some users within
74
+ // a class of users, such as user-based access control, `PERMISSION_DENIED`
75
+ // must be used.
76
+ //
77
+ // HTTP Mapping: 404 Not Found
78
+ NOT_FOUND = 5;
79
+
80
+ // The entity that a client attempted to create (e.g., file or directory)
81
+ // already exists.
82
+ //
83
+ // HTTP Mapping: 409 Conflict
84
+ ALREADY_EXISTS = 6;
85
+
86
+ // The caller does not have permission to execute the specified
87
+ // operation. `PERMISSION_DENIED` must not be used for rejections
88
+ // caused by exhausting some resource (use `RESOURCE_EXHAUSTED`
89
+ // instead for those errors). `PERMISSION_DENIED` must not be
90
+ // used if the caller can not be identified (use `UNAUTHENTICATED`
91
+ // instead for those errors). This error code does not imply the
92
+ // request is valid or the requested entity exists or satisfies
93
+ // other pre-conditions.
94
+ //
95
+ // HTTP Mapping: 403 Forbidden
96
+ PERMISSION_DENIED = 7;
97
+
98
+ // The request does not have valid authentication credentials for the
99
+ // operation.
100
+ //
101
+ // HTTP Mapping: 401 Unauthorized
102
+ UNAUTHENTICATED = 16;
103
+
104
+ // Some resource has been exhausted, perhaps a per-user quota, or
105
+ // perhaps the entire file system is out of space.
106
+ //
107
+ // HTTP Mapping: 429 Too Many Requests
108
+ RESOURCE_EXHAUSTED = 8;
109
+
110
+ // The operation was rejected because the system is not in a state
111
+ // required for the operation's execution. For example, the directory
112
+ // to be deleted is non-empty, an rmdir operation is applied to
113
+ // a non-directory, etc.
114
+ //
115
+ // Service implementors can use the following guidelines to decide
116
+ // between `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`:
117
+ // (a) Use `UNAVAILABLE` if the client can retry just the failing call.
118
+ // (b) Use `ABORTED` if the client should retry at a higher level
119
+ // (e.g., when a client-specified test-and-set fails, indicating the
120
+ // client should restart a read-modify-write sequence).
121
+ // (c) Use `FAILED_PRECONDITION` if the client should not retry until
122
+ // the system state has been explicitly fixed. E.g., if an "rmdir"
123
+ // fails because the directory is non-empty, `FAILED_PRECONDITION`
124
+ // should be returned since the client should not retry unless
125
+ // the files are deleted from the directory.
126
+ //
127
+ // HTTP Mapping: 400 Bad Request
128
+ FAILED_PRECONDITION = 9;
129
+
130
+ // The operation was aborted, typically due to a concurrency issue such as
131
+ // a sequencer check failure or transaction abort.
132
+ //
133
+ // See the guidelines above for deciding between `FAILED_PRECONDITION`,
134
+ // `ABORTED`, and `UNAVAILABLE`.
135
+ //
136
+ // HTTP Mapping: 409 Conflict
137
+ ABORTED = 10;
138
+
139
+ // The operation was attempted past the valid range. E.g., seeking or
140
+ // reading past end-of-file.
141
+ //
142
+ // Unlike `INVALID_ARGUMENT`, this error indicates a problem that may
143
+ // be fixed if the system state changes. For example, a 32-bit file
144
+ // system will generate `INVALID_ARGUMENT` if asked to read at an
145
+ // offset that is not in the range [0,2^32-1], but it will generate
146
+ // `OUT_OF_RANGE` if asked to read from an offset past the current
147
+ // file size.
148
+ //
149
+ // There is a fair bit of overlap between `FAILED_PRECONDITION` and
150
+ // `OUT_OF_RANGE`. We recommend using `OUT_OF_RANGE` (the more specific
151
+ // error) when it applies so that callers who are iterating through
152
+ // a space can easily look for an `OUT_OF_RANGE` error to detect when
153
+ // they are done.
154
+ //
155
+ // HTTP Mapping: 400 Bad Request
156
+ OUT_OF_RANGE = 11;
157
+
158
+ // The operation is not implemented or is not supported/enabled in this
159
+ // service.
160
+ //
161
+ // HTTP Mapping: 501 Not Implemented
162
+ UNIMPLEMENTED = 12;
163
+
164
+ // Internal errors. This means that some invariants expected by the
165
+ // underlying system have been broken. This error code is reserved
166
+ // for serious errors.
167
+ //
168
+ // HTTP Mapping: 500 Internal Server Error
169
+ INTERNAL = 13;
170
+
171
+ // The service is currently unavailable. This is most likely a
172
+ // transient condition, which can be corrected by retrying with
173
+ // a backoff. Note that it is not always safe to retry
174
+ // non-idempotent operations.
175
+ //
176
+ // See the guidelines above for deciding between `FAILED_PRECONDITION`,
177
+ // `ABORTED`, and `UNAVAILABLE`.
178
+ //
179
+ // HTTP Mapping: 503 Service Unavailable
180
+ UNAVAILABLE = 14;
181
+
182
+ // Unrecoverable data loss or corruption.
183
+ //
184
+ // HTTP Mapping: 500 Internal Server Error
185
+ DATA_LOSS = 15;
186
+ }