google-apis-osconfig_v1alpha 0.5.0 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 325411589c3bc9f7f82c40927dee880f5c7626532811dd0c92479128f43e14d2
4
- data.tar.gz: 4b780e0b506b6a1585b92c3b4c8352de9067728f3a0095e224cb3b13206795af
3
+ metadata.gz: f140438392fee97ac5f1a910e08936d10f3edfe5a8b12863151e7cd2fc0d944e
4
+ data.tar.gz: 320f63aa0c6785f65a19fda20bd99d393cfa8ce397ca1fea3c82a6e5f27b278b
5
5
  SHA512:
6
- metadata.gz: 1555d635c87eae5f6546f2bf3d2ab55d8e31f82533ad750f6c54586405b59c430af38ff855770f56658925b0c263be258cb28bb5a0c5ab0c25bdc1ca83771b52
7
- data.tar.gz: 78408b93751d855e52aa75f60f46e67516da1105722d5c130a82d271c764939bc588695a8e5f550267da17f6490ab4e73ce2d749ba02cc9700523aca31c2fd32
6
+ metadata.gz: afc8d212d572853c038aa3ea87e9b49fbb4d12e763773f96e7c21ebeee24ea2d9c8547360efeadbfa4f3db7570ecd99628485b869ef3474ec0455720cdd83f58
7
+ data.tar.gz: f2d8515825e9ec6a233bcb953a73b579601ee625b5f9e0570af9f0ab24e05527c418519728a22aee638b374e2e983589954aedc24baa094cb8254b03178703fd
data/CHANGELOG.md CHANGED
@@ -1,5 +1,22 @@
1
1
  # Release history for google-apis-osconfig_v1alpha
2
2
 
3
+ ### v0.9.0 (2021-10-23)
4
+
5
+ * Regenerated from discovery document revision 20211018
6
+ * Unspecified changes
7
+
8
+ ### v0.8.0 (2021-10-02)
9
+
10
+ * Regenerated from discovery document revision 20210925
11
+
12
+ ### v0.7.0 (2021-09-18)
13
+
14
+ * Regenerated from discovery document revision 20210914
15
+
16
+ ### v0.6.0 (2021-09-01)
17
+
18
+ * Regenerated from discovery document revision 20210821
19
+
3
20
  ### v0.5.0 (2021-08-01)
4
21
 
5
22
  * Regenerated from discovery document revision 20210723
data/OVERVIEW.md CHANGED
@@ -60,8 +60,8 @@ See the class reference docs for information on the methods you can call from a
60
60
 
61
61
  More detailed descriptions of the Google simple REST clients are available in two documents.
62
62
 
