google-apis-gkehub_v1 0.4.0 → 0.5.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: a735787405903a92dd9240eaab8b23720a1449207c7a163231844b956503928f
4
- data.tar.gz: 487282f9d625c8fa374a040a096af45fccb51c78c4e1801a1a62d023b91c4d1f
3
+ metadata.gz: a871e5cd74f0d3686c39ac3e8d4ddc860e5f2a851fd2e33c21de485aeee8e86a
4
+ data.tar.gz: 8a484059485a39576ed9b842e44d3ae45cf93d80524099b76ae67398fb1b82e7
5
5
  SHA512:
6
- metadata.gz: b52b4efd36603bca87f13e91d776a5183d5097d410f953d3c9a1ca591013302b9d632ab4115f34c424aa0b22c5bd8c6a5a9e99499b15bec905d3c1a668b00ccd
7
- data.tar.gz: 9692f789bf3fb6bebb4502e108eca74dbb5b0524bc35f46640cec51830dfb39cc93ad2f6f3fced13d43c5ceaf2136c6eff4358e6f1aa1e02ff126cfc7a7f272d
6
+ metadata.gz: b0721057a8fa924b1d427c1addbe475aee15f8f1de1d32e6f9faf14ba13acf01d5808e69605b13a94df79281a78fcd219000c2ed26492910f12548eb996e402b
7
+ data.tar.gz: e52cc45a93f03c8e45a54d1cf647bd37b396f5c1679f166f43aff6528e20778a33f56db6baa9d517ab8dcaf2238a683093dc0cfe5272f51bc7e0d3d667bb1f91
data/CHANGELOG.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # Release history for google-apis-gkehub_v1
2
2
 
3
+ ### v0.5.0 (2021-06-10)
4
+
5
+ * Regenerated from discovery document revision 20210604
6
+ * Regenerated using generator version 0.3.0
7
+
3
8
  ### v0.4.0 (2021-05-25)
4
9
 
5
10
  * Regenerated from discovery document revision 20210521
@@ -231,6 +231,800 @@ module Google
231
231
  end
232
232
  end
233
233
 
