Class: Google::Apis::GkehubV2::ConfigManagementConfigSync

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/gkehub_v2/classes.rb,
lib/google/apis/gkehub_v2/representations.rb,
lib/google/apis/gkehub_v2/representations.rb

Overview

Configuration for Config Sync

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ConfigManagementConfigSync

Returns a new instance of ConfigManagementConfigSync.



377
378
379
# File 'lib/google/apis/gkehub_v2/classes.rb', line 377

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#deployment_overridesArray<Google::Apis::GkehubV2::ConfigManagementDeploymentOverride>

Optional. Configuration for deployment overrides. Applies only to Config Sync deployments with containers that are not a root or namespace reconciler: reconciler-manager, otel-collector, resource-group-controller-manager, admission-webhook. To override a root or namespace reconciler, use the rootsync or reposync fields at https://docs.cloud.google.com/kubernetes-engine/ config-sync/docs/reference/rootsync-reposync-fields#override-resources instead. Corresponds to the JSON property deploymentOverrides



318
319
320
# File 'lib/google/apis/gkehub_v2/classes.rb', line 318

def deployment_overrides
  @deployment_overrides
end

#enabledBoolean Also known as: enabled?

Optional. Enables the installation of Config Sync. If set to true, the Feature will manage Config Sync resources, and apply the other ConfigSync fields if they exist. If set to false, the Feature will ignore all other ConfigSync fields and delete the Config Sync resources. If omitted, ConfigSync is considered enabled if the git or oci field is present. Corresponds to the JSON property enabled

Returns:

  • (Boolean)


327
328
329
# File 'lib/google/apis/gkehub_v2/classes.rb', line 327

def enabled
  @enabled
end

#gitGoogle::Apis::GkehubV2::ConfigManagementGitConfig

Git repo configuration for a single cluster. Corresponds to the JSON property git



333
334
335
# File 'lib/google/apis/gkehub_v2/classes.rb', line 333

def git
  @git
end

#metrics_gcp_service_account_emailString

Optional. The Email of the Google Cloud Service Account (GSA) used for exporting Config Sync metrics to Cloud Monitoring and Cloud Monarch when Workload Identity is enabled. The GSA should have the Monitoring Metric Writer (roles/monitoring.metricWriter) IAM role. The Kubernetes ServiceAccount default in the namespace config-management-monitoring should be bound to the GSA. Deprecated: If Workload Identity Federation for GKE is enabled, Google Cloud Service Account is no longer needed for exporting Config Sync metrics: https://cloud.google.com/kubernetes-engine/enterprise/config-sync/ docs/how-to/monitor-config-sync-cloud-monitoring#custom-monitoring. Corresponds to the JSON property metricsGcpServiceAccountEmail

Returns:

  • (String)


346
347
348
# File 'lib/google/apis/gkehub_v2/classes.rb', line 346

def 
  @metrics_gcp_service_account_email
end

#ociGoogle::Apis::GkehubV2::ConfigManagementOciConfig

OCI repo configuration for a single cluster. Corresponds to the JSON property oci



351
352
353
# File 'lib/google/apis/gkehub_v2/classes.rb', line 351

def oci
  @oci
end

#prevent_driftBoolean Also known as: prevent_drift?

Optional. Set to true to enable the Config Sync admission webhook to prevent drifts. If set to false, disables the Config Sync admission webhook and does not prevent drifts. Defaults to false. See https://docs.cloud.google.com/ kubernetes-engine/config-sync/docs/how-to/prevent-config-drift for details. Corresponds to the JSON property preventDrift

Returns:

  • (Boolean)


359
360
361
# File 'lib/google/apis/gkehub_v2/classes.rb', line 359

def prevent_drift
  @prevent_drift
end

#source_formatString

Optional. Specifies whether the Config Sync repo is in hierarchical or unstructured mode. Defaults to hierarchical. See https://docs.cloud.google. com/kubernetes-engine/config-sync/docs/concepts/configs#organize-configs for an explanation. Corresponds to the JSON property sourceFormat

Returns:

  • (String)


368
369
370
# File 'lib/google/apis/gkehub_v2/classes.rb', line 368

def source_format
  @source_format
end

#stop_syncingBoolean Also known as: stop_syncing?

Optional. Set to true to stop syncing configs for a single cluster. Default to false. Corresponds to the JSON property stopSyncing

Returns:

  • (Boolean)


374
375
376
# File 'lib/google/apis/gkehub_v2/classes.rb', line 374

def stop_syncing
  @stop_syncing
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



382
383
384
385
386
387
388
389
390
391
# File 'lib/google/apis/gkehub_v2/classes.rb', line 382

def update!(**args)
  @deployment_overrides = args[:deployment_overrides] if args.key?(:deployment_overrides)
  @enabled = args[:enabled] if args.key?(:enabled)
  @git = args[:git] if args.key?(:git)
  @metrics_gcp_service_account_email = args[:metrics_gcp_service_account_email] if args.key?(:metrics_gcp_service_account_email)
  @oci = args[:oci] if args.key?(:oci)
  @prevent_drift = args[:prevent_drift] if args.key?(:prevent_drift)
  @source_format = args[:source_format] if args.key?(:source_format)
  @stop_syncing = args[:stop_syncing] if args.key?(:stop_syncing)
end