google-cloud-os_config-v1alpha 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +169 -0
  4. data/LICENSE.md +201 -0
  5. data/README.md +139 -0
  6. data/lib/google-cloud-os_config-v1alpha.rb +21 -0
  7. data/lib/google/cloud/os_config/v1alpha.rb +38 -0
  8. data/lib/google/cloud/os_config/v1alpha/os_config_zonal_service.rb +53 -0
  9. data/lib/google/cloud/os_config/v1alpha/os_config_zonal_service/client.rb +1347 -0
  10. data/lib/google/cloud/os_config/v1alpha/os_config_zonal_service/credentials.rb +51 -0
  11. data/lib/google/cloud/os_config/v1alpha/os_config_zonal_service/operations.rb +655 -0
  12. data/lib/google/cloud/os_config/v1alpha/os_config_zonal_service/paths.rb +145 -0
  13. data/lib/google/cloud/os_config/v1alpha/version.rb +28 -0
  14. data/lib/google/cloud/osconfig/v1alpha/config_common_pb.rb +59 -0
  15. data/lib/google/cloud/osconfig/v1alpha/instance_os_policies_compliance_pb.rb +56 -0
  16. data/lib/google/cloud/osconfig/v1alpha/inventory_pb.rb +136 -0
  17. data/lib/google/cloud/osconfig/v1alpha/os_policy_assignments_pb.rb +128 -0
  18. data/lib/google/cloud/osconfig/v1alpha/os_policy_pb.rb +204 -0
  19. data/lib/google/cloud/osconfig/v1alpha/osconfig_common_pb.rb +25 -0
  20. data/lib/google/cloud/osconfig/v1alpha/osconfig_zonal_service_pb.rb +26 -0
  21. data/lib/google/cloud/osconfig/v1alpha/osconfig_zonal_service_services_pb.rb +107 -0
  22. data/lib/google/cloud/osconfig/v1alpha/vulnerability_pb.rb +118 -0
  23. data/proto_docs/README.md +4 -0
  24. data/proto_docs/google/api/field_behavior.rb +65 -0
  25. data/proto_docs/google/api/resource.rb +283 -0
  26. data/proto_docs/google/cloud/osconfig/v1alpha/config_common.rb +127 -0
  27. data/proto_docs/google/cloud/osconfig/v1alpha/instance_os_policies_compliance.rb +167 -0
  28. data/proto_docs/google/cloud/osconfig/v1alpha/inventory.rb +377 -0
  29. data/proto_docs/google/cloud/osconfig/v1alpha/os_policy.rb +585 -0
  30. data/proto_docs/google/cloud/osconfig/v1alpha/os_policy_assignments.rb +367 -0
  31. data/proto_docs/google/cloud/osconfig/v1alpha/osconfig_common.rb +40 -0
  32. data/proto_docs/google/cloud/osconfig/v1alpha/vulnerability.rb +341 -0
  33. data/proto_docs/google/longrunning/operations.rb +164 -0
  34. data/proto_docs/google/protobuf/any.rb +141 -0
  35. data/proto_docs/google/protobuf/duration.rb +98 -0
  36. data/proto_docs/google/protobuf/empty.rb +36 -0
  37. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  38. data/proto_docs/google/protobuf/timestamp.rb +129 -0
  39. data/proto_docs/google/rpc/status.rb +46 -0
  40. metadata +230 -0