234
+ # CommonFeatureSpec contains Hub-wide configuration information
235
+ class CommonFeatureSpec
236
+ include Google::Apis::Core::Hashable
237
+
238
+ # **Multi-cluster Ingress**: The configuration for the MultiClusterIngress
239
+ # feature.
240
+ # Corresponds to the JSON property `multiclusteringress`
241
+ # @return [Google::Apis::GkehubV1::MultiClusterIngressFeatureSpec]
242
+ attr_accessor :multiclusteringress
243
+
244
+ def initialize(**args)
245
+ update!(**args)
246
+ end
247
+
248
+ # Update properties of this object
249
+ def update!(**args)
250
+ @multiclusteringress = args[:multiclusteringress] if args.key?(:multiclusteringress)
251
+ end
252
+ end
253
+
254
+ # CommonFeatureState contains Hub-wide Feature status information.
255
+ class CommonFeatureState
256
+ include Google::Apis::Core::Hashable
257
+
258
+ # FeatureState describes the high-level state of a Feature. It may be used to
259
+ # describe a Feature's state at the environ-level, or per-membershop, depending
260
+ # on the context.
261
+ # Corresponds to the JSON property `state`
262
+ # @return [Google::Apis::GkehubV1::FeatureState]
263
+ attr_accessor :state
264
+
265
+ def initialize(**args)
266
+ update!(**args)
267
+ end
268
+
269
+ # Update properties of this object
270
+ def update!(**args)
271
+ @state = args[:state] if args.key?(:state)
272
+ end
273
+ end
274
+
275
+ # Configuration for Config Sync
276
+ class ConfigManagementConfigSync
277
+ include Google::Apis::Core::Hashable
278
+
279
+ # Git repo configuration for a single cluster.
280
+ # Corresponds to the JSON property `git`
281
+ # @return [Google::Apis::GkehubV1::ConfigManagementGitConfig]
282
+ attr_accessor :git
283
+
284
+ # Specifies whether the Config Sync Repo is in “hierarchical” or “unstructured”
285
+ # mode.
286
+ # Corresponds to the JSON property `sourceFormat`
287
+ # @return [String]
288
+ attr_accessor :source_format
289
+
290
+ def initialize(**args)
291
+ update!(**args)
292
+ end
293
+
294
+ # Update properties of this object
295
+ def update!(**args)
296
+ @git = args[:git] if args.key?(:git)
297
+ @source_format = args[:source_format] if args.key?(:source_format)
298
+ end
299
+ end
300
+
301
+ # The state of ConfigSync's deployment on a cluster
302
+ class ConfigManagementConfigSyncDeploymentState
303
+ include Google::Apis::Core::Hashable
304
+
305
+ # Deployment state of the git-sync pod
306
+ # Corresponds to the JSON property `gitSync`
307
+ # @return [String]
308
+ attr_accessor :git_sync
309
+
310
+ # Deployment state of the importer pod
311
+ # Corresponds to the JSON property `importer`
312
+ # @return [String]
313
+ attr_accessor :importer
314
+
315
+ # Deployment state of the monitor pod
316
+ # Corresponds to the JSON property `monitor`
317
+ # @return [String]
318
+ attr_accessor :monitor
319
+
320
+ # Deployment state of reconciler-manager pod
321
+ # Corresponds to the JSON property `reconcilerManager`
322
+ # @return [String]
323
+ attr_accessor :reconciler_manager
324
+
325
+ # Deployment state of root-reconciler
326
+ # Corresponds to the JSON property `rootReconciler`
327
+ # @return [String]
328
+ attr_accessor :root_reconciler
329
+
330
+ # Deployment state of the syncer pod
331
+ # Corresponds to the JSON property `syncer`
332
+ # @return [String]
333
+ attr_accessor :syncer
334
+
335
+ def initialize(**args)
336
+ update!(**args)
337
+ end
338
+
339
+ # Update properties of this object
340
+ def update!(**args)
341
+ @git_sync = args[:git_sync] if args.key?(:git_sync)
342
+ @importer = args[:importer] if args.key?(:importer)
343
+ @monitor = args[:monitor] if args.key?(:monitor)
344
+ @reconciler_manager = args[:reconciler_manager] if args.key?(:reconciler_manager)
345
+ @root_reconciler = args[:root_reconciler] if args.key?(:root_reconciler)
346
+ @syncer = args[:syncer] if args.key?(:syncer)
347
+ end
348
+ end
349
+
350
+ # State information for ConfigSync
351
+ class ConfigManagementConfigSyncState
352
+ include Google::Apis::Core::Hashable
353
+
354
+ # The state of ConfigSync's deployment on a cluster
355
+ # Corresponds to the JSON property `deploymentState`
356
+ # @return [Google::Apis::GkehubV1::ConfigManagementConfigSyncDeploymentState]
357
+ attr_accessor :deployment_state
358
+
359
+ # State indicating an ACM's progress syncing configurations to a cluster
360
+ # Corresponds to the JSON property `syncState`
361
+ # @return [Google::Apis::GkehubV1::ConfigManagementSyncState]
362
+ attr_accessor :sync_state
363
+
364
+ # Specific versioning information pertaining to ConfigSync's Pods
365
+ # Corresponds to the JSON property `version`
366
+ # @return [Google::Apis::GkehubV1::ConfigManagementConfigSyncVersion]
367
+ attr_accessor :version
368
+
369
+ def initialize(**args)
370
+ update!(**args)
371
+ end
372
+
373
+ # Update properties of this object
374
+ def update!(**args)
375
+ @deployment_state = args[:deployment_state] if args.key?(:deployment_state)
376
+ @sync_state = args[:sync_state] if args.key?(:sync_state)
377
+ @version = args[:version] if args.key?(:version)
378
+ end
379
+ end
380
+
381
+ # Specific versioning information pertaining to ConfigSync's Pods
382
+ class ConfigManagementConfigSyncVersion
383
+ include Google::Apis::Core::Hashable
384
+
385
+ # Version of the deployed git-sync pod
386
+ # Corresponds to the JSON property `gitSync`
387
+ # @return [String]
388
+ attr_accessor :git_sync
389
+
390
+ # Version of the deployed importer pod
391
+ # Corresponds to the JSON property `importer`
392
+ # @return [String]
393
+ attr_accessor :importer
394
+
395
+ # Version of the deployed monitor pod
396
+ # Corresponds to the JSON property `monitor`
397
+ # @return [String]
398
+ attr_accessor :monitor
399
+
400
+ # Version of the deployed reconciler-manager pod
401
+ # Corresponds to the JSON property `reconcilerManager`
402
+ # @return [String]
403
+ attr_accessor :reconciler_manager
404
+
405
+ # Version of the deployed reconciler container in root-reconciler pod
406
+ # Corresponds to the JSON property `rootReconciler`
407
+ # @return [String]
408
+ attr_accessor :root_reconciler
409
+
410
+ # Version of the deployed syncer pod
411
+ # Corresponds to the JSON property `syncer`
412
+ # @return [String]
413
+ attr_accessor :syncer
414
+
415
+ def initialize(**args)
416
+ update!(**args)
417
+ end
418
+
419
+ # Update properties of this object
420
+ def update!(**args)
421
+ @git_sync = args[:git_sync] if args.key?(:git_sync)
422
+ @importer = args[:importer] if args.key?(:importer)
423
+ @monitor = args[:monitor] if args.key?(:monitor)
424
+ @reconciler_manager = args[:reconciler_manager] if args.key?(:reconciler_manager)
425
+ @root_reconciler = args[:root_reconciler] if args.key?(:root_reconciler)
426
+ @syncer = args[:syncer] if args.key?(:syncer)
427
+ end
428
+ end
429
+
430
+ # Model for a config file in the git repo with an associated Sync error
431
+ class ConfigManagementErrorResource
432
+ include Google::Apis::Core::Hashable
433
+
434
+ # A Kubernetes object's GVK
435
+ # Corresponds to the JSON property `resourceGvk`
436
+ # @return [Google::Apis::GkehubV1::ConfigManagementGroupVersionKind]
437
+ attr_accessor :resource_gvk
438
+
439
+ # Metadata name of the resource that is causing an error
440
+ # Corresponds to the JSON property `resourceName`
441
+ # @return [String]
442
+ attr_accessor :resource_name
443
+
444
+ # Namespace of the resource that is causing an error
445
+ # Corresponds to the JSON property `resourceNamespace`
446
+ # @return [String]
447
+ attr_accessor :resource_namespace
448
+
449
+ # Path in the git repo of the erroneous config
450
+ # Corresponds to the JSON property `sourcePath`
451
+ # @return [String]
452
+ attr_accessor :source_path
453
+
454
+ def initialize(**args)
455
+ update!(**args)
456
+ end
457
+
458
+ # Update properties of this object
459
+ def update!(**args)
460
+ @resource_gvk = args[:resource_gvk] if args.key?(:resource_gvk)
461
+ @resource_name = args[:resource_name] if args.key?(:resource_name)
462
+ @resource_namespace = args[:resource_namespace] if args.key?(:resource_namespace)
463
+ @source_path = args[:source_path] if args.key?(:source_path)
464
+ end
465
+ end
466
+
467
+ # State of Policy Controller installation.
468
+ class ConfigManagementGatekeeperDeploymentState
469
+ include Google::Apis::Core::Hashable
470
+
471
+ # Status of gatekeeper-audit deployment.
472
+ # Corresponds to the JSON property `gatekeeperAudit`
473
+ # @return [String]
474
+ attr_accessor :gatekeeper_audit
475
+
476
+ # Status of gatekeeper-controller-manager pod.
477
+ # Corresponds to the JSON property `gatekeeperControllerManagerState`
478
+ # @return [String]
479
+ attr_accessor :gatekeeper_controller_manager_state
480
+
481
+ def initialize(**args)
482
+ update!(**args)
483
+ end
484
+
485
+ # Update properties of this object
486
+ def update!(**args)
487
+ @gatekeeper_audit = args[:gatekeeper_audit] if args.key?(:gatekeeper_audit)
488
+ @gatekeeper_controller_manager_state = args[:gatekeeper_controller_manager_state] if args.key?(:gatekeeper_controller_manager_state)
489
+ end
490
+ end
491
+
492
+ # Git repo configuration for a single cluster.
493
+ class ConfigManagementGitConfig
494
+ include Google::Apis::Core::Hashable
495
+
496
+ # The GCP Service Account Email used for auth when secret_type is
497
+ # gcpServiceAccount.
498
+ # Corresponds to the JSON property `gcpServiceAccountEmail`
499
+ # @return [String]
500
+ attr_accessor :gcp_service_account_email
501
+
502
+ # URL for the HTTPS proxy to be used when communicating with the Git repo.
503
+ # Corresponds to the JSON property `httpsProxy`
504
+ # @return [String]
505
+ attr_accessor :https_proxy
506
+
507
+ # The path within the Git repository that represents the top level of the repo
508
+ # to sync. Default: the root directory of the repository.
509
+ # Corresponds to the JSON property `policyDir`
510
+ # @return [String]
511
+ attr_accessor :policy_dir
512
+
513
+ # Type of secret configured for access to the Git repo.
514
+ # Corresponds to the JSON property `secretType`
515
+ # @return [String]
516
+ attr_accessor :secret_type
517
+
518
+ # The branch of the repository to sync from. Default: master.
519
+ # Corresponds to the JSON property `syncBranch`
520
+ # @return [String]
521
+ attr_accessor :sync_branch
522
+
523
+ # The URL of the Git repository to use as the source of truth.
524
+ # Corresponds to the JSON property `syncRepo`
525
+ # @return [String]
526
+ attr_accessor :sync_repo
527
+
528
+ # Git revision (tag or hash) to check out. Default HEAD.
529
+ # Corresponds to the JSON property `syncRev`
530
+ # @return [String]
531
+ attr_accessor :sync_rev
532
+
533
+ # Period in seconds between consecutive syncs. Default: 15.
534
+ # Corresponds to the JSON property `syncWaitSecs`
535
+ # @return [Fixnum]
536
+ attr_accessor :sync_wait_secs
537
+
538
+ def initialize(**args)
539
+ update!(**args)
540
+ end
541
+
542
+ # Update properties of this object
543
+ def update!(**args)
544
+ @gcp_service_account_email = args[:gcp_service_account_email] if args.key?(:gcp_service_account_email)
545
+ @https_proxy = args[:https_proxy] if args.key?(:https_proxy)
546
+ @policy_dir = args[:policy_dir] if args.key?(:policy_dir)
547
+ @secret_type = args[:secret_type] if args.key?(:secret_type)
548
+ @sync_branch = args[:sync_branch] if args.key?(:sync_branch)
549
+ @sync_repo = args[:sync_repo] if args.key?(:sync_repo)
550
+ @sync_rev = args[:sync_rev] if args.key?(:sync_rev)
551
+ @sync_wait_secs = args[:sync_wait_secs] if args.key?(:sync_wait_secs)
552
+ end
553
+ end
554
+
555
+ # A Kubernetes object's GVK
556
+ class ConfigManagementGroupVersionKind
557
+ include Google::Apis::Core::Hashable
558
+
559
+ # Kubernetes Group
560
+ # Corresponds to the JSON property `group`
561
+ # @return [String]
562
+ attr_accessor :group
563
+
564
+ # Kubernetes Kind
565
+ # Corresponds to the JSON property `kind`
566
+ # @return [String]
567
+ attr_accessor :kind
568
+
569
+ # Kubernetes Version
570
+ # Corresponds to the JSON property `version`
571
+ # @return [String]
572
+ attr_accessor :version
573
+
574
+ def initialize(**args)
575
+ update!(**args)
576
+ end
577
+
578
+ # Update properties of this object
579
+ def update!(**args)
580
+ @group = args[:group] if args.key?(:group)
581
+ @kind = args[:kind] if args.key?(:kind)
582
+ @version = args[:version] if args.key?(:version)
583
+ end
584
+ end
585
+
586
+ # Configuration for Hierarchy Controller
587
+ class ConfigManagementHierarchyControllerConfig
588
+ include Google::Apis::Core::Hashable
589
+
590
+ # Whether hierarchical resource quota is enabled in this cluster.
591
+ # Corresponds to the JSON property `enableHierarchicalResourceQuota`
592
+ # @return [Boolean]
593
+ attr_accessor :enable_hierarchical_resource_quota
594
+ alias_method :enable_hierarchical_resource_quota?, :enable_hierarchical_resource_quota
595
+
596
+ # Whether pod tree labels are enabled in this cluster.
597
+ # Corresponds to the JSON property `enablePodTreeLabels`
598
+ # @return [Boolean]
599
+ attr_accessor :enable_pod_tree_labels
600
+ alias_method :enable_pod_tree_labels?, :enable_pod_tree_labels
601
+
602
+ # Whether Hierarchy Controller is enabled in this cluster.
603
+ # Corresponds to the JSON property `enabled`
604
+ # @return [Boolean]
605
+ attr_accessor :enabled
606
+ alias_method :enabled?, :enabled
607
+
608
+ def initialize(**args)
609
+ update!(**args)
610
+ end
611
+
612
+ # Update properties of this object
613
+ def update!(**args)
614
+ @enable_hierarchical_resource_quota = args[:enable_hierarchical_resource_quota] if args.key?(:enable_hierarchical_resource_quota)
615
+ @enable_pod_tree_labels = args[:enable_pod_tree_labels] if args.key?(:enable_pod_tree_labels)
616
+ @enabled = args[:enabled] if args.key?(:enabled)
617
+ end
618
+ end
619
+
620
+ # Deployment state for Hierarchy Controller
621
+ class ConfigManagementHierarchyControllerDeploymentState
622
+ include Google::Apis::Core::Hashable
623
+
624
+ # The deployment state for Hierarchy Controller extension (e.g. v0.7.0-hc.1)
625
+ # Corresponds to the JSON property `extension`
626
+ # @return [String]
627
+ attr_accessor :extension
628
+
629
+ # The deployment state for open source HNC (e.g. v0.7.0-hc.0)
630
+ # Corresponds to the JSON property `hnc`
631
+ # @return [String]
632
+ attr_accessor :hnc
633
+
634
+ def initialize(**args)
635
+ update!(**args)
636
+ end
637
+
638
+ # Update properties of this object
639
+ def update!(**args)
640
+ @extension = args[:extension] if args.key?(:extension)
641
+ @hnc = args[:hnc] if args.key?(:hnc)
642
+ end
643
+ end
644
+
645
+ # State for Hierarchy Controller
646
+ class ConfigManagementHierarchyControllerState
647
+ include Google::Apis::Core::Hashable
648
+
649
+ # Deployment state for Hierarchy Controller
650
+ # Corresponds to the JSON property `state`
651
+ # @return [Google::Apis::GkehubV1::ConfigManagementHierarchyControllerDeploymentState]
652
+ attr_accessor :state
653
+
654
+ # Version for Hierarchy Controller
655
+ # Corresponds to the JSON property `version`
656
+ # @return [Google::Apis::GkehubV1::ConfigManagementHierarchyControllerVersion]
657
+ attr_accessor :version
658
+
659
+ def initialize(**args)
660
+ update!(**args)
661
+ end
662
+
663
+ # Update properties of this object
664
+ def update!(**args)
665
+ @state = args[:state] if args.key?(:state)
666
+ @version = args[:version] if args.key?(:version)
667
+ end
668
+ end
669
+
670
+ # Version for Hierarchy Controller
671
+ class ConfigManagementHierarchyControllerVersion
672
+ include Google::Apis::Core::Hashable
673
+
674
+ # Version for Hierarchy Controller extension
675
+ # Corresponds to the JSON property `extension`
676
+ # @return [String]
677
+ attr_accessor :extension
678
+
679
+ # Version for open source HNC
680
+ # Corresponds to the JSON property `hnc`
681
+ # @return [String]
682
+ attr_accessor :hnc
683
+
684
+ def initialize(**args)
685
+ update!(**args)
686
+ end
687
+
688
+ # Update properties of this object
689
+ def update!(**args)
690
+ @extension = args[:extension] if args.key?(:extension)
691
+ @hnc = args[:hnc] if args.key?(:hnc)
692
+ end
693
+ end
694
+
695
+ # Errors pertaining to the installation of ACM
696
+ class ConfigManagementInstallError
697
+ include Google::Apis::Core::Hashable
698
+
699
+ # A string representing the user facing error message
700
+ # Corresponds to the JSON property `errorMessage`
701
+ # @return [String]
702
+ attr_accessor :error_message
703
+
704
+ def initialize(**args)
705
+ update!(**args)
706
+ end
707
+
708
+ # Update properties of this object
709
+ def update!(**args)
710
+ @error_message = args[:error_message] if args.key?(:error_message)
711
+ end
712
+ end
713
+
714
+ # **Anthos Config Management**: Configuration for a single cluster. Intended to
715
+ # parallel the ConfigManagement CR.
716
+ class ConfigManagementMembershipSpec
717
+ include Google::Apis::Core::Hashable
718
+
719
+ # Configuration for Config Sync
720
+ # Corresponds to the JSON property `configSync`
721
+ # @return [Google::Apis::GkehubV1::ConfigManagementConfigSync]
722
+ attr_accessor :config_sync
723
+
724
+ # Configuration for Hierarchy Controller
725
+ # Corresponds to the JSON property `hierarchyController`
726
+ # @return [Google::Apis::GkehubV1::ConfigManagementHierarchyControllerConfig]
727
+ attr_accessor :hierarchy_controller
728
+
729
+ # Configuration for Policy Controller
730
+ # Corresponds to the JSON property `policyController`
731
+ # @return [Google::Apis::GkehubV1::ConfigManagementPolicyController]
732
+ attr_accessor :policy_controller
733
+
734
+ # Version of ACM installed.
735
+ # Corresponds to the JSON property `version`
736
+ # @return [String]
737
+ attr_accessor :version
738
+
739
+ def initialize(**args)
740
+ update!(**args)
741
+ end
742
+
743
+ # Update properties of this object
744
+ def update!(**args)
745
+ @config_sync = args[:config_sync] if args.key?(:config_sync)
746
+ @hierarchy_controller = args[:hierarchy_controller] if args.key?(:hierarchy_controller)
747
+ @policy_controller = args[:policy_controller] if args.key?(:policy_controller)
748
+ @version = args[:version] if args.key?(:version)
749
+ end
750
+ end
751
+
752
+ # **Anthos Config Management**: State for a single cluster.
753
+ class ConfigManagementMembershipState
754
+ include Google::Apis::Core::Hashable
755
+
756
+ # The user-defined name for the cluster used by ClusterSelectors to group
757
+ # clusters together. This should match Membership's membership_name, unless the
758
+ # user installed ACM on the cluster manually prior to enabling the ACM hub
759
+ # feature. Unique within a Anthos Config Management installation.
760
+ # Corresponds to the JSON property `clusterName`
761
+ # @return [String]
762
+ attr_accessor :cluster_name
763
+
764
+ # State information for ConfigSync
765
+ # Corresponds to the JSON property `configSyncState`
766
+ # @return [Google::Apis::GkehubV1::ConfigManagementConfigSyncState]
767
+ attr_accessor :config_sync_state
768
+
769
+ # State for Hierarchy Controller
770
+ # Corresponds to the JSON property `hierarchyControllerState`
771
+ # @return [Google::Apis::GkehubV1::ConfigManagementHierarchyControllerState]
772
+ attr_accessor :hierarchy_controller_state
773
+
774
+ # **Anthos Config Management**: Configuration for a single cluster. Intended to
775
+ # parallel the ConfigManagement CR.
776
+ # Corresponds to the JSON property `membershipSpec`
777
+ # @return [Google::Apis::GkehubV1::ConfigManagementMembershipSpec]
778
+ attr_accessor :membership_spec
779
+
780
+ # State information for an ACM's Operator
781
+ # Corresponds to the JSON property `operatorState`
782
+ # @return [Google::Apis::GkehubV1::ConfigManagementOperatorState]
783
+ attr_accessor :operator_state
784
+
785
+ # State for PolicyControllerState.
786
+ # Corresponds to the JSON property `policyControllerState`
787
+ # @return [Google::Apis::GkehubV1::ConfigManagementPolicyControllerState]
788
+ attr_accessor :policy_controller_state
789
+
790
+ def initialize(**args)
791
+ update!(**args)
792
+ end
793
+
794
+ # Update properties of this object
795
+ def update!(**args)
796
+ @cluster_name = args[:cluster_name] if args.key?(:cluster_name)
797
+ @config_sync_state = args[:config_sync_state] if args.key?(:config_sync_state)
798
+ @hierarchy_controller_state = args[:hierarchy_controller_state] if args.key?(:hierarchy_controller_state)
799
+ @membership_spec = args[:membership_spec] if args.key?(:membership_spec)
800
+ @operator_state = args[:operator_state] if args.key?(:operator_state)
801
+ @policy_controller_state = args[:policy_controller_state] if args.key?(:policy_controller_state)
802
+ end
803
+ end
804
+
805
+ # State information for an ACM's Operator
806
+ class ConfigManagementOperatorState
807
+ include Google::Apis::Core::Hashable
808
+
809
+ # The state of the Operator's deployment
810
+ # Corresponds to the JSON property `deploymentState`
811
+ # @return [String]
812
+ attr_accessor :deployment_state
813
+
814
+ # Install errors.
815
+ # Corresponds to the JSON property `errors`
816
+ # @return [Array<Google::Apis::GkehubV1::ConfigManagementInstallError>]
817
+ attr_accessor :errors
818
+
819
+ # The semenatic version number of the operator
820
+ # Corresponds to the JSON property `version`
821
+ # @return [String]
822
+ attr_accessor :version
823
+
824
+ def initialize(**args)
825
+ update!(**args)
826
+ end
827
+
828
+ # Update properties of this object
829
+ def update!(**args)
830
+ @deployment_state = args[:deployment_state] if args.key?(:deployment_state)
831
+ @errors = args[:errors] if args.key?(:errors)
832
+ @version = args[:version] if args.key?(:version)
833
+ end
834
+ end
835
+
836
+ # Configuration for Policy Controller
837
+ class ConfigManagementPolicyController
838
+ include Google::Apis::Core::Hashable
839
+
840
+ # Sets the interval for Policy Controller Audit Scans (in seconds). When set to
841
+ # 0, this disables audit functionality altogether.
842
+ # Corresponds to the JSON property `auditIntervalSeconds`
843
+ # @return [Fixnum]
844
+ attr_accessor :audit_interval_seconds
845
+
846
+ # Enables the installation of Policy Controller. If false, the rest of
847
+ # PolicyController fields take no effect.
848
+ # Corresponds to the JSON property `enabled`
849
+ # @return [Boolean]
850
+ attr_accessor :enabled
851
+ alias_method :enabled?, :enabled
852
+
853
+ # The set of namespaces that are excluded from Policy Controller checks.
854
+ # Namespaces do not need to currently exist on the cluster.
855
+ # Corresponds to the JSON property `exemptableNamespaces`
856
+ # @return [Array<String>]
857
+ attr_accessor :exemptable_namespaces
858
+
859
+ # Logs all denies and dry run failures.
860
+ # Corresponds to the JSON property `logDeniesEnabled`
861
+ # @return [Boolean]
862
+ attr_accessor :log_denies_enabled
863
+ alias_method :log_denies_enabled?, :log_denies_enabled
864
+
865
+ # Enables the ability to use Constraint Templates that reference to objects
866
+ # other than the object currently being evaluated.
867
+ # Corresponds to the JSON property `referentialRulesEnabled`
868
+ # @return [Boolean]
869
+ attr_accessor :referential_rules_enabled
870
+ alias_method :referential_rules_enabled?, :referential_rules_enabled
871
+
872
+ # Installs the default template library along with Policy Controller.
873
+ # Corresponds to the JSON property `templateLibraryInstalled`
874
+ # @return [Boolean]
875
+ attr_accessor :template_library_installed
876
+ alias_method :template_library_installed?, :template_library_installed
877
+
878
+ def initialize(**args)
879
+ update!(**args)
880
+ end
881
+
882
+ # Update properties of this object
883
+ def update!(**args)
884
+ @audit_interval_seconds = args[:audit_interval_seconds] if args.key?(:audit_interval_seconds)
885
+ @enabled = args[:enabled] if args.key?(:enabled)
886
+ @exemptable_namespaces = args[:exemptable_namespaces] if args.key?(:exemptable_namespaces)
887
+ @log_denies_enabled = args[:log_denies_enabled] if args.key?(:log_denies_enabled)
888
+ @referential_rules_enabled = args[:referential_rules_enabled] if args.key?(:referential_rules_enabled)
889
+ @template_library_installed = args[:template_library_installed] if args.key?(:template_library_installed)
890
+ end
891
+ end
892
+
893
+ # State for PolicyControllerState.
894
+ class ConfigManagementPolicyControllerState
895
+ include Google::Apis::Core::Hashable
896
+
897
+ # State of Policy Controller installation.
898
+ # Corresponds to the JSON property `deploymentState`
899
+ # @return [Google::Apis::GkehubV1::ConfigManagementGatekeeperDeploymentState]
900
+ attr_accessor :deployment_state
901
+
902
+ # The build version of Gatekeeper Policy Controller is using.
903
+ # Corresponds to the JSON property `version`
904
+ # @return [Google::Apis::GkehubV1::ConfigManagementPolicyControllerVersion]
905
+ attr_accessor :version
906
+
907
+ def initialize(**args)
908
+ update!(**args)
909
+ end
910
+
911
+ # Update properties of this object
912
+ def update!(**args)
913
+ @deployment_state = args[:deployment_state] if args.key?(:deployment_state)
914
+ @version = args[:version] if args.key?(:version)
915
+ end
916
+ end
917
+
918
+ # The build version of Gatekeeper Policy Controller is using.
919
+ class ConfigManagementPolicyControllerVersion
920
+ include Google::Apis::Core::Hashable
921
+
922
+ # The gatekeeper image tag that is composed of ACM version, git tag, build
923
+ # number.
924
+ # Corresponds to the JSON property `version`
925
+ # @return [String]
926
+ attr_accessor :version
927
+
928
+ def initialize(**args)
929
+ update!(**args)
930
+ end
931
+
932
+ # Update properties of this object
933
+ def update!(**args)
934
+ @version = args[:version] if args.key?(:version)
935
+ end
936
+ end
937
+
938
+ # An ACM created error representing a problem syncing configurations
939
+ class ConfigManagementSyncError
940
+ include Google::Apis::Core::Hashable
941
+
942
+ # An ACM defined error code
943
+ # Corresponds to the JSON property `code`
944
+ # @return [String]
945
+ attr_accessor :code
946
+
947
+ # A description of the error
948
+ # Corresponds to the JSON property `errorMessage`
949
+ # @return [String]
950
+ attr_accessor :error_message
951
+
952
+ # A list of config(s) associated with the error, if any
953
+ # Corresponds to the JSON property `errorResources`
954
+ # @return [Array<Google::Apis::GkehubV1::ConfigManagementErrorResource>]
955
+ attr_accessor :error_resources
956
+
957
+ def initialize(**args)
958
+ update!(**args)
959
+ end
960
+
961
+ # Update properties of this object
962
+ def update!(**args)
963
+ @code = args[:code] if args.key?(:code)
964
+ @error_message = args[:error_message] if args.key?(:error_message)
965
+ @error_resources = args[:error_resources] if args.key?(:error_resources)
966
+ end
967
+ end
968
+
969
+ # State indicating an ACM's progress syncing configurations to a cluster
970
+ class ConfigManagementSyncState
971
+ include Google::Apis::Core::Hashable
972
+
973
+ # Sync status code
974
+ # Corresponds to the JSON property `code`
975
+ # @return [String]
976
+ attr_accessor :code
977
+
978
+ # A list of errors resulting from problematic configs. This list will be
979
+ # truncated after 100 errors, although it is unlikely for that many errors to
980
+ # simultaneously exist.
981
+ # Corresponds to the JSON property `errors`
982
+ # @return [Array<Google::Apis::GkehubV1::ConfigManagementSyncError>]
983
+ attr_accessor :errors
984
+
985
+ # Token indicating the state of the importer.
986
+ # Corresponds to the JSON property `importToken`
987
+ # @return [String]
988
+ attr_accessor :import_token
989
+
990
+ # Timestamp of when ACM last successfully synced the repo The time format is
991
+ # specified in https://golang.org/pkg/time/#Time.String This field is being
992
+ # deprecated. Use last_sync_time instead. (b/154053616)
993
+ # Corresponds to the JSON property `lastSync`
994
+ # @return [String]
995
+ attr_accessor :last_sync
996
+
997
+ # Timestamp type of when ACM last successfully synced the repo
998
+ # Corresponds to the JSON property `lastSyncTime`
999
+ # @return [String]
1000
+ attr_accessor :last_sync_time
1001
+
1002
+ # Token indicating the state of the repo.
1003
+ # Corresponds to the JSON property `sourceToken`
1004
+ # @return [String]
1005
+ attr_accessor :source_token
1006
+
1007
+ # Token indicating the state of the syncer.
1008
+ # Corresponds to the JSON property `syncToken`
1009
+ # @return [String]
1010
+ attr_accessor :sync_token
1011
+
1012
+ def initialize(**args)
1013
+ update!(**args)
1014
+ end
1015
+
1016
+ # Update properties of this object
1017
+ def update!(**args)
1018
+ @code = args[:code] if args.key?(:code)
1019
+ @errors = args[:errors] if args.key?(:errors)
1020
+ @import_token = args[:import_token] if args.key?(:import_token)
1021
+ @last_sync = args[:last_sync] if args.key?(:last_sync)
1022
+ @last_sync_time = args[:last_sync_time] if args.key?(:last_sync_time)
1023
+ @source_token = args[:source_token] if args.key?(:source_token)
1024
+ @sync_token = args[:sync_token] if args.key?(:sync_token)
1025
+ end
1026
+ end
1027
+
234
1028
  # ConnectAgentResource represents a Kubernetes resource manifest for Connect
