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.



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

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)


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

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)


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

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


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

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)


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

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



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

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)


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

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)


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

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)


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

def template_library_installed
  @template_library_installed
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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