@@ -0,0 +1,167 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module OsConfig
23
+ module V1alpha
24
+ # This API resource represents the OS policies compliance data for a Compute
25
+ # Engine virtual machine (VM) instance at a given point in time.
26
+ #
27
+ # A Compute Engine VM can have multiple OS policy assignments, and each
28
+ # assignment can have multiple OS policies. As a result, multiple OS policies
29
+ # could be applied to a single VM.
30
+ #
31
+ # You can use this API resource to determine both the compliance state of your
32
+ # VM as well as the compliance state of an individual OS policy.
33
+ #
34
+ # For more information, see [View
35
+ # compliance](https://cloud.google.com/compute/docs/os-configuration-management/view-compliance).
36
+ # @!attribute [r] name
37
+ # @return [::String]
38
+ # Output only. The `InstanceOSPoliciesCompliance` API resource name.
39
+ #
40
+ # Format:
41
+ # `projects/{project_number}/locations/{location}/instanceOSPoliciesCompliances/{instance_id}`
42
+ # @!attribute [r] instance
43
+ # @return [::String]
44
+ # Output only. The Compute Engine VM instance name.
45
+ # @!attribute [r] state
46
+ # @return [::Google::Cloud::OsConfig::V1alpha::OSPolicyComplianceState]
47
+ # Output only. Compliance state of the VM.
48
+ # @!attribute [r] detailed_state
49
+ # @return [::String]
50
+ # Output only. Detailed compliance state of the VM.
51
+ # This field is populated only when compliance state is `UNKNOWN`.
52
+ #
53
+ # It may contain one of the following values:
54
+ #
55
+ # * `no-compliance-data`: Compliance data is not available for this VM.
56
+ # * `no-agent-detected`: OS Config agent is not detected for this VM.
57
+ # * `config-not-supported-by-agent`: The version of the OS Config agent
58
+ # running on this VM does not support configuration management.
59
+ # * `inactive`: VM is not running.
60
+ # * `internal-service-errors`: There were internal service errors encountered
61
+ # while enforcing compliance.
62
+ # * `agent-errors`: OS config agent encountered errors while enforcing
63
+ # compliance.
64
+ # @!attribute [r] detailed_state_reason
65
+ # @return [::String]
66
+ # Output only. The reason for the `detailed_state` of the VM (if any).
67
+ # @!attribute [r] os_policy_compliances
68
+ # @return [::Array<::Google::Cloud::OsConfig::V1alpha::InstanceOSPoliciesCompliance::OSPolicyCompliance>]
69
+ # Output only. Compliance data for each `OSPolicy` that is applied to the VM.
70
+ # @!attribute [r] last_compliance_check_time
71
+ # @return [::Google::Protobuf::Timestamp]
72
+ # Output only. Timestamp of the last compliance check for the VM.
73
+ # @!attribute [r] last_compliance_run_id
74
+ # @return [::String]
75
+ # Output only. Unique identifier for the last compliance run.
76
+ # This id will be logged by the OS config agent during a compliance run and
77
+ # can be used for debugging and tracing purpose.
78
+ class InstanceOSPoliciesCompliance
79
+ include ::Google::Protobuf::MessageExts
80
+ extend ::Google::Protobuf::MessageExts::ClassMethods
81
+
82
+ # Compliance data for an OS policy
83
+ # @!attribute [rw] os_policy_id
84
+ # @return [::String]
85
+ # The OS policy id
86
+ # @!attribute [rw] os_policy_assignment
87
+ # @return [::String]
88
+ # Reference to the `OSPolicyAssignment` API resource that the `OSPolicy`
89
+ # belongs to.
90
+ #
91
+ # Format:
92
+ # `projects/{project_number}/locations/{location}/osPolicyAssignments/{os_policy_assignment_id@revision_id}`
93
+ # @!attribute [rw] state
94
+ # @return [::Google::Cloud::OsConfig::V1alpha::OSPolicyComplianceState]
95
+ # Compliance state of the OS policy.
96
+ # @!attribute [rw] os_policy_resource_compliances
97
+ # @return [::Array<::Google::Cloud::OsConfig::V1alpha::OSPolicyResourceCompliance>]
98
+ # Compliance data for each `OSPolicyResource` that is applied to the
99
+ # VM.
100
+ class OSPolicyCompliance
101
+ include ::Google::Protobuf::MessageExts
102
+ extend ::Google::Protobuf::MessageExts::ClassMethods
103
+ end
104
+ end
105
+
106
+ # A request message for getting OS policies compliance data for the given
107
+ # Compute Engine VM instance.
108
+ # @!attribute [rw] name
109
+ # @return [::String]
110
+ # Required. API resource name for instance OS policies compliance resource.
111
+ #
112
+ # Format:
113
+ # `projects/{project}/locations/{location}/instanceOSPoliciesCompliances/{instance}`
114
+ #
115
+ # For `{project}`, either Compute Engine project-number or project-id can be
116
+ # provided.
117
+ # For `{instance}`, either Compute Engine VM instance-id or instance-name can
118
+ # be provided.
119
+ class GetInstanceOSPoliciesComplianceRequest
120
+ include ::Google::Protobuf::MessageExts
121
+ extend ::Google::Protobuf::MessageExts::ClassMethods
122
+ end
123
+
124
+ # A request message for listing OS policies compliance data for all Compute
125
+ # Engine VMs in the given location.
126
+ # @!attribute [rw] parent
127
+ # @return [::String]
128
+ # Required. The parent resource name.
129
+ #
130
+ # Format: `projects/{project}/locations/{location}`
131
+ #
132
+ # For `{project}`, either Compute Engine project-number or project-id can be
133
+ # provided.
134
+ # @!attribute [rw] page_size
135
+ # @return [::Integer]
136
+ # The maximum number of results to return.
137
+ # @!attribute [rw] page_token
138
+ # @return [::String]
139
+ # A pagination token returned from a previous call to
140
+ # `ListInstanceOSPoliciesCompliances` that indicates where this listing
141
+ # should continue from.
142
+ # @!attribute [rw] filter
143
+ # @return [::String]
144
+ # If provided, this field specifies the criteria that must be met by a
145
+ # `InstanceOSPoliciesCompliance` API resource to be included in the response.
146
+ class ListInstanceOSPoliciesCompliancesRequest
147
+ include ::Google::Protobuf::MessageExts
148
+ extend ::Google::Protobuf::MessageExts::ClassMethods
149
+ end
150
+
151
+ # A response message for listing OS policies compliance data for all Compute
152
+ # Engine VMs in the given location.
153
+ # @!attribute [rw] instance_os_policies_compliances
154
+ # @return [::Array<::Google::Cloud::OsConfig::V1alpha::InstanceOSPoliciesCompliance>]
155
+ # List of instance OS policies compliance objects.
156
+ # @!attribute [rw] next_page_token
157
+ # @return [::String]
158
+ # The pagination token to retrieve the next page of instance OS policies
159
+ # compliance objects.
160
+ class ListInstanceOSPoliciesCompliancesResponse
161
+ include ::Google::Protobuf::MessageExts
162
+ extend ::Google::Protobuf::MessageExts::ClassMethods
163
+ end
164
+ end
165
+ end
166
+ end
167
+ end
@@ -0,0 +1,377 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module OsConfig
23
+ module V1alpha
24
+ # This API resource represents the available inventory data for a
25
+ # Compute Engine virtual machine (VM) instance at a given point in time.
26
+ #
27
+ # You can use this API resource to determine the inventory data of your VM.
28
+ #
29
+ # For more information, see [Information provided by OS inventory
30
+ # management](https://cloud.google.com/compute/docs/instances/os-inventory-management#data-collected).
31
+ # @!attribute [r] name
32
+ # @return [::String]
33
+ # Output only. The `Inventory` API resource name.
34
+ #
35
+ # Format:
36
+ # `projects/{project_number}/locations/{location}/instances/{instance_id}/inventory`
37
+ # @!attribute [r] os_info
38
+ # @return [::Google::Cloud::OsConfig::V1alpha::Inventory::OsInfo]
39
+ # Output only. Base level operating system information for the VM.
40
+ # @!attribute [r] items
41
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::OsConfig::V1alpha::Inventory::Item}]
42
+ # Output only. Inventory items related to the VM keyed by an opaque unique identifier for
43
+ # each inventory item. The identifier is unique to each distinct and
44
+ # addressable inventory item and will change, when there is a new package
45
+ # version.
46
+ # @!attribute [r] update_time
47
+ # @return [::Google::Protobuf::Timestamp]
48
+ # Output only. Timestamp of the last reported inventory for the VM.
49
+ class Inventory
50
+ include ::Google::Protobuf::MessageExts
51
+ extend ::Google::Protobuf::MessageExts::ClassMethods
52
+
53
+ # Operating system information for the VM.
54
+ # @!attribute [rw] hostname
55
+ # @return [::String]
56
+ # The VM hostname.
57
+ # @!attribute [rw] long_name
58
+ # @return [::String]
59
+ # The operating system long name.
60
+ # For example 'Debian GNU/Linux 9' or 'Microsoft Window Server 2019
61
+ # Datacenter'.
62
+ # @!attribute [rw] short_name
63
+ # @return [::String]
64
+ # The operating system short name.
65
+ # For example, 'windows' or 'debian'.
66
+ # @!attribute [rw] version
67
+ # @return [::String]
68
+ # The version of the operating system.
69
+ # @!attribute [rw] architecture
70
+ # @return [::String]
71
+ # The system architecture of the operating system.
72
+ # @!attribute [rw] kernel_version
73
+ # @return [::String]
74
+ # The kernel version of the operating system.
75
+ # @!attribute [rw] kernel_release
76
+ # @return [::String]
77
+ # The kernel release of the operating system.
78
+ # @!attribute [rw] osconfig_agent_version
79
+ # @return [::String]
80
+ # The current version of the OS Config agent running on the VM.
81
+ class OsInfo
82
+ include ::Google::Protobuf::MessageExts
83
+ extend ::Google::Protobuf::MessageExts::ClassMethods
84
+ end
85
+
86
+ # A single piece of inventory on a VM.
87
+ # @!attribute [rw] id
88
+ # @return [::String]
89
+ # Identifier for this item, unique across items for this VM.
90
+ # @!attribute [rw] origin_type
91
+ # @return [::Google::Cloud::OsConfig::V1alpha::Inventory::Item::OriginType]
92
+ # The origin of this inventory item.
93
+ # @!attribute [rw] create_time
94
+ # @return [::Google::Protobuf::Timestamp]
95
+ # When this inventory item was first detected.
96
+ # @!attribute [rw] update_time
97
+ # @return [::Google::Protobuf::Timestamp]
98
+ # When this inventory item was last modified.
99
+ # @!attribute [rw] type
100
+ # @return [::Google::Cloud::OsConfig::V1alpha::Inventory::Item::Type]
101
+ # The specific type of inventory, correlating to its specific details.
102
+ # @!attribute [rw] installed_package
103
+ # @return [::Google::Cloud::OsConfig::V1alpha::Inventory::SoftwarePackage]
104
+ # Software package present on the VM instance.
105
+ # @!attribute [rw] available_package
106
+ # @return [::Google::Cloud::OsConfig::V1alpha::Inventory::SoftwarePackage]
107
+ # Software package available to be installed on the VM instance.
108
+ class Item
109
+ include ::Google::Protobuf::MessageExts
110
+ extend ::Google::Protobuf::MessageExts::ClassMethods
111
+
112
+ # The origin of a specific inventory item.
113
+ module OriginType
114
+ # Invalid. An origin type must be specified.
115
+ ORIGIN_TYPE_UNSPECIFIED = 0
116
+
117
+ # This inventory item was discovered as the result of the agent
118
+ # reporting inventory via the reporting API.
119
+ INVENTORY_REPORT = 1
120
+ end
121
+
122
+ # The different types of inventory that are tracked on a VM.
123
+ module Type
124
+ # Invalid. An type must be specified.
125
+ TYPE_UNSPECIFIED = 0
126
+
127
+ # This represents a package that is installed on the VM.
128
+ INSTALLED_PACKAGE = 1
129
+
130
+ # This represents an update that is available for a package.
131
+ AVAILABLE_PACKAGE = 2
132
+ end
133
+ end
134
+
135
+ # Software package information of the operating system.
136
+ # @!attribute [rw] yum_package
137
+ # @return [::Google::Cloud::OsConfig::V1alpha::Inventory::VersionedPackage]
138
+ # Yum package info.
139
+ # For details about the yum package manager, see
140
+ # https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/deployment_guide/ch-yum.
141
+ # @!attribute [rw] apt_package
142
+ # @return [::Google::Cloud::OsConfig::V1alpha::Inventory::VersionedPackage]
143
+ # Details of an APT package.
144
+ # For details about the apt package manager, see
145
+ # https://wiki.debian.org/Apt.
146
+ # @!attribute [rw] zypper_package
147
+ # @return [::Google::Cloud::OsConfig::V1alpha::Inventory::VersionedPackage]
148
+ # Details of a Zypper package.
149
+ # For details about the Zypper package manager, see
150
+ # https://en.opensuse.org/SDB:Zypper_manual.
151
+ # @!attribute [rw] googet_package
152
+ # @return [::Google::Cloud::OsConfig::V1alpha::Inventory::VersionedPackage]
153
+ # Details of a Googet package.
154
+ # For details about the googet package manager, see
155
+ # https://github.com/google/googet.
156
+ # @!attribute [rw] zypper_patch
157
+ # @return [::Google::Cloud::OsConfig::V1alpha::Inventory::ZypperPatch]
158
+ # Details of a Zypper patch.
159
+ # For details about the Zypper package manager, see
160
+ # https://en.opensuse.org/SDB:Zypper_manual.
161
+ # @!attribute [rw] wua_package
162
+ # @return [::Google::Cloud::OsConfig::V1alpha::Inventory::WindowsUpdatePackage]
163
+ # Details of a Windows Update package.
164
+ # See https://docs.microsoft.com/en-us/windows/win32/api/_wua/ for
165
+ # information about Windows Update.
166
+ # @!attribute [rw] qfe_package
167
+ # @return [::Google::Cloud::OsConfig::V1alpha::Inventory::WindowsQuickFixEngineeringPackage]
168
+ # Details of a Windows Quick Fix engineering package.
169
+ # See
170
+ # https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-quickfixengineering
171
+ # for info in Windows Quick Fix Engineering.
172
+ # @!attribute [rw] cos_package
173
+ # @return [::Google::Cloud::OsConfig::V1alpha::Inventory::VersionedPackage]
174
+ # Details of a COS package.
175
+ class SoftwarePackage
176
+ include ::Google::Protobuf::MessageExts
177
+ extend ::Google::Protobuf::MessageExts::ClassMethods
178
+ end
179
+
180
+ # Information related to the a standard versioned package. This includes
181
+ # package info for APT, Yum, Zypper, and Googet package managers.
182
+ # @!attribute [rw] package_name
183
+ # @return [::String]
184
+ # The name of the package.
185
+ # @!attribute [rw] architecture
186
+ # @return [::String]
187
+ # The system architecture this package is intended for.
188
+ # @!attribute [rw] version
189
+ # @return [::String]
190
+ # The version of the package.
191
+ class VersionedPackage
192
+ include ::Google::Protobuf::MessageExts
193
+ extend ::Google::Protobuf::MessageExts::ClassMethods
194
+ end
195
+
196
+ # Details related to a Zypper Patch.
197
+ # @!attribute [rw] patch_name
198
+ # @return [::String]
199
+ # The name of the patch.
200
+ # @!attribute [rw] category
201
+ # @return [::String]
202
+ # The category of the patch.
203
+ # @!attribute [rw] severity
204
+ # @return [::String]
205
+ # The severity specified for this patch
206
+ # @!attribute [rw] summary
207
+ # @return [::String]
208
+ # Any summary information provided about this patch.
209
+ class ZypperPatch
210
+ include ::Google::Protobuf::MessageExts
211
+ extend ::Google::Protobuf::MessageExts::ClassMethods
212
+ end
213
+
214
+ # Details related to a Windows Update package.
215
+ # Field data and names are taken from Windows Update API IUpdate Interface:
216
+ # https://docs.microsoft.com/en-us/windows/win32/api/_wua/
217
+ # Descriptive fields like title, and description are localized based on
218
+ # the locale of the VM being updated.
219
+ # @!attribute [rw] title
220
+ # @return [::String]
221
+ # The localized title of the update package.
222
+ # @!attribute [rw] description
223
+ # @return [::String]
224
+ # The localized description of the update package.
225
+ # @!attribute [rw] categories
226
+ # @return [::Array<::Google::Cloud::OsConfig::V1alpha::Inventory::WindowsUpdatePackage::WindowsUpdateCategory>]
227
+ # The categories that are associated with this update package.
228
+ # @!attribute [rw] kb_article_ids
229
+ # @return [::Array<::String>]
230
+ # A collection of Microsoft Knowledge Base article IDs that are associated
231
+ # with the update package.
232
+ # @!attribute [rw] support_url
233
+ # @return [::String]
234
+ # A hyperlink to the language-specific support information for the update.
235
+ # @!attribute [rw] more_info_urls
236
+ # @return [::Array<::String>]
237
+ # A collection of URLs that provide more information about the update
238
+ # package.
239
+ # @!attribute [rw] update_id
240
+ # @return [::String]
241
+ # Gets the identifier of an update package. Stays the same across
242
+ # revisions.
243
+ # @!attribute [rw] revision_number
244
+ # @return [::Integer]
245
+ # The revision number of this update package.
246
+ # @!attribute [rw] last_deployment_change_time
247
+ # @return [::Google::Protobuf::Timestamp]
248
+ # The last published date of the update, in (UTC) date and time.
249
+ class WindowsUpdatePackage
250
+ include ::Google::Protobuf::MessageExts
251
+ extend ::Google::Protobuf::MessageExts::ClassMethods
252
+
253
+ # Categories specified by the Windows Update.
254
+ # @!attribute [rw] id
255
+ # @return [::String]
256
+ # The identifier of the windows update category.
257
+ # @!attribute [rw] name
258
+ # @return [::String]
259
+ # The name of the windows update category.
260
+ class WindowsUpdateCategory
261
+ include ::Google::Protobuf::MessageExts
262
+ extend ::Google::Protobuf::MessageExts::ClassMethods
263
+ end
264
+ end
265
+
266
+ # Information related to a Quick Fix Engineering package.
267
+ # Fields are taken from Windows QuickFixEngineering Interface and match
268
+ # the source names:
269
+ # https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-quickfixengineering
270
+ # @!attribute [rw] caption
271
+ # @return [::String]
272
+ # A short textual description of the QFE update.
273
+ # @!attribute [rw] description
274
+ # @return [::String]
275
+ # A textual description of the QFE update.
276
+ # @!attribute [rw] hot_fix_id
277
+ # @return [::String]
278
+ # Unique identifier associated with a particular QFE update.
279
+ # @!attribute [rw] install_time
280
+ # @return [::Google::Protobuf::Timestamp]
281
+ # Date that the QFE update was installed. Mapped from installed_on field.
282
+ class WindowsQuickFixEngineeringPackage
283
+ include ::Google::Protobuf::MessageExts
284
+ extend ::Google::Protobuf::MessageExts::ClassMethods
285
+ end
286
+
287
+ # @!attribute [rw] key
288
+ # @return [::String]
289
+ # @!attribute [rw] value
290
+ # @return [::Google::Cloud::OsConfig::V1alpha::Inventory::Item]
291
+ class ItemsEntry
292
+ include ::Google::Protobuf::MessageExts
293
+ extend ::Google::Protobuf::MessageExts::ClassMethods
294
+ end
295
+ end
296
+
297
+ # A request message for getting inventory data for the specified VM.
298
+ # @!attribute [rw] name
299
+ # @return [::String]
300
+ # Required. API resource name for inventory resource.
301
+ #
302
+ # Format:
303
+ # `projects/{project}/locations/{location}/instances/{instance}/inventory`
304
+ #
305
+ # For `{project}`, either `project-number` or `project-id` can be provided.
306
+ # For `{instance}`, either Compute Engine `instance-id` or `instance-name`
307
+ # can be provided.
308
+ # @!attribute [rw] view
309
+ # @return [::Google::Cloud::OsConfig::V1alpha::InventoryView]
310
+ # Inventory view indicating what information should be included in the
311
+ # inventory resource. If unspecified, the default view is BASIC.
312
+ class GetInventoryRequest
313
+ include ::Google::Protobuf::MessageExts
314
+ extend ::Google::Protobuf::MessageExts::ClassMethods
315
+ end
316
+
317
+ # A request message for listing inventory data for all VMs in the specified
318
+ # location.
319
+ # @!attribute [rw] parent
320
+ # @return [::String]
321
+ # Required. The parent resource name.
322
+ #
323
+ # Format: `projects/{project}/locations/{location}/instances/{instance}`
324
+ #
325
+ # For `{project}`, either `project-number` or `project-id` can be
326
+ # provided. For `{instance}`, only hyphen or dash character is supported to
327
+ # list inventories across VMs.
328
+ # @!attribute [rw] view
329
+ # @return [::Google::Cloud::OsConfig::V1alpha::InventoryView]
330
+ # Inventory view indicating what information should be included in the
331
+ # inventory resource. If unspecified, the default view is BASIC.
332
+ # @!attribute [rw] page_size
333
+ # @return [::Integer]
334
+ # The maximum number of results to return.
335
+ # @!attribute [rw] page_token
336
+ # @return [::String]
337
+ # A pagination token returned from a previous call to
338
+ # `ListInventories` that indicates where this listing
339
+ # should continue from.
340
+ # @!attribute [rw] filter
341
+ # @return [::String]
342
+ # If provided, this field specifies the criteria that must be met by a
343
+ # `Inventory` API resource to be included in the response.
344
+ class ListInventoriesRequest
345
+ include ::Google::Protobuf::MessageExts
346
+ extend ::Google::Protobuf::MessageExts::ClassMethods
347
+ end
348
+
349
+ # A response message for listing inventory data for all VMs in a specified
350
+ # location.
351
+ # @!attribute [rw] inventories
352
+ # @return [::Array<::Google::Cloud::OsConfig::V1alpha::Inventory>]
353
+ # List of inventory objects.
354
+ # @!attribute [rw] next_page_token
355
+ # @return [::String]
356
+ # The pagination token to retrieve the next page of inventory objects.
357
+ class ListInventoriesResponse
358
+ include ::Google::Protobuf::MessageExts
359
+ extend ::Google::Protobuf::MessageExts::ClassMethods
360
+ end
361
+
362
+ # The view for inventory objects.
363
+ module InventoryView
364
+ # The default value.
365
+ # The API defaults to the BASIC view.
366
+ INVENTORY_VIEW_UNSPECIFIED = 0
367
+
368
+ # Returns the basic inventory information that includes `os_info`.
369
+ BASIC = 1
370
+
371
+ # Returns all fields.
372
+ FULL = 2
373
+ end
374
+ end
375
+ end
376
+ end
377
+ end