235
1029
  # Agent deployment.
236
1030
  class ConnectAgentResource
@@ -329,6 +1123,151 @@ module Google
329
1123
  end
330
1124
  end
331
1125
 
1126
+ # Feature represents the settings and status of any Hub Feature.
1127
+ class Feature
1128
+ include Google::Apis::Core::Hashable
1129
+
1130
+ # Output only. When the Feature resource was created.
1131
+ # Corresponds to the JSON property `createTime`
1132
+ # @return [String]
1133
+ attr_accessor :create_time
1134
+
1135
+ # Output only. When the Feature resource was deleted.
1136
+ # Corresponds to the JSON property `deleteTime`
1137
+ # @return [String]
1138
+ attr_accessor :delete_time
1139
+
1140
+ # GCP labels for this Feature.
1141
+ # Corresponds to the JSON property `labels`
1142
+ # @return [Hash<String,String>]
1143
+ attr_accessor :labels
1144
+
1145
+ # Optional. Membership-specific configuration for this Feature. If this Feature
1146
+ # does not support any per-Membership configuration, this field may be unused.
1147
+ # The keys indicate which Membership the configuration is for, in the form:
1148
+ # projects/`p`/locations/`l`/memberships/`m` Where `p` is the project, `l` is a
1149
+ # valid location and `m` is a valid Membership in this project at that location.
1150
+ # `p` WILL match the Feature's project. `p` will always be returned as the
1151
+ # project number, but the project ID is also accepted during input. If the same
1152
+ # Membership is specified in the map twice (using the project ID form, and the
1153
+ # project number form), exactly ONE of the entries will be saved, with no
1154
+ # guarantees as to which. For this reason, it is recommended the same format be
1155
+ # used for all entries when mutating a Feature.
1156
+ # Corresponds to the JSON property `membershipSpecs`
1157
+ # @return [Hash<String,Google::Apis::GkehubV1::MembershipFeatureSpec>]
1158
+ attr_accessor :membership_specs
1159
+
1160
+ # Output only. Membership-specific Feature status. If this Feature does report
1161
+ # any per-Membership status, this field may be unused. The keys indicate which
1162
+ # Membership the state is for, in the form: projects/`p`/locations/`l`/
1163
+ # memberships/`m` Where `p` is the project number, `l` is a valid location and `
1164
+ # m` is a valid Membership in this project at that location. `p` MUST match the
1165
+ # Feature's project number.
1166
+ # Corresponds to the JSON property `membershipStates`
1167
+ # @return [Hash<String,Google::Apis::GkehubV1::MembershipFeatureState>]
1168
+ attr_accessor :membership_states
1169
+
1170
+ # Output only. The full, unique name of this Feature resource in the format `
1171
+ # projects/*/locations/*/features/*`.
1172
+ # Corresponds to the JSON property `name`
1173
+ # @return [String]
1174
+ attr_accessor :name
1175
+
1176
+ # FeatureResourceState describes the state of a Feature *resource* in the GkeHub
1177
+ # API. See `FeatureState` for the "running state" of the Feature in the Hub and
1178
+ # across Memberships.
1179
+ # Corresponds to the JSON property `resourceState`
1180
+ # @return [Google::Apis::GkehubV1::FeatureResourceState]
1181
+ attr_accessor :resource_state
1182
+
1183
+ # CommonFeatureSpec contains Hub-wide configuration information
1184
+ # Corresponds to the JSON property `spec`
1185
+ # @return [Google::Apis::GkehubV1::CommonFeatureSpec]
1186
+ attr_accessor :spec
1187
+
1188
+ # CommonFeatureState contains Hub-wide Feature status information.
1189
+ # Corresponds to the JSON property `state`
1190
+ # @return [Google::Apis::GkehubV1::CommonFeatureState]
1191
+ attr_accessor :state
1192
+
1193
+ # Output only. When the Feature resource was last updated.
1194
+ # Corresponds to the JSON property `updateTime`
1195
+ # @return [String]
1196
+ attr_accessor :update_time
1197
+
1198
+ def initialize(**args)
1199
+ update!(**args)
1200
+ end
1201
+
1202
+ # Update properties of this object
1203
+ def update!(**args)
1204
+ @create_time = args[:create_time] if args.key?(:create_time)
1205
+ @delete_time = args[:delete_time] if args.key?(:delete_time)
1206
+ @labels = args[:labels] if args.key?(:labels)
1207
+ @membership_specs = args[:membership_specs] if args.key?(:membership_specs)
1208
+ @membership_states = args[:membership_states] if args.key?(:membership_states)
1209
+ @name = args[:name] if args.key?(:name)
1210
+ @resource_state = args[:resource_state] if args.key?(:resource_state)
1211
+ @spec = args[:spec] if args.key?(:spec)
1212
+ @state = args[:state] if args.key?(:state)
1213
+ @update_time = args[:update_time] if args.key?(:update_time)
1214
+ end
1215
+ end
1216
+
1217
+ # FeatureResourceState describes the state of a Feature *resource* in the GkeHub
1218
+ # API. See `FeatureState` for the "running state" of the Feature in the Hub and
1219
+ # across Memberships.
1220
+ class FeatureResourceState
1221
+ include Google::Apis::Core::Hashable
1222
+
1223
+ # The current state of the Feature resource in the Hub API.
1224
+ # Corresponds to the JSON property `state`
1225
+ # @return [String]
1226
+ attr_accessor :state
1227
+
1228
+ def initialize(**args)
1229
+ update!(**args)
1230
+ end
1231
+
1232
+ # Update properties of this object
1233
+ def update!(**args)
1234
+ @state = args[:state] if args.key?(:state)
1235
+ end
1236
+ end
1237
+
1238
+ # FeatureState describes the high-level state of a Feature. It may be used to
1239
+ # describe a Feature's state at the environ-level, or per-membershop, depending
1240
+ # on the context.
1241
+ class FeatureState
1242
+ include Google::Apis::Core::Hashable
1243
+
1244
+ # The high-level, machine-readable status of this Feature.
1245
+ # Corresponds to the JSON property `code`
1246
+ # @return [String]
1247
+ attr_accessor :code
1248
+
1249
+ # A human-readable description of the current status.
1250
+ # Corresponds to the JSON property `description`
1251
+ # @return [String]
1252
+ attr_accessor :description
1253
+
1254
+ # The time this status and any related Feature-specific details were updated.
1255
+ # Corresponds to the JSON property `updateTime`
1256
+ # @return [String]
1257
+ attr_accessor :update_time
1258
+
1259
+ def initialize(**args)
1260
+ update!(**args)
1261
+ end
1262
+
1263
+ # Update properties of this object
1264
+ def update!(**args)
1265
+ @code = args[:code] if args.key?(:code)
1266
+ @description = args[:description] if args.key?(:description)
1267
+ @update_time = args[:update_time] if args.key?(:update_time)
1268
+ end
1269
+ end
1270
+
332
1271
  # GenerateConnectManifestResponse contains manifest information for installing/
