Class: Google::Apis::GkehubV1::ConfigManagementConfigSync

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/gkehub_v1/classes.rb,
lib/google/apis/gkehub_v1/representations.rb,
lib/google/apis/gkehub_v1/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.



953
954
955
# File 'lib/google/apis/gkehub_v1/classes.rb', line 953

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

Instance Attribute Details

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

Optional. Configuration for deployment overrides. Corresponds to the JSON property deploymentOverrides



897
898
899
# File 'lib/google/apis/gkehub_v1/classes.rb', line 897

def deployment_overrides
  @deployment_overrides
end

#enabledBoolean Also known as: enabled?

Optional. Enables the installation of ConfigSync. If set to true, ConfigSync resources will be created and the other ConfigSync fields will be applied if exist. If set to false, all other ConfigSync fields will be ignored, ConfigSync resources will be deleted. If omitted, ConfigSync resources will be managed depends on the presence of the git or oci field. Corresponds to the JSON property enabled

Returns:

  • (Boolean)


906
907
908
# File 'lib/google/apis/gkehub_v1/classes.rb', line 906

def enabled
  @enabled
end

#gitGoogle::Apis::GkehubV1::ConfigManagementGitConfig

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



912
913
914
# File 'lib/google/apis/gkehub_v1/classes.rb', line 912

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)


925
926
927
# File 'lib/google/apis/gkehub_v1/classes.rb', line 925

def 
  @metrics_gcp_service_account_email
end

#ociGoogle::Apis::GkehubV1::ConfigManagementOciConfig

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



930
931
932
# File 'lib/google/apis/gkehub_v1/classes.rb', line 930

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. Corresponds to the JSON property preventDrift

Returns:

  • (Boolean)


937
938
939
# File 'lib/google/apis/gkehub_v1/classes.rb', line 937

def prevent_drift
  @prevent_drift
end

#source_formatString

Optional. Specifies whether the Config Sync Repo is in "hierarchical" or " unstructured" mode. Corresponds to the JSON property sourceFormat

Returns:

  • (String)


944
945
946
# File 'lib/google/apis/gkehub_v1/classes.rb', line 944

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)


950
951
952
# File 'lib/google/apis/gkehub_v1/classes.rb', line 950

def stop_syncing
  @stop_syncing
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



958
959
960
961
962
963
964
965
966
967
# File 'lib/google/apis/gkehub_v1/classes.rb', line 958

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