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.



1185
1186
1187
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1185

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)


1137
1138
1139
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1137

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)


1143
1144
1145
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1143

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>)


1150
1151
1152
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1150

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)


1155
1156
1157
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1155

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



1163
1164
1165
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1163

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)


1169
1170
1171
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1169

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)


1176
1177
1178
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1176

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)


1182
1183
1184
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1182

def template_library_installed
  @template_library_installed
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1190

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