333
1272
  # upgrading a Connect agent.
334
1273
  class GenerateConnectManifestResponse
@@ -466,6 +1405,32 @@ module Google
466
1405
  end
467
1406
  end
468
1407
 
1408
+ # Response message for the `GkeHub.ListFeatures` method.
1409
+ class ListFeaturesResponse
1410
+ include Google::Apis::Core::Hashable
1411
+
1412
+ # A token to request the next page of resources from the `ListFeatures` method.
1413
+ # The value of an empty string means that there are no more resources to return.
1414
+ # Corresponds to the JSON property `nextPageToken`
1415
+ # @return [String]
1416
+ attr_accessor :next_page_token
1417
+
1418
+ # The list of matching Features
1419
+ # Corresponds to the JSON property `resources`
1420
+ # @return [Array<Google::Apis::GkehubV1::Feature>]
1421
+ attr_accessor :resources
1422
+
1423
+ def initialize(**args)
1424
+ update!(**args)
1425
+ end
1426
+
1427
+ # Update properties of this object
1428
+ def update!(**args)
1429
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1430
+ @resources = args[:resources] if args.key?(:resources)
1431
+ end
1432
+ end
1433
+
469
1434
  # The response message for Locations.ListLocations.
470
1435
  class ListLocationsResponse
471
1436
  include Google::Apis::Core::Hashable
