Class: Google::Apis::GkehubV1::ConfigManagementPolicyController

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 Policy Controller

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ConfigManagementPolicyController

Returns a new instance of ConfigManagementPolicyController.



1115
1116
1117
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1115

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

Instance Attribute Details

#audit_interval_secondsFixnum

Sets the interval for Policy Controller Audit Scans (in seconds). When set to 0, this disables audit functionality altogether. Corresponds to the JSON property auditIntervalSeconds

Returns:

  • (Fixnum)


1067
1068
1069
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1067

def audit_interval_seconds
  @audit_interval_seconds
end

#enabledBoolean Also known as: enabled?

Enables the installation of Policy Controller. If false, the rest of PolicyController fields take no effect. Corresponds to the JSON property enabled

Returns:

  • (Boolean)


1073
1074
1075
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1073

def enabled
  @enabled
end

#exemptable_namespacesArray<String>

The set of namespaces that are excluded from Policy Controller checks. Namespaces do not need to currently exist on the cluster. Corresponds to the JSON property exemptableNamespaces

Returns:

  • (Array<String>)


1080
1081
1082
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1080

def exemptable_namespaces
  @exemptable_namespaces
end

#log_denies_enabledBoolean Also known as: log_denies_enabled?

Logs all denies and dry run failures. Corresponds to the JSON property logDeniesEnabled

Returns:

  • (Boolean)


1085
1086
1087
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1085

def log_denies_enabled
  @log_denies_enabled
end

#monitoringGoogle::Apis::GkehubV1::ConfigManagementPolicyControllerMonitoring

PolicyControllerMonitoring specifies the backends Policy Controller should export metrics to. For example, to specify metrics should be exported to Cloud Monitoring and Prometheus, specify backends: ["cloudmonitoring", "prometheus"] Corresponds to the JSON property monitoring



1093
1094
1095
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1093

def monitoring
  @monitoring
end

#mutation_enabledBoolean Also known as: mutation_enabled?

Enable or disable mutation in policy controller. If true, mutation CRDs, webhook and controller deployment will be deployed to the cluster. Corresponds to the JSON property mutationEnabled

Returns:

  • (Boolean)


1099
1100
1101
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1099

def mutation_enabled
  @mutation_enabled
end

#referential_rules_enabledBoolean Also known as: referential_rules_enabled?

Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated. Corresponds to the JSON property referentialRulesEnabled

Returns:

  • (Boolean)


1106
1107
1108
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1106

def referential_rules_enabled
  @referential_rules_enabled
end

#template_library_installedBoolean Also known as: template_library_installed?

Installs the default template library along with Policy Controller. Corresponds to the JSON property templateLibraryInstalled

Returns:

  • (Boolean)


1112
1113
1114
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1112

def template_library_installed
  @template_library_installed
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1120

def update!(**args)
  @audit_interval_seconds = args[:audit_interval_seconds] if args.key?(:audit_interval_seconds)
  @enabled = args[:enabled] if args.key?(:enabled)
  @exemptable_namespaces = args[:exemptable_namespaces] if args.key?(:exemptable_namespaces)
  @log_denies_enabled = args[:log_denies_enabled] if args.key?(:log_denies_enabled)
  @monitoring = args[:monitoring] if args.key?(:monitoring)
  @mutation_enabled = args[:mutation_enabled] if args.key?(:mutation_enabled)
  @referential_rules_enabled = args[:referential_rules_enabled] if args.key?(:referential_rules_enabled)
  @template_library_installed = args[:template_library_installed] if args.key?(:template_library_installed)
end