-
Notifications
You must be signed in to change notification settings - Fork 350
/
common_024.proto
247 lines (217 loc) · 12.1 KB
/
common_024.proto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Generated by the C++ microgenerator.
// If you make any local changes, they will be lost.
// file:///workspace/generator/discovery/compute_public_google_rest_v1.json
// revision: 20230920
syntax = "proto3";
package google.cloud.cpp.compute.v1;
import "google/cloud/compute/v1/internal/common_003.proto";
// A specification of the desired way to instantiate a disk in the instance
// template when its created from a source instance.
message DiskInstantiationConfig {
// Specifies whether the disk will be auto-deleted when the instance is
// deleted (but not when the disk is detached from the instance).
optional bool auto_delete = 1;
// The custom source image to be used to restore this disk when instantiating
// this instance template.
optional string custom_image = 2;
// Specifies the device name of the disk to which the configurations apply to.
optional string device_name = 3;
// Specifies whether to include the disk and what image to use. Possible
// values are: - source-image: to use the same image that was used to create
// the source instance's corresponding disk. Applicable to the boot disk and
// additional read-write disks. - source-image-family: to use the same image
// family that was used to create the source instance's corresponding disk.
// Applicable to the boot disk and additional read-write disks. -
// custom-image: to use a user-provided image url for disk creation.
// Applicable to the boot disk and additional read-write disks. -
// attach-read-only: to attach a read-only disk. Applicable to read-only
// disks. - do-not-include: to exclude a disk from the template. Applicable to
// additional read-write disks, local SSDs, and read-only disks.
// ATTACH_READ_ONLY: Attach the existing disk in read-only mode. The request
// will fail if the disk was attached in read-write mode on the source
// instance. Applicable to: read-only disks.
// BLANK: Create a blank disk. The disk will be created unformatted.
// Applicable to: additional read-write disks, local SSDs.
// CUSTOM_IMAGE: Use the custom image specified in the custom_image field.
// Applicable to: boot disk, additional read-write disks.
// DEFAULT: Use the default instantiation option for the corresponding type of
// disk. For boot disk and any other R/W disks, new custom images will be
// created from each disk. For read-only disks, they will be attached in
// read-only mode. Local SSD disks will be created as blank volumes.
// DO_NOT_INCLUDE: Do not include the disk in the instance template.
// Applicable to: additional read-write disks, local SSDs, read-only disks.
// SOURCE_IMAGE: Use the same source image used for creation of the source
// instance's corresponding disk. The request will fail if the source VM's
// disk was created from a snapshot. Applicable to: boot disk, additional
// read-write disks.
// SOURCE_IMAGE_FAMILY: Use the same source image family used for creation of
// the source instance's corresponding disk. The request will fail if the
// source image of the source disk does not belong to any image family.
// Applicable to: boot disk, additional read-write disks.
optional string instantiate_from = 4;
}
// Represents an Instance Template resource. Google Compute Engine has two
// Instance Template resources: *
// [Global](/compute/docs/reference/rest/v1/instanceTemplates) *
// [Regional](/compute/docs/reference/rest/v1/regionInstanceTemplates) You can
// reuse a global instance template in different regions whereas you can use a
// regional instance template in a specified region only. If you want to reduce
// cross-region dependency or achieve data residency, use a regional instance
// template. To create VMs, managed instance groups, and reservations, you can
// use either global or regional instance templates. For more information, read
// Instance Templates.
message InstanceTemplate {
// [Output Only] The creation timestamp for this instance template in RFC3339
// text format.
optional string creation_timestamp = 1;
// An optional description of this resource. Provide this property when you
// create the resource.
optional string description = 2;
// [Output Only] A unique identifier for this instance template. The server
// defines this identifier.
optional string id = 3;
// [Output Only] The resource type, which is always compute#instanceTemplate
// for instance templates.
optional string kind = 4;
// Name of the resource; provided by the client when the resource is created.
// The name must be 1-63 characters long, and comply with RFC1035.
// Specifically, the name must be 1-63 characters long and match the regular
// expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character
// must be a lowercase letter, and all following characters must be a dash,
// lowercase letter, or digit, except the last character, which cannot be a
// dash.
optional string name = 5;
// The instance properties for this instance template.
optional InstanceProperties properties = 6;
// [Output Only] URL of the region where the instance template resides. Only
// applicable for regional resources.
optional string region = 7;
// [Output Only] The URL for this instance template. The server defines this
// URL.
optional string self_link = 8;
// The source instance used to create the template. You can provide this as a
// partial or full URL to the resource. For example, the following are valid
// values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone
// /instances/instance - projects/project/zones/zone/instances/instance
optional string source_instance = 9;
// The source instance params to use to create this instance template.
optional SourceInstanceParams source_instance_params = 10;
}
// A list of instance templates.
message InstanceTemplateList {
// [Output Only] Unique identifier for the resource; defined by the server.
optional string id = 1;
// A list of InstanceTemplate resources.
repeated InstanceTemplate items = 2;
// [Output Only] The resource type, which is always
// compute#instanceTemplatesListResponse for instance template lists.
optional string kind = 3;
// [Output Only] This token allows you to get the next page of results for
// list requests. If the number of results is larger than maxResults, use the
// nextPageToken as a value for the query parameter pageToken in the next list
// request. Subsequent list requests will have their own nextPageToken to
// continue paging through the results.
optional string next_page_token = 4;
// [Output Only] Server-defined URL for this resource.
optional string self_link = 5;
message Warning {
// [Output Only] A warning code, if applicable. For example, Compute Engine
// returns NO_RESULTS_ON_PAGE if there are no results in the response.
// CLEANUP_FAILED: Warning about failed cleanup of transient changes made by
// a failed operation.
// DEPRECATED_RESOURCE_USED: A link to a deprecated resource was created.
// DEPRECATED_TYPE_USED: When deploying and at least one of the resources
// has a type marked as deprecated
// DISK_SIZE_LARGER_THAN_IMAGE_SIZE: The user created a boot disk that is
// larger than image size.
// EXPERIMENTAL_TYPE_USED: When deploying and at least one of the resources
// has a type marked as experimental
// EXTERNAL_API_WARNING: Warning that is present in an external api call
// FIELD_VALUE_OVERRIDEN: Warning that value of a field has been overridden.
// Deprecated unused field.
// INJECTED_KERNELS_DEPRECATED: The operation involved use of an injected
// kernel, which is deprecated.
// INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB: A WEIGHTED_MAGLEV backend
// service is associated with a health check that is not of type
// HTTP/HTTPS/HTTP2.
// LARGE_DEPLOYMENT_WARNING: When deploying a deployment with a exceedingly
// large number of resources
// LIST_OVERHEAD_QUOTA_EXCEED: Resource can't be retrieved due to list
// overhead quota exceed which captures the amount of resources filtered out
// by user-defined list filter.
// MISSING_TYPE_DEPENDENCY: A resource depends on a missing type
// NEXT_HOP_ADDRESS_NOT_ASSIGNED: The route's nextHopIp address is not
// assigned to an instance on the network.
// NEXT_HOP_CANNOT_IP_FORWARD: The route's next hop instance cannot ip
// forward.
// NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE: The route's nextHopInstance URL
// refers to an instance that does not have an ipv6 interface on the same
// network as the route.
// NEXT_HOP_INSTANCE_NOT_FOUND: The route's nextHopInstance URL refers to an
// instance that does not exist.
// NEXT_HOP_INSTANCE_NOT_ON_NETWORK: The route's nextHopInstance URL refers
// to an instance that is not on the same network as the route.
// NEXT_HOP_NOT_RUNNING: The route's next hop instance does not have a
// status of RUNNING.
// NOT_CRITICAL_ERROR: Error which is not critical. We decided to continue
// the process despite the mentioned error.
// NO_RESULTS_ON_PAGE: No results are present on a particular list page.
// PARTIAL_SUCCESS: Success is reported, but some results may be missing due
// to errors
// REQUIRED_TOS_AGREEMENT: The user attempted to use a resource that
// requires a TOS they have not accepted.
// RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING: Warning that a resource is in
// use.
// RESOURCE_NOT_DELETED: One or more of the resources set to auto-delete
// could not be deleted because they were in use.
// SCHEMA_VALIDATION_IGNORED: When a resource schema validation is ignored.
// SINGLE_INSTANCE_PROPERTY_TEMPLATE: Instance template used in instance
// group manager is valid as such, but its application does not make a lot
// of sense, because it allows only single instance in instance group.
// UNDECLARED_PROPERTIES: When undeclared properties in the schema are
// present
// UNREACHABLE: A given scope cannot be reached.
optional string code = 1;
message DataItem {
// [Output Only] A key that provides more detail on the warning being
// returned. For example, for warnings where there are no results in a
// list request for a particular zone, this key might be scope and the key
// value might be the zone name. Other examples might be a key indicating
// a deprecated resource and a suggested replacement, or a warning about
// invalid network settings (for example, if an instance attempts to
// perform IP forwarding but is not enabled for IP forwarding).
optional string key = 1;
// [Output Only] A warning data value corresponding to the key.
optional string value = 2;
}
// [Output Only] Metadata about this warning in key: value format. For
// example: "data": [ { "key": "scope", "value": "zones/us-east1-d" }
repeated DataItem data = 2;
// [Output Only] A human-readable description of the warning code.
optional string message = 3;
}
// [Output Only] Informational warning message.
optional Warning warning = 6;
}
// A specification of the parameters to use when creating the instance template
// from a source instance.
message SourceInstanceParams {
// Attached disks configuration. If not provided, defaults are applied: For
// boot disk and any other R/W disks, the source images for each disk will be
// used. For read-only disks, they will be attached in read-only mode. Local
// SSD disks will be created as blank volumes.
repeated DiskInstantiationConfig disk_configs = 1;
}