@@ -726,6 +1691,55 @@ module Google
726
1691
  end
727
1692
  end
728
1693
 
1694
+ # MembershipFeatureSpec contains configuration information for a single
1695
+ # Membership.
1696
+ class MembershipFeatureSpec
1697
+ include Google::Apis::Core::Hashable
1698
+
1699
+ # **Anthos Config Management**: Configuration for a single cluster. Intended to
1700
+ # parallel the ConfigManagement CR.
1701
+ # Corresponds to the JSON property `configmanagement`
1702
+ # @return [Google::Apis::GkehubV1::ConfigManagementMembershipSpec]
1703
+ attr_accessor :configmanagement
1704
+
1705
+ def initialize(**args)
1706
+ update!(**args)
1707
+ end
1708
+
1709
+ # Update properties of this object
1710
+ def update!(**args)
1711
+ @configmanagement = args[:configmanagement] if args.key?(:configmanagement)
1712
+ end
1713
+ end
1714
+
1715
+ # MembershipFeatureState contains Feature status information for a single
1716
+ # Membership.
1717
+ class MembershipFeatureState
1718
+ include Google::Apis::Core::Hashable
1719
+
1720
+ # **Anthos Config Management**: State for a single cluster.
1721
+ # Corresponds to the JSON property `configmanagement`
1722
+ # @return [Google::Apis::GkehubV1::ConfigManagementMembershipState]
1723
+ attr_accessor :configmanagement
1724
+
1725
+ # FeatureState describes the high-level state of a Feature. It may be used to
1726
+ # describe a Feature's state at the environ-level, or per-membershop, depending
1727
+ # on the context.
1728
+ # Corresponds to the JSON property `state`
1729
+ # @return [Google::Apis::GkehubV1::FeatureState]
1730
+ attr_accessor :state
1731
+
1732
+ def initialize(**args)
1733
+ update!(**args)
1734
+ end
1735
+
1736
+ # Update properties of this object
1737
+ def update!(**args)
1738
+ @configmanagement = args[:configmanagement] if args.key?(:configmanagement)
1739
+ @state = args[:state] if args.key?(:state)
1740
+ end
1741
+ end
1742
+
729
1743
  # MembershipState describes the state of a Membership resource.
730
1744
  class MembershipState
731
1745
  include Google::Apis::Core::Hashable
@@ -745,6 +1759,27 @@ module Google
745
1759
  end
746
1760
  end
747
1761
 
1762
+ # **Multi-cluster Ingress**: The configuration for the MultiClusterIngress
1763
+ # feature.
1764
+ class MultiClusterIngressFeatureSpec
1765
+ include Google::Apis::Core::Hashable
1766
+
1767
+ # Fully-qualified Membership name which hosts the MultiClusterIngress CRD.
1768
+ # Example: `projects/foo-proj/locations/global/memberships/bar`
1769
+ # Corresponds to the JSON property `configMembership`
1770
+ # @return [String]
1771
+ attr_accessor :config_membership
1772
+
1773
+ def initialize(**args)
1774
+ update!(**args)
1775
+ end
1776
+
1777
+ # Update properties of this object
1778
+ def update!(**args)
1779
+ @config_membership = args[:config_membership] if args.key?(:config_membership)
1780
+ end
1781
+ end
1782
+
748
1783
  # This resource represents a long-running operation that is the result of a
749
1784
  # network API call.
750
1785
  class Operation