Class: Google::Apis::GkehubV1alpha::ConfigManagementConfigSync

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



992
993
994
# File 'lib/google/apis/gkehub_v1alpha/classes.rb', line 992

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

Instance Attribute Details

#allow_vertical_scaleBoolean Also known as: allow_vertical_scale?

Set to true to allow the vertical scaling. Defaults to false which disallows vertical scaling. This field is deprecated. Corresponds to the JSON property allowVerticalScale

Returns:

  • (Boolean)


938
939
940
# File 'lib/google/apis/gkehub_v1alpha/classes.rb', line 938

def allow_vertical_scale
  @allow_vertical_scale
end

#enabledBoolean Also known as: enabled?

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 and Managed Config Sync is disabled, all other ConfigSync fields will be ignored, ConfigSync resources will be deleted. Setting this field to false while enabling Managed Config Sync is invalid. If omitted, ConfigSync resources will be managed if: * the git or oci field is present; or * Managed Config Sync is enabled (i.e., managed.enabled is true). Corresponds to the JSON property enabled

Returns:

  • (Boolean)


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

def enabled
  @enabled
end

#gitGoogle::Apis::GkehubV1alpha::ConfigManagementGitConfig

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



956
957
958
# File 'lib/google/apis/gkehub_v1alpha/classes.rb', line 956

def git
  @git
end

#managedGoogle::Apis::GkehubV1alpha::ConfigManagementManaged

Configuration for Managed Config Sync. Corresponds to the JSON property managed



961
962
963
# File 'lib/google/apis/gkehub_v1alpha/classes.rb', line 961

def managed
  @managed
end

#metrics_gcp_service_account_emailString

The Email of the GCP 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 binded to the GSA. This field is required when Managed Config Sync is enabled. Corresponds to the JSON property metricsGcpServiceAccountEmail

Returns:

  • (String)


971
972
973
# File 'lib/google/apis/gkehub_v1alpha/classes.rb', line 971

def 
  @metrics_gcp_service_account_email
end

#ociGoogle::Apis::GkehubV1alpha::ConfigManagementOciConfig

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



976
977
978
# File 'lib/google/apis/gkehub_v1alpha/classes.rb', line 976

def oci
  @oci
end

#prevent_driftBoolean Also known as: prevent_drift?

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)


983
984
985
# File 'lib/google/apis/gkehub_v1alpha/classes.rb', line 983

def prevent_drift
  @prevent_drift
end

#source_formatString

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

Returns:

  • (String)


990
991
992
# File 'lib/google/apis/gkehub_v1alpha/classes.rb', line 990

def source_format
  @source_format
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



997
998
999
1000
1001
1002
1003
1004
1005
1006
# File 'lib/google/apis/gkehub_v1alpha/classes.rb', line 997

def update!(**args)
  @allow_vertical_scale = args[:allow_vertical_scale] if args.key?(:allow_vertical_scale)
  @enabled = args[:enabled] if args.key?(:enabled)
  @git = args[:git] if args.key?(:git)
  @managed = args[:managed] if args.key?(:managed)
  @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)
end