63
- * The [Usage Guide](https://github.com/googleapis/google-api-ruby-client/blob/master/docs/usage-guide.md) discusses how to make API calls, how to use the provided data structures, and how to work the various features of the client library, including media upload and download, error handling, retries, pagination, and logging.
64
- * The [Auth Guide](https://github.com/googleapis/google-api-ruby-client/blob/master/docs/auth-guide.md) discusses authentication in the client libraries, including API keys, OAuth 2.0, service accounts, and environment variables.
63
+ * The [Usage Guide](https://github.com/googleapis/google-api-ruby-client/blob/main/docs/usage-guide.md) discusses how to make API calls, how to use the provided data structures, and how to work the various features of the client library, including media upload and download, error handling, retries, pagination, and logging.
64
+ * The [Auth Guide](https://github.com/googleapis/google-api-ruby-client/blob/main/docs/auth-guide.md) discusses authentication in the client libraries, including API keys, OAuth 2.0, service accounts, and environment variables.
65
65
 
66
66
  (Note: the above documents are written for the simple REST clients in general, and their examples may not reflect the Osconfig service in particular.)
67
67
 
@@ -522,10 +522,9 @@ module Google
522
522
  # @return [Google::Apis::OsconfigV1alpha::InventoryWindowsQuickFixEngineeringPackage]
523
523
  attr_accessor :qfe_package
524
524
 
525
- # Contains information about a Windows application as retrieved from the Windows
526
- # Registry. For more information about these fields, see [Windows Installer
527
- # Properties for the Uninstall Registry](https://docs.microsoft.com/en-us/
528
- # windows/win32/msi/uninstall-registry-key)`: class="external" `
525
+ # Contains information about a Windows application that is retrieved from the
526
+ # Windows Registry. For more information about these fields, see: https://docs.
527
+ # microsoft.com/en-us/windows/win32/msi/uninstall-registry-key
529
528
  # Corresponds to the JSON property `windowsApplication`
530
529
  # @return [Google::Apis::OsconfigV1alpha::InventoryWindowsApplication]
531
530
  attr_accessor :windows_application
@@ -605,10 +604,9 @@ module Google
605
604
  end
606
605
  end
607
606
 
608
- # Contains information about a Windows application as retrieved from the Windows
609
- # Registry. For more information about these fields, see [Windows Installer
610
- # Properties for the Uninstall Registry](https://docs.microsoft.com/en-us/
611
- # windows/win32/msi/uninstall-registry-key)`: class="external" `
607
+ # Contains information about a Windows application that is retrieved from the
608
+ # Windows Registry. For more information about these fields, see: https://docs.
609
+ # microsoft.com/en-us/windows/win32/msi/uninstall-registry-key
612
610
  class InventoryWindowsApplication
613
611
  include Google::Apis::Core::Hashable
614
612
 
@@ -883,6 +881,33 @@ module Google
883
881
  end
884
882
  end
885
883
 
884
+ # A response message for listing OS Policy assignment reports including the page
885
+ # of results and page token.
886
+ class ListOsPolicyAssignmentReportsResponse
887
+ include Google::Apis::Core::Hashable
888
+
889
+ # The pagination token to retrieve the next page of OS policy assignment report
890
+ # objects.
891
+ # Corresponds to the JSON property `nextPageToken`
892
+ # @return [String]
893
+ attr_accessor :next_page_token
894
+
895
+ # List of OS policy assignment reports.
896
+ # Corresponds to the JSON property `osPolicyAssignmentReports`
897
+ # @return [Array<Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReport>]
898
+ attr_accessor :os_policy_assignment_reports
899
+
900
+ def initialize(**args)
901
+ update!(**args)
902
+ end
903
+
904
+ # Update properties of this object
905
+ def update!(**args)
906
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
907
+ @os_policy_assignment_reports = args[:os_policy_assignment_reports] if args.key?(:os_policy_assignment_reports)
908
+ end
909
+ end
910
+
886
911
  # A response message for listing all revisions for a OS policy assignment.
887
912
  class ListOsPolicyAssignmentRevisionsResponse
888
913
  include Google::Apis::Core::Hashable
@@ -1046,7 +1071,15 @@ module Google
1046
1071
  # @return [String]
1047
1072
  attr_accessor :description
1048
1073
 
1049
- # Message to represent the filters to select VMs for an assignment
1074
+ # The etag for this OS policy assignment. If this is provided on update, it must
1075
+ # match the server's etag.
1076
+ # Corresponds to the JSON property `etag`
1077
+ # @return [String]
1078
+ attr_accessor :etag
1079
+
1080
+ # Filters to select target VMs for an assignment. If more than one filter
1081
+ # criteria is specified below, a VM will be selected if and only if it satisfies
1082
+ # all of them.
1050
1083
  # Corresponds to the JSON property `instanceFilter`
1051
1084
  # @return [Google::Apis::OsconfigV1alpha::OsPolicyAssignmentInstanceFilter]
1052
1085
  attr_accessor :instance_filter
@@ -1107,6 +1140,7 @@ module Google
1107
1140
  @baseline = args[:baseline] if args.key?(:baseline)
1108
1141
  @deleted = args[:deleted] if args.key?(:deleted)
1109
1142
  @description = args[:description] if args.key?(:description)
1143
+ @etag = args[:etag] if args.key?(:etag)
1110
1144
  @instance_filter = args[:instance_filter] if args.key?(:instance_filter)
1111
1145
  @name = args[:name] if args.key?(:name)
1112
1146
  @os_policies = args[:os_policies] if args.key?(:os_policies)
@@ -1119,7 +1153,9 @@ module Google
1119
1153
  end
1120
1154
  end
1121
1155
 
1122
- # Message to represent the filters to select VMs for an assignment
1156
+ # Filters to select target VMs for an assignment. If more than one filter
1157
+ # criteria is specified below, a VM will be selected if and only if it satisfies
1158
+ # all of them.
1123
1159
  class OsPolicyAssignmentInstanceFilter
1124
1160
  include Google::Apis::Core::Hashable
1125
1161
 
@@ -1131,8 +1167,6 @@ module Google
1131
1167
 
1132
1168
  # List of label sets used for VM exclusion. If the list has more than one label
1133
1169
  # set, the VM is excluded if any of the label sets are applicable for the VM.
1134
- # This filter is applied last in the filtering chain and therefore a VM is
1135
- # guaranteed to be excluded if it satisfies one of the below label sets.
1136
1170
  # Corresponds to the JSON property `exclusionLabels`
1137
1171
  # @return [Array<Google::Apis::OsconfigV1alpha::OsPolicyAssignmentLabelSet>]
1138
1172
  attr_accessor :exclusion_labels
@@ -1144,8 +1178,14 @@ module Google
1144
1178
  # @return [Array<Google::Apis::OsconfigV1alpha::OsPolicyAssignmentLabelSet>]
1145
1179
  attr_accessor :inclusion_labels
1146
1180
 
1147
- # A VM is included if it's OS short name matches with any of the values provided
1148
- # in this list.
1181
+ # List of inventories to select VMs. A VM is selected if its inventory data
1182
+ # matches at least one of the following inventories.
1183
+ # Corresponds to the JSON property `inventories`
1184
+ # @return [Array<Google::Apis::OsconfigV1alpha::OsPolicyAssignmentInstanceFilterInventory>]
1185
+ attr_accessor :inventories
1186
+
1187
+ # Deprecated. Use the `inventories` field instead. A VM is selected if it's OS
1188
+ # short name matches with any of the values provided in this list.
1149
1189
  # Corresponds to the JSON property `osShortNames`
1150
1190
  # @return [Array<String>]
1151
1191
  attr_accessor :os_short_names
@@ -1159,10 +1199,39 @@ module Google
1159
1199
  @all = args[:all] if args.key?(:all)
1160
1200
  @exclusion_labels = args[:exclusion_labels] if args.key?(:exclusion_labels)
1161
1201
  @inclusion_labels = args[:inclusion_labels] if args.key?(:inclusion_labels)
1202
+ @inventories = args[:inventories] if args.key?(:inventories)
1162
1203
  @os_short_names = args[:os_short_names] if args.key?(:os_short_names)
1163
1204
  end
1164
1205
  end
1165
1206
 
1207
+ # VM inventory details.
1208
+ class OsPolicyAssignmentInstanceFilterInventory
1209
+ include Google::Apis::Core::Hashable
1210
+
1211
+ # Required. The OS short name
1212
+ # Corresponds to the JSON property `osShortName`
1213
+ # @return [String]
1214
+ attr_accessor :os_short_name
1215
+
1216
+ # The OS version Prefix matches are supported if asterisk(*) is provided as the
1217
+ # last character. For example, to match all versions with a major version of `7`,
1218
+ # specify the following value for this field `7.*` An empty string matches all
1219
+ # OS versions.
1220
+ # Corresponds to the JSON property `osVersion`
1221
+ # @return [String]
1222
+ attr_accessor :os_version
1223
+
1224
+ def initialize(**args)
1225
+ update!(**args)
1226
+ end
1227
+
1228
+ # Update properties of this object
1229
+ def update!(**args)
1230
+ @os_short_name = args[:os_short_name] if args.key?(:os_short_name)
1231
+ @os_version = args[:os_version] if args.key?(:os_version)
1232
+ end
1233
+ end
1234
+
1166
1235
  # Message representing label set. * A label is a key value pair set for a VM. *
1167
1236
  # A LabelSet is a set of labels. * Labels within a LabelSet are ANDed. In other
1168
1237
  # words, a LabelSet is applicable for a VM only if it matches all the labels in
@@ -1233,6 +1302,214 @@ module Google
1233
1302
  end
1234
1303
  end
1235
1304
 
1305
+ # A report of the OS policy assignment status for a given instance.
1306
+ class OsPolicyAssignmentReport
1307
+ include Google::Apis::Core::Hashable
1308
+
1309
+ # The Compute Engine VM instance name.
1310
+ # Corresponds to the JSON property `instance`
1311
+ # @return [String]
1312
+ attr_accessor :instance
1313
+
1314
+ # Unique identifier of the last attempted run to apply the OS policies
1315
+ # associated with this assignment on the VM. This ID is logged by the OS Config
1316
+ # agent while applying the OS policies associated with this assignment on the VM.
1317
+ # NOTE: If the service is unable to successfully connect to the agent for this
1318
+ # run, then this id will not be available in the agent logs.
1319
+ # Corresponds to the JSON property `lastRunId`
1320
+ # @return [String]
1321
+ attr_accessor :last_run_id
1322
+
1323
+ # The `OSPolicyAssignmentReport` API resource name. Format: `projects/`
1324
+ # project_number`/locations/`location`/instances/`instance_id`/
1325
+ # osPolicyAssignments/`os_policy_assignment_id`/report`
1326
+ # Corresponds to the JSON property `name`
1327
+ # @return [String]
1328
+ attr_accessor :name
1329
+
1330
+ # Reference to the `OSPolicyAssignment` API resource that the `OSPolicy` belongs
1331
+ # to. Format: `projects/`project_number`/locations/`location`/
1332
+ # osPolicyAssignments/`os_policy_assignment_id@revision_id``
1333
+ # Corresponds to the JSON property `osPolicyAssignment`
1334
+ # @return [String]
1335
+ attr_accessor :os_policy_assignment
1336
+
1337
+ # Compliance data for each `OSPolicy` that is applied to the VM.
1338
+ # Corresponds to the JSON property `osPolicyCompliances`
1339
+ # @return [Array<Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReportOsPolicyCompliance>]
1340
+ attr_accessor :os_policy_compliances
1341
+
1342
+ # Timestamp for when the report was last generated.
1343
+ # Corresponds to the JSON property `updateTime`
1344
+ # @return [String]
1345
+ attr_accessor :update_time
1346
+
1347
+ def initialize(**args)
1348
+ update!(**args)
1349
+ end
1350
+
1351
+ # Update properties of this object
1352
+ def update!(**args)
1353
+ @instance = args[:instance] if args.key?(:instance)
1354
+ @last_run_id = args[:last_run_id] if args.key?(:last_run_id)
1355
+ @name = args[:name] if args.key?(:name)
1356
+ @os_policy_assignment = args[:os_policy_assignment] if args.key?(:os_policy_assignment)
1357
+ @os_policy_compliances = args[:os_policy_compliances] if args.key?(:os_policy_compliances)
1358
+ @update_time = args[:update_time] if args.key?(:update_time)
1359
+ end
1360
+ end
1361
+
1362
+ # Compliance data for an OS policy
1363
+ class OsPolicyAssignmentReportOsPolicyCompliance
1364
+ include Google::Apis::Core::Hashable
1365
+
1366
+ # The compliance state of the OS policy.
1367
+ # Corresponds to the JSON property `complianceState`
1368
+ # @return [String]
1369
+ attr_accessor :compliance_state
1370
+
1371
+ # The reason for the OS policy to be in an unknown compliance state. This field
1372
+ # is always populated when `compliance_state` is `UNKNOWN`. If populated, the
1373
+ # field can contain one of the following values: * `vm-not-running`: The VM was
1374
+ # not running. * `os-policies-not-supported-by-agent`: The version of the OS
1375
+ # Config agent running on the VM does not support running OS policies. * `no-
1376
+ # agent-detected`: The OS Config agent is not detected for the VM. * `resource-
1377
+ # execution-errors`: The OS Config agent encountered errors while executing one
1378
+ # or more resources in the policy. See `os_policy_resource_compliances` for
1379
+ # details. * `task-timeout`: The task sent to the agent to apply the policy
1380
+ # timed out. * `unexpected-agent-state`: The OS Config agent did not report the
1381
+ # final status of the task that attempted to apply the policy. Instead, the
1382
+ # agent unexpectedly started working on a different task. This mostly happens
1383
+ # when the agent or VM unexpectedly restarts while applying OS policies. * `
1384
+ # internal-service-errors`: Internal service errors were encountered while
1385
+ # attempting to apply the policy.
1386
+ # Corresponds to the JSON property `complianceStateReason`
1387
+ # @return [String]
1388
+ attr_accessor :compliance_state_reason
1389
+
1390
+ # The OS policy id
1391
+ # Corresponds to the JSON property `osPolicyId`
1392
+ # @return [String]
1393
+ attr_accessor :os_policy_id
1394
+
1395
+ # Compliance data for each resource within the policy that is applied to the VM.
1396
+ # Corresponds to the JSON property `osPolicyResourceCompliances`
1397
+ # @return [Array<Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceCompliance>]
1398
+ attr_accessor :os_policy_resource_compliances
1399
+
1400
+ def initialize(**args)
1401
+ update!(**args)
1402
+ end
1403
+
1404
+ # Update properties of this object
1405
+ def update!(**args)
1406
+ @compliance_state = args[:compliance_state] if args.key?(:compliance_state)
1407
+ @compliance_state_reason = args[:compliance_state_reason] if args.key?(:compliance_state_reason)
1408
+ @os_policy_id = args[:os_policy_id] if args.key?(:os_policy_id)
1409
+ @os_policy_resource_compliances = args[:os_policy_resource_compliances] if args.key?(:os_policy_resource_compliances)
1410
+ end
1411
+ end
1412
+
1413
+ # Compliance data for an OS policy resource.
1414
+ class OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceCompliance
1415
+ include Google::Apis::Core::Hashable
1416
+
1417
+ # The compliance state of the resource.
1418
+ # Corresponds to the JSON property `complianceState`
1419
+ # @return [String]
1420
+ attr_accessor :compliance_state
1421
+
1422
+ # A reason for the resource to be in the given compliance state. This field is
1423
+ # always populated when `compliance_state` is `UNKNOWN`. The following values
1424
+ # are supported when `compliance_state == UNKNOWN` * `execution-errors`: Errors
1425
+ # were encountered by the agent while executing the resource and the compliance
1426
+ # state couldn't be determined. * `execution-skipped-by-agent`: Resource
1427
+ # execution was skipped by the agent because errors were encountered while
1428
+ # executing prior resources in the OS policy. * `os-policy-execution-attempt-
1429
+ # failed`: The execution of the OS policy containing this resource failed and
1430
+ # the compliance state couldn't be determined.
1431
+ # Corresponds to the JSON property `complianceStateReason`
1432
+ # @return [String]
1433
+ attr_accessor :compliance_state_reason
1434
+
1435
+ # Ordered list of configuration completed by the agent for the OS policy
1436
+ # resource.
1437
+ # Corresponds to the JSON property `configSteps`
1438
+ # @return [Array<Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceComplianceOsPolicyResourceConfigStep>]
1439
+ attr_accessor :config_steps
1440
+
1441
+ # ExecResource specific output.
1442
+ # Corresponds to the JSON property `execResourceOutput`
1443
+ # @return [Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceComplianceExecResourceOutput]
1444
+ attr_accessor :exec_resource_output
1445
+
1446
+ # The ID of the OS policy resource.
1447
+ # Corresponds to the JSON property `osPolicyResourceId`
1448
+ # @return [String]
1449
+ attr_accessor :os_policy_resource_id
1450
+
1451
+ def initialize(**args)
1452
+ update!(**args)
1453
+ end
1454
+
1455
+ # Update properties of this object
1456
+ def update!(**args)
1457
+ @compliance_state = args[:compliance_state] if args.key?(:compliance_state)
1458
+ @compliance_state_reason = args[:compliance_state_reason] if args.key?(:compliance_state_reason)
1459
+ @config_steps = args[:config_steps] if args.key?(:config_steps)
1460
+ @exec_resource_output = args[:exec_resource_output] if args.key?(:exec_resource_output)
1461
+ @os_policy_resource_id = args[:os_policy_resource_id] if args.key?(:os_policy_resource_id)
1462
+ end
1463
+ end
1464
+
1465
+ # ExecResource specific output.
1466
+ class OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceComplianceExecResourceOutput
1467
+ include Google::Apis::Core::Hashable
1468
+
1469
+ # Output from enforcement phase output file (if run). Output size is limited to
1470
+ # 100K bytes.
1471
+ # Corresponds to the JSON property `enforcementOutput`
1472
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1473
+ # @return [String]
1474
+ attr_accessor :enforcement_output
1475
+
1476
+ def initialize(**args)
1477
+ update!(**args)
1478
+ end
1479
+
1480
+ # Update properties of this object
1481
+ def update!(**args)
1482
+ @enforcement_output = args[:enforcement_output] if args.key?(:enforcement_output)
1483
+ end
1484
+ end
1485
+
1486
+ # Step performed by the OS Config agent for configuring an `OSPolicy` resource
1487
+ # to its desired state.
1488
+ class OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceComplianceOsPolicyResourceConfigStep
1489
+ include Google::Apis::Core::Hashable
1490
+
1491
+ # An error message recorded during the execution of this step. Only populated if
1492
+ # errors were encountered during this step execution.
1493
+ # Corresponds to the JSON property `errorMessage`
1494
+ # @return [String]
1495
+ attr_accessor :error_message
1496
+
1497
+ # Configuration step type.
1498
+ # Corresponds to the JSON property `type`
1499
+ # @return [String]
1500
+ attr_accessor :type
1501
+
1502
+ def initialize(**args)
1503
+ update!(**args)
1504
+ end
1505
+
1506
+ # Update properties of this object
1507
+ def update!(**args)
1508
+ @error_message = args[:error_message] if args.key?(:error_message)
1509
+ @type = args[:type] if args.key?(:type)
1510
+ end
1511
+ end
1512
+
1236
1513
  # Message to configure the rollout at the zonal level for the OS policy
1237
1514
  # assignment.
1238
1515
  class OsPolicyAssignmentRollout
@@ -1263,8 +1540,35 @@ module Google
1263
1540
  end
1264
1541
  end
1265
1542
 
1266
- # The `OSFilter` is used to specify the OS filtering criteria for the resource
1267
- # group.
1543
+ # Filtering criteria to select VMs based on inventory details.
1544
+ class OsPolicyInventoryFilter
1545
+ include Google::Apis::Core::Hashable
1546
+
1547
+ # Required. The OS short name
1548
+ # Corresponds to the JSON property `osShortName`
1549
+ # @return [String]
1550
+ attr_accessor :os_short_name
1551
+
1552
+ # The OS version Prefix matches are supported if asterisk(*) is provided as the
1553
+ # last character. For example, to match all versions with a major version of `7`,
1554
+ # specify the following value for this field `7.*` An empty string matches all
1555
+ # OS versions.
1556
+ # Corresponds to the JSON property `osVersion`
1557
+ # @return [String]
1558
+ attr_accessor :os_version
1559
+
1560
+ def initialize(**args)
1561
+ update!(**args)
1562
+ end
1563
+
1564
+ # Update properties of this object
1565
+ def update!(**args)
1566
+ @os_short_name = args[:os_short_name] if args.key?(:os_short_name)
1567
+ @os_version = args[:os_version] if args.key?(:os_version)
1568
+ end
1569
+ end
1570
+
1571
+ # Filtering criteria to select VMs based on OS details.
1268
1572
  class OsPolicyOsFilter
1269
1573
  include Google::Apis::Core::Hashable
1270
1574
 
@@ -1698,8 +2002,18 @@ module Google
1698
2002
  class OsPolicyResourceGroup
1699
2003
  include Google::Apis::Core::Hashable
1700
2004
 
1701
- # The `OSFilter` is used to specify the OS filtering criteria for the resource
1702
- # group.
2005
+ # List of inventory filters for the resource group. The resources in this
2006
+ # resource group are applied to the target VM if it satisfies at least one of
2007
+ # the following inventory filters. For example, to apply this resource group to
2008
+ # VMs running either `RHEL` or `CentOS` operating systems, specify 2 items for
2009
+ # the list with following values: inventory_filters[0].os_short_name='rhel' and
2010
+ # inventory_filters[1].os_short_name='centos' If the list is empty, this
2011
+ # resource group will be applied to the target VM unconditionally.
2012
+ # Corresponds to the JSON property `inventoryFilters`
2013
+ # @return [Array<Google::Apis::OsconfigV1alpha::OsPolicyInventoryFilter>]
2014
+ attr_accessor :inventory_filters
2015
+
2016
+ # Filtering criteria to select VMs based on OS details.
1703
2017
  # Corresponds to the JSON property `osFilter`
1704
2018
  # @return [Google::Apis::OsconfigV1alpha::OsPolicyOsFilter]
1705
2019
  attr_accessor :os_filter
@@ -1716,6 +2030,7 @@ module Google
1716
2030
 
1717
2031
  # Update properties of this object
1718
2032
  def update!(**args)
2033
+ @inventory_filters = args[:inventory_filters] if args.key?(:inventory_filters)
1719
2034
  @os_filter = args[:os_filter] if args.key?(:os_filter)
1720
2035
  @resources = args[:resources] if args.key?(:resources)
1721
2036
  end
@@ -2391,6 +2706,11 @@ module Google
2391
2706
  class VulnerabilityReportVulnerabilityDetailsReference
2392
2707
  include Google::Apis::Core::Hashable
2393
2708
 
2709
+ # The source of the reference e.g. NVD.
2710
+ # Corresponds to the JSON property `source`
2711
+ # @return [String]
2712
+ attr_accessor :source
2713
+
2394
2714
  # The url of the reference.
2395
2715
  # Corresponds to the JSON property `url`
2396
2716
  # @return [String]
@@ -2402,6 +2722,7 @@ module Google
2402
2722
 
2403
2723
  # Update properties of this object
2404
2724
  def update!(**args)
2725
+ @source = args[:source] if args.key?(:source)
2405
2726
  @url = args[:url] if args.key?(:url)
2406
2727
  end
2407
2728
  end
@@ -16,13 +16,13 @@ module Google
16
16
  module Apis
17
17
  module OsconfigV1alpha
18
18
  # Version of the google-apis-osconfig_v1alpha gem
19
- GEM_VERSION = "0.5.0"
19
+ GEM_VERSION = "0.9.0"
20
20
 
21
21
  # Version of the code generator used to generate this client
22
22
  GENERATOR_VERSION = "0.4.0"
23
23
 
24
24
  # Revision of the discovery document this client was generated from
25
- REVISION = "20210723"
25
+ REVISION = "20211018"
26
26
  end
27
27
  end
28
28
  end
@@ -136,6 +136,12 @@ module Google
136
136
  include Google::Apis::Core::JsonObjectSupport
137
137
  end
138
138
 
139
+ class ListOsPolicyAssignmentReportsResponse
140
+ class Representation < Google::Apis::Core::JsonRepresentation; end
141
+
142
+ include Google::Apis::Core::JsonObjectSupport
143
+ end
144
+
139
145
  class ListOsPolicyAssignmentRevisionsResponse
140
146
  class Representation < Google::Apis::Core::JsonRepresentation; end
141
147
 
@@ -172,6 +178,12 @@ module Google
172
178
  include Google::Apis::Core::JsonObjectSupport
173
179
  end
174
180
 
181
+ class OsPolicyAssignmentInstanceFilterInventory
182
+ class Representation < Google::Apis::Core::JsonRepresentation; end
183
+
184
+ include Google::Apis::Core::JsonObjectSupport
185
+ end
186
+
175
187
  class OsPolicyAssignmentLabelSet
176
188
  class Representation < Google::Apis::Core::JsonRepresentation; end
177
189
 
@@ -184,12 +196,48 @@ module Google
184
196
  include Google::Apis::Core::JsonObjectSupport
185
197
  end
186
198
 
199
+ class OsPolicyAssignmentReport
200
+ class Representation < Google::Apis::Core::JsonRepresentation; end
201
+
202
+ include Google::Apis::Core::JsonObjectSupport
203
+ end
204
+
205
+ class OsPolicyAssignmentReportOsPolicyCompliance
206
+ class Representation < Google::Apis::Core::JsonRepresentation; end
207
+
208
+ include Google::Apis::Core::JsonObjectSupport
209
+ end
210
+
211
+ class OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceCompliance
212
+ class Representation < Google::Apis::Core::JsonRepresentation; end
213
+
214
+ include Google::Apis::Core::JsonObjectSupport
215
+ end
216
+
217
+ class OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceComplianceExecResourceOutput
218
+ class Representation < Google::Apis::Core::JsonRepresentation; end
219
+
220
+ include Google::Apis::Core::JsonObjectSupport
221
+ end
222
+
223
+ class OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceComplianceOsPolicyResourceConfigStep
224
+ class Representation < Google::Apis::Core::JsonRepresentation; end
225
+
226
+ include Google::Apis::Core::JsonObjectSupport
227
+ end
228
+
187
229
  class OsPolicyAssignmentRollout
188
230
  class Representation < Google::Apis::Core::JsonRepresentation; end
189
231
 
190
232
  include Google::Apis::Core::JsonObjectSupport
191
233
  end
192
234
 
235
+ class OsPolicyInventoryFilter
236
+ class Representation < Google::Apis::Core::JsonRepresentation; end
237
+
238
+ include Google::Apis::Core::JsonObjectSupport
239
+ end
240
+
193
241
  class OsPolicyOsFilter
194
242
  class Representation < Google::Apis::Core::JsonRepresentation; end
195
243
 
@@ -596,6 +644,15 @@ module Google
596
644
  end
597
645
  end
598
646
 
647
+ class ListOsPolicyAssignmentReportsResponse
648
+ # @private
649
+ class Representation < Google::Apis::Core::JsonRepresentation
650
+ property :next_page_token, as: 'nextPageToken'
651
+ collection :os_policy_assignment_reports, as: 'osPolicyAssignmentReports', class: Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReport, decorator: Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReport::Representation
652
+
653
+ end
654
+ end
655
+
599
656
  class ListOsPolicyAssignmentRevisionsResponse
600
657
  # @private
601
658
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -641,6 +698,7 @@ module Google
641
698
  property :baseline, as: 'baseline'
642
699
  property :deleted, as: 'deleted'
643
700
  property :description, as: 'description'
701
+ property :etag, as: 'etag'
644
702
  property :instance_filter, as: 'instanceFilter', class: Google::Apis::OsconfigV1alpha::OsPolicyAssignmentInstanceFilter, decorator: Google::Apis::OsconfigV1alpha::OsPolicyAssignmentInstanceFilter::Representation
645
703
 
646
704
  property :name, as: 'name'
@@ -664,10 +722,20 @@ module Google
664
722
 
665
723
  collection :inclusion_labels, as: 'inclusionLabels', class: Google::Apis::OsconfigV1alpha::OsPolicyAssignmentLabelSet, decorator: Google::Apis::OsconfigV1alpha::OsPolicyAssignmentLabelSet::Representation
666
724
 
725
+ collection :inventories, as: 'inventories', class: Google::Apis::OsconfigV1alpha::OsPolicyAssignmentInstanceFilterInventory, decorator: Google::Apis::OsconfigV1alpha::OsPolicyAssignmentInstanceFilterInventory::Representation
726
+
667
727
  collection :os_short_names, as: 'osShortNames'
668
728
  end
669
729
  end
670
730
 
731
+ class OsPolicyAssignmentInstanceFilterInventory
732
+ # @private
733
+ class Representation < Google::Apis::Core::JsonRepresentation
734
+ property :os_short_name, as: 'osShortName'
735
+ property :os_version, as: 'osVersion'
736
+ end
737
+ end
738
+
671
739
  class OsPolicyAssignmentLabelSet
672
740
  # @private
673
741
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -686,6 +754,58 @@ module Google
686
754
  end
687
755
  end
688
756
 
757
+ class OsPolicyAssignmentReport
758
+ # @private
759
+ class Representation < Google::Apis::Core::JsonRepresentation
760
+ property :instance, as: 'instance'
761
+ property :last_run_id, as: 'lastRunId'
762
+ property :name, as: 'name'
763
+ property :os_policy_assignment, as: 'osPolicyAssignment'
764
+ collection :os_policy_compliances, as: 'osPolicyCompliances', class: Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReportOsPolicyCompliance, decorator: Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReportOsPolicyCompliance::Representation
765
+
766
+ property :update_time, as: 'updateTime'
767
+ end
768
+ end
769
+
770
+ class OsPolicyAssignmentReportOsPolicyCompliance
771
+ # @private
772
+ class Representation < Google::Apis::Core::JsonRepresentation
773
+ property :compliance_state, as: 'complianceState'
774
+ property :compliance_state_reason, as: 'complianceStateReason'
775
+ property :os_policy_id, as: 'osPolicyId'
776
+ collection :os_policy_resource_compliances, as: 'osPolicyResourceCompliances', class: Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceCompliance, decorator: Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceCompliance::Representation
777
+
778
+ end
779
+ end
780
+
781
+ class OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceCompliance
782
+ # @private
783
+ class Representation < Google::Apis::Core::JsonRepresentation
784
+ property :compliance_state, as: 'complianceState'
785
+ property :compliance_state_reason, as: 'complianceStateReason'
786
+ collection :config_steps, as: 'configSteps', class: Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceComplianceOsPolicyResourceConfigStep, decorator: Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceComplianceOsPolicyResourceConfigStep::Representation
787
+
788
+ property :exec_resource_output, as: 'execResourceOutput', class: Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceComplianceExecResourceOutput, decorator: Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceComplianceExecResourceOutput::Representation
789
+
790
+ property :os_policy_resource_id, as: 'osPolicyResourceId'
791
+ end
792
+ end
793
+
794
+ class OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceComplianceExecResourceOutput
795
+ # @private
796
+ class Representation < Google::Apis::Core::JsonRepresentation
797
+ property :enforcement_output, :base64 => true, as: 'enforcementOutput'
798
+ end
799
+ end
800
+
801
+ class OsPolicyAssignmentReportOsPolicyComplianceOsPolicyResourceComplianceOsPolicyResourceConfigStep
802
+ # @private
803
+ class Representation < Google::Apis::Core::JsonRepresentation
804
+ property :error_message, as: 'errorMessage'
805
+ property :type, as: 'type'
806
+ end
807
+ end
808
+
689
809
  class OsPolicyAssignmentRollout
690
810
  # @private
691
811
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -695,6 +815,14 @@ module Google
695
815
  end
696
816
  end
697
817
 
818
+ class OsPolicyInventoryFilter
819
+ # @private
820
+ class Representation < Google::Apis::Core::JsonRepresentation
821
+ property :os_short_name, as: 'osShortName'
822
+ property :os_version, as: 'osVersion'
823
+ end
824
+ end
825
+
698
826
  class OsPolicyOsFilter
699
827
  # @private
700
828
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -812,6 +940,8 @@ module Google
812
940
  class OsPolicyResourceGroup
813
941
  # @private
814
942
  class Representation < Google::Apis::Core::JsonRepresentation
943
+ collection :inventory_filters, as: 'inventoryFilters', class: Google::Apis::OsconfigV1alpha::OsPolicyInventoryFilter, decorator: Google::Apis::OsconfigV1alpha::OsPolicyInventoryFilter::Representation
944
+
815
945
  property :os_filter, as: 'osFilter', class: Google::Apis::OsconfigV1alpha::OsPolicyOsFilter, decorator: Google::Apis::OsconfigV1alpha::OsPolicyOsFilter::Representation
816
946
 
817
947
  collection :resources, as: 'resources', class: Google::Apis::OsconfigV1alpha::OsPolicyResource, decorator: Google::Apis::OsconfigV1alpha::OsPolicyResource::Representation
@@ -1008,6 +1138,7 @@ module Google
1008
1138
  class VulnerabilityReportVulnerabilityDetailsReference
1009
1139
  # @private
1010
1140
  class Representation < Google::Apis::Core::JsonRepresentation
1141
+ property :source, as: 'source'
1011
1142
  property :url, as: 'url'
1012
1143
  end
1013
1144
  end
@@ -170,9 +170,8 @@ module Google
170
170
  # List inventory data for all VM instances in the specified zone.
171
171
  # @param [String] parent
172
172
  # Required. The parent resource name. Format: `projects/`project`/locations/`
173
- # location`/instances/`instance`` For ``project``, either `project-number` or `
174
- # project-id` can be provided. For ``instance``, only hyphen or dash character
175
- # is supported to list inventories across VMs.
173
+ # location`/instances/-` For ``project``, either `project-number` or `project-id`
174
+ # can be provided.
176
175
  # @param [String] filter
177
176
  # If provided, this field specifies the criteria that must be met by a `
178
177
  # Inventory` API resource to be included in the response.
@@ -215,6 +214,99 @@ module Google
215
214
  execute_or_queue_command(command, &block)
216
215
  end
217
216
 
217
+ # Get the OS policy asssignment report for the specified Compute Engine VM
218
+ # instance.
219
+ # @param [String] name
220
+ # Required. API resource name for OS policy assignment report. Format: `/
221
+ # projects/`project`/locations/`location`/instances/`instance`/
222
+ # osPolicyAssignments/`assignment`/report` For ``project``, either `project-
223
+ # number` or `project-id` can be provided. For ``instance_id``, either Compute
224
+ # Engine `instance-id` or `instance-name` can be provided. For ``assignment_id``,
225
+ # the OSPolicyAssignment id must be provided.
226
+ # @param [String] fields
227
+ # Selector specifying which fields to include in a partial response.
228
+ # @param [String] quota_user
229
+ # Available to use for quota purposes for server-side applications. Can be any
230
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
231
+ # @param [Google::Apis::RequestOptions] options
232
+ # Request-specific options
233
+ #
234
+ # @yield [result, err] Result & error if block supplied
235
+ # @yieldparam result [Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReport] parsed result object
236
+ # @yieldparam err [StandardError] error object if request failed
237
+ #
238
+ # @return [Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReport]
239
+ #
240
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
241
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
242
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
243
+ def get_project_location_instance_os_policy_assignment_report(name, fields: nil, quota_user: nil, options: nil, &block)
244
+ command = make_simple_command(:get, 'v1alpha/{+name}', options)
245
+ command.response_representation = Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReport::Representation
246
+ command.response_class = Google::Apis::OsconfigV1alpha::OsPolicyAssignmentReport
247
+ command.params['name'] = name unless name.nil?
248
+ command.query['fields'] = fields unless fields.nil?
249
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
250
+ execute_or_queue_command(command, &block)
251
+ end
252
+
253
+ # List OS policy asssignment reports for all Compute Engine VM instances in the
254
+ # specified zone.
255
+ # @param [String] parent
256
+ # Required. The parent resource name. Format: `projects/`project`/locations/`
257
+ # location`/instances/`instance`/osPolicyAssignments/`assignment`/reports` For ``
258
+ # project``, either `project-number` or `project-id` can be provided. For ``
259
+ # instance``, either `instance-name`, `instance-id`, or `-` can be provided. If '
260
+ # -' is provided, the response will include OSPolicyAssignmentReports for all
261
+ # instances in the project/location. For ``assignment``, either `assignment-id`
262
+ # or `-` can be provided. If '-' is provided, the response will include
263
+ # OSPolicyAssignmentReports for all OSPolicyAssignments in the project/location.
264
+ # Either `instance` or `assignment` must be `-`. For example: `projects/`project`
265
+ # /locations/`location`/instances/`instance`/osPolicyAssignments/-/reports`
266
+ # returns all reports for the instance `projects/`project`/locations/`location`/
267
+ # instances/-/osPolicyAssignments/`assignment-id`/reports` returns all the
268
+ # reports for the given assignment across all instances. `projects/`project`/
269
+ # locations/`location`/instances/-/osPolicyAssignments/-/reports` returns all
270
+ # the reports for all assignments across all instances.
271
+ # @param [String] filter
272
+ # If provided, this field specifies the criteria that must be met by the `
273
+ # OSPolicyAssignmentReport` API resource that is included in the response.
274
+ # @param [Fixnum] page_size
275
+ # The maximum number of results to return.
276
+ # @param [String] page_token
277
+ # A pagination token returned from a previous call to the `
278
+ # ListOSPolicyAssignmentReports` method that indicates where this listing should
279
+ # continue from.
280
+ # @param [String] fields
281
+ # Selector specifying which fields to include in a partial response.
282
+ # @param [String] quota_user
283
+ # Available to use for quota purposes for server-side applications. Can be any
284
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
285
+ # @param [Google::Apis::RequestOptions] options
286
+ # Request-specific options
287
+ #
288
+ # @yield [result, err] Result & error if block supplied
289
+ # @yieldparam result [Google::Apis::OsconfigV1alpha::ListOsPolicyAssignmentReportsResponse] parsed result object
290
+ # @yieldparam err [StandardError] error object if request failed
291
+ #
292
+ # @return [Google::Apis::OsconfigV1alpha::ListOsPolicyAssignmentReportsResponse]
293
+ #
294
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
295
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
296
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
297
+ def list_project_location_instance_os_policy_assignment_reports(parent, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
298
+ command = make_simple_command(:get, 'v1alpha/{+parent}/reports', options)
299
+ command.response_representation = Google::Apis::OsconfigV1alpha::ListOsPolicyAssignmentReportsResponse::Representation
300
+ command.response_class = Google::Apis::OsconfigV1alpha::ListOsPolicyAssignmentReportsResponse
301
+ command.params['parent'] = parent unless parent.nil?
302
+ command.query['filter'] = filter unless filter.nil?
303
+ command.query['pageSize'] = page_size unless page_size.nil?
304
+ command.query['pageToken'] = page_token unless page_token.nil?
305
+ command.query['fields'] = fields unless fields.nil?
306
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
307
+ execute_or_queue_command(command, &block)
308
+ end
309
+
218
310
  # Gets the vulnerability report for the specified VM instance. Only VMs with
219
311
  # inventory data have vulnerability reports associated with them.
220
312
  # @param [String] name
@@ -253,9 +345,8 @@ module Google
253
345
  # List vulnerability reports for all VM instances in the specified zone.
254
346
  # @param [String] parent
255
347
  # Required. The parent resource name. Format: `projects/`project`/locations/`
256
- # location`/instances/`instance`` For ``project``, either `project-number` or `
257
- # project-id` can be provided. For ``instance``, only `-` character is supported
258
- # to list vulnerability reports across VMs.
348
+ # location`/instances/-` For ``project``, either `project-number` or `project-id`
349
+ # can be provided.
259
350
  # @param [String] filter
260
351
  # If provided, this field specifies the criteria that must be met by a `
261
352
  # vulnerabilityReport` API resource to be included in the response.
@@ -30,7 +30,7 @@ module Google
30
30
  # This is NOT the gem version.
31
31
  VERSION = 'V1alpha'
32
32
 
33
- # See, edit, configure, and delete your Google Cloud Platform data
33
+ # See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account.
34
34
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
35
35
  end
36
36
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-apis-osconfig_v1alpha
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-08-02 00:00:00.000000000 Z
11
+ date: 2021-10-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-apis-core
@@ -57,9 +57,9 @@ licenses:
57
57
  - Apache-2.0
58
58
  metadata:
59
59
  bug_tracker_uri: https://github.com/googleapis/google-api-ruby-client/issues
60
- changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/master/generated/google-apis-osconfig_v1alpha/CHANGELOG.md
61
- documentation_uri: https://googleapis.dev/ruby/google-apis-osconfig_v1alpha/v0.5.0
62
- source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/master/generated/google-apis-osconfig_v1alpha
60
+ changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-osconfig_v1alpha/CHANGELOG.md
61
+ documentation_uri: https://googleapis.dev/ruby/google-apis-osconfig_v1alpha/v0.9.0
62
+ source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-osconfig_v1alpha
63
63
  post_install_message:
64
64
  rdoc_options: []
65
65
  require_paths: