Class: Google::Apis::GkehubV1beta::ConfigManagementPolicyController

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



1156
1157
1158
# File 'lib/google/apis/gkehub_v1beta/classes.rb', line 1156

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)


1108
1109
1110
# File 'lib/google/apis/gkehub_v1beta/classes.rb', line 1108

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)


1114
1115
1116
# File 'lib/google/apis/gkehub_v1beta/classes.rb', line 1114

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


1121
1122
1123
# File 'lib/google/apis/gkehub_v1beta/classes.rb', line 1121

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)


1126
1127
1128
# File 'lib/google/apis/gkehub_v1beta/classes.rb', line 1126

def log_denies_enabled
  @log_denies_enabled
end

#monitoringGoogle::Apis::GkehubV1beta::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



1134
1135
1136
# File 'lib/google/apis/gkehub_v1beta/classes.rb', line 1134

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)


1140
1141
1142
# File 'lib/google/apis/gkehub_v1beta/classes.rb', line 1140

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)


1147
1148
1149
# File 'lib/google/apis/gkehub_v1beta/classes.rb', line 1147

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)


1153
1154
1155
# File 'lib/google/apis/gkehub_v1beta/classes.rb', line 1153

def template_library_installed
  @template_library_installed
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
# File 'lib/google/apis/gkehub_v1beta/classes.rb', line 1161

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