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.



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

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)


1027
1028
1029
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1027

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)


1033
1034
1035
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1033

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


1040
1041
1042
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1040

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)


1045
1046
1047
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1045

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



1053
1054
1055
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1053

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)


1059
1060
1061
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1059

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)


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

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)


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

def template_library_installed
  @template_library_installed
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
# File 'lib/google/apis/gkehub_v1/classes.rb', line 1080

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