Documentation
¶
Index ¶
- func RenderChart(release, namespace string, values *Values) ([]*unstructured.Unstructured, error)
- type Values
- type ValuesAudit
- type ValuesAuth
- type ValuesAuthSecretKeys
- type ValuesBackup
- type ValuesBackupCronjob
- type ValuesBackupCronjobAnnotations
- type ValuesBackupCronjobContainerSecurityContext
- type ValuesBackupCronjobContainerSecurityContextCapabilities
- type ValuesBackupCronjobContainerSecurityContextSeccompProfile
- type ValuesBackupCronjobLabels
- type ValuesBackupCronjobNodeSelector
- type ValuesBackupCronjobPodSecurityContext
- type ValuesBackupCronjobStorage
- type ValuesBackupCronjobStorageAnnotations
- type ValuesBackupCronjobStorageVolumeClaimTemplates
- type ValuesBackupCronjobStorageVolumeClaimTemplatesSelector
- type ValuesCommonAnnotations
- type ValuesCommonLabels
- type ValuesContainerPorts
- type ValuesDiagnosticMode
- type ValuesGlobal
- type ValuesGlobalPostgresql
- type ValuesGlobalPostgresqlAuth
- type ValuesGlobalPostgresqlAuthSecretKeys
- type ValuesGlobalPostgresqlService
- type ValuesGlobalPostgresqlServicePorts
- type ValuesImage
- type ValuesLdap
- type ValuesLdapTls
- type ValuesMetrics
- type ValuesMetricsCollectors
- type ValuesMetricsContainerPorts
- type ValuesMetricsContainerSecurityContext
- type ValuesMetricsContainerSecurityContextCapabilities
- type ValuesMetricsContainerSecurityContextSeccompProfile
- type ValuesMetricsCustomLivenessProbe
- type ValuesMetricsCustomMetrics
- type ValuesMetricsCustomReadinessProbe
- type ValuesMetricsCustomStartupProbe
- type ValuesMetricsImage
- type ValuesMetricsLivenessProbe
- type ValuesMetricsPrometheusRule
- type ValuesMetricsPrometheusRuleLabels
- type ValuesMetricsReadinessProbe
- type ValuesMetricsResources
- type ValuesMetricsService
- type ValuesMetricsServiceMonitor
- type ValuesMetricsServiceMonitorLabels
- type ValuesMetricsServiceMonitorSelector
- type ValuesMetricsServicePorts
- type ValuesMetricsStartupProbe
- type ValuesPrimary
- type ValuesPrimaryAffinity
- type ValuesPrimaryAnnotations
- type ValuesPrimaryContainerSecurityContext
- type ValuesPrimaryContainerSecurityContextCapabilities
- type ValuesPrimaryContainerSecurityContextSeccompProfile
- type ValuesPrimaryCustomLivenessProbe
- type ValuesPrimaryCustomReadinessProbe
- type ValuesPrimaryCustomStartupProbe
- type ValuesPrimaryExtraPodSpec
- type ValuesPrimaryInitdb
- type ValuesPrimaryInitdbScripts
- type ValuesPrimaryLabels
- type ValuesPrimaryLifecycleHooks
- type ValuesPrimaryLivenessProbe
- type ValuesPrimaryNetworkPolicy
- type ValuesPrimaryNodeAffinityPreset
- type ValuesPrimaryNodeSelector
- type ValuesPrimaryPersistence
- type ValuesPrimaryPersistenceAnnotations
- type ValuesPrimaryPersistenceDataSource
- type ValuesPrimaryPersistenceLabels
- type ValuesPrimaryPersistenceSelector
- type ValuesPrimaryPersistentVolumeClaimRetentionPolicy
- type ValuesPrimaryPodAnnotations
- type ValuesPrimaryPodLabels
- type ValuesPrimaryPodSecurityContext
- type ValuesPrimaryReadinessProbe
- type ValuesPrimaryResources
- type ValuesPrimaryService
- type ValuesPrimaryServiceAnnotations
- type ValuesPrimaryServiceHeadless
- type ValuesPrimaryServiceHeadlessAnnotations
- type ValuesPrimaryServiceNodePorts
- type ValuesPrimaryServicePorts
- type ValuesPrimaryServiceSessionAffinityConfig
- type ValuesPrimaryStandby
- type ValuesPrimaryStartupProbe
- type ValuesPrimaryUpdateStrategy
- type ValuesPrimaryUpdateStrategyRollingUpdate
- type ValuesPsp
- type ValuesRbac
- type ValuesReadReplicas
- type ValuesReadReplicasAffinity
- type ValuesReadReplicasAnnotations
- type ValuesReadReplicasContainerSecurityContext
- type ValuesReadReplicasContainerSecurityContextCapabilities
- type ValuesReadReplicasContainerSecurityContextSeccompProfile
- type ValuesReadReplicasCustomLivenessProbe
- type ValuesReadReplicasCustomReadinessProbe
- type ValuesReadReplicasCustomStartupProbe
- type ValuesReadReplicasExtraPodSpec
- type ValuesReadReplicasLabels
- type ValuesReadReplicasLifecycleHooks
- type ValuesReadReplicasLivenessProbe
- type ValuesReadReplicasNetworkPolicy
- type ValuesReadReplicasNodeAffinityPreset
- type ValuesReadReplicasNodeSelector
- type ValuesReadReplicasPersistence
- type ValuesReadReplicasPersistenceAnnotations
- type ValuesReadReplicasPersistenceDataSource
- type ValuesReadReplicasPersistenceLabels
- type ValuesReadReplicasPersistenceSelector
- type ValuesReadReplicasPersistentVolumeClaimRetentionPolicy
- type ValuesReadReplicasPodAnnotations
- type ValuesReadReplicasPodLabels
- type ValuesReadReplicasPodSecurityContext
- type ValuesReadReplicasReadinessProbe
- type ValuesReadReplicasResources
- type ValuesReadReplicasService
- type ValuesReadReplicasServiceAnnotations
- type ValuesReadReplicasServiceHeadless
- type ValuesReadReplicasServiceHeadlessAnnotations
- type ValuesReadReplicasServiceNodePorts
- type ValuesReadReplicasServicePorts
- type ValuesReadReplicasServiceSessionAffinityConfig
- type ValuesReadReplicasStartupProbe
- type ValuesReadReplicasUpdateStrategy
- type ValuesReadReplicasUpdateStrategyRollingUpdate
- type ValuesReplication
- type ValuesServiceAccount
- type ValuesServiceAccountAnnotations
- type ValuesServiceBindings
- type ValuesShmVolume
- type ValuesTls
- type ValuesVolumePermissions
- type ValuesVolumePermissionsContainerSecurityContext
- type ValuesVolumePermissionsContainerSecurityContextSeccompProfile
- type ValuesVolumePermissionsImage
- type ValuesVolumePermissionsResources
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RenderChart ¶
func RenderChart(release, namespace string, values *Values) ([]*unstructured.Unstructured, error)
Types ¶
type Values ¶
type Values struct {
// PostgreSQL architecture (`standalone` or `replication`)
Architecture string `json:"architecture,omitempty" yaml:"architecture,omitempty" mapstructure:"architecture,omitempty"`
// Audit corresponds to the JSON schema field "audit".
Audit *ValuesAudit `json:"audit,omitempty" yaml:"audit,omitempty" mapstructure:"audit,omitempty"`
// Auth corresponds to the JSON schema field "auth".
Auth *ValuesAuth `json:"auth,omitempty" yaml:"auth,omitempty" mapstructure:"auth,omitempty"`
// Backup corresponds to the JSON schema field "backup".
Backup *ValuesBackup `json:"backup,omitempty" yaml:"backup,omitempty" mapstructure:"backup,omitempty"`
// Kubernetes Cluster Domain
ClusterDomain string `json:"clusterDomain,omitempty" yaml:"clusterDomain,omitempty" mapstructure:"clusterDomain,omitempty"`
// Add annotations to all the deployed resources
CommonAnnotations ValuesCommonAnnotations `json:"commonAnnotations,omitempty" yaml:"commonAnnotations,omitempty" mapstructure:"commonAnnotations,omitempty"`
// Add labels to all the deployed resources
CommonLabels ValuesCommonLabels `json:"commonLabels,omitempty" yaml:"commonLabels,omitempty" mapstructure:"commonLabels,omitempty"`
// ContainerPorts corresponds to the JSON schema field "containerPorts".
ContainerPorts *ValuesContainerPorts `json:"containerPorts,omitempty" yaml:"containerPorts,omitempty" mapstructure:"containerPorts,omitempty"`
// DiagnosticMode corresponds to the JSON schema field "diagnosticMode".
DiagnosticMode *ValuesDiagnosticMode `json:"diagnosticMode,omitempty" yaml:"diagnosticMode,omitempty" mapstructure:"diagnosticMode,omitempty"`
// Array of extra objects to deploy with the release (evaluated as a template)
ExtraDeploy []interface{} `json:"extraDeploy,omitempty" yaml:"extraDeploy,omitempty" mapstructure:"extraDeploy,omitempty"`
// String to fully override common.names.fullname template
FullnameOverride string `json:"fullnameOverride,omitempty" yaml:"fullnameOverride,omitempty" mapstructure:"fullnameOverride,omitempty"`
// Global corresponds to the JSON schema field "global".
Global *ValuesGlobal `json:"global,omitempty" yaml:"global,omitempty" mapstructure:"global,omitempty"`
// Image corresponds to the JSON schema field "image".
Image *ValuesImage `json:"image,omitempty" yaml:"image,omitempty" mapstructure:"image,omitempty"`
// Override Kubernetes version
KubeVersion string `json:"kubeVersion,omitempty" yaml:"kubeVersion,omitempty" mapstructure:"kubeVersion,omitempty"`
// Ldap corresponds to the JSON schema field "ldap".
Ldap *ValuesLdap `json:"ldap,omitempty" yaml:"ldap,omitempty" mapstructure:"ldap,omitempty"`
// Metrics corresponds to the JSON schema field "metrics".
Metrics *ValuesMetrics `json:"metrics,omitempty" yaml:"metrics,omitempty" mapstructure:"metrics,omitempty"`
// String to partially override common.names.fullname template (will maintain the
// release name)
NameOverride string `json:"nameOverride,omitempty" yaml:"nameOverride,omitempty" mapstructure:"nameOverride,omitempty"`
// PostgreSQL data dir folder
PostgresqlDataDir string `json:"postgresqlDataDir,omitempty" yaml:"postgresqlDataDir,omitempty" mapstructure:"postgresqlDataDir,omitempty"`
PostgresqlSharedPreloadLibraries string `` /* 157-byte string literal not displayed */
// Primary corresponds to the JSON schema field "primary".
Primary *ValuesPrimary `json:"primary,omitempty" yaml:"primary,omitempty" mapstructure:"primary,omitempty"`
// Psp corresponds to the JSON schema field "psp".
Psp *ValuesPsp `json:"psp,omitempty" yaml:"psp,omitempty" mapstructure:"psp,omitempty"`
// Rbac corresponds to the JSON schema field "rbac".
Rbac *ValuesRbac `json:"rbac,omitempty" yaml:"rbac,omitempty" mapstructure:"rbac,omitempty"`
// ReadReplicas corresponds to the JSON schema field "readReplicas".
ReadReplicas *ValuesReadReplicas `json:"readReplicas,omitempty" yaml:"readReplicas,omitempty" mapstructure:"readReplicas,omitempty"`
// Replication corresponds to the JSON schema field "replication".
Replication *ValuesReplication `json:"replication,omitempty" yaml:"replication,omitempty" mapstructure:"replication,omitempty"`
// ServiceAccount corresponds to the JSON schema field "serviceAccount".
ServiceAccount *ValuesServiceAccount `json:"serviceAccount,omitempty" yaml:"serviceAccount,omitempty" mapstructure:"serviceAccount,omitempty"`
// ServiceBindings corresponds to the JSON schema field "serviceBindings".
ServiceBindings *ValuesServiceBindings `json:"serviceBindings,omitempty" yaml:"serviceBindings,omitempty" mapstructure:"serviceBindings,omitempty"`
// ShmVolume corresponds to the JSON schema field "shmVolume".
ShmVolume *ValuesShmVolume `json:"shmVolume,omitempty" yaml:"shmVolume,omitempty" mapstructure:"shmVolume,omitempty"`
// Tls corresponds to the JSON schema field "tls".
Tls *ValuesTls `json:"tls,omitempty" yaml:"tls,omitempty" mapstructure:"tls,omitempty"`
// VolumePermissions corresponds to the JSON schema field "volumePermissions".
VolumePermissions *ValuesVolumePermissions `json:"volumePermissions,omitempty" yaml:"volumePermissions,omitempty" mapstructure:"volumePermissions,omitempty"`
}
type ValuesAudit ¶
type ValuesAudit struct {
// Message log level to share with the user
ClientMinMessages string `json:"clientMinMessages,omitempty" yaml:"clientMinMessages,omitempty" mapstructure:"clientMinMessages,omitempty"`
// Add client log-in operations to the log file
LogConnections bool `json:"logConnections,omitempty" yaml:"logConnections,omitempty" mapstructure:"logConnections,omitempty"`
// Add client log-outs operations to the log file
LogDisconnections bool `json:"logDisconnections,omitempty" yaml:"logDisconnections,omitempty" mapstructure:"logDisconnections,omitempty"`
// Log client hostnames
LogHostname bool `json:"logHostname,omitempty" yaml:"logHostname,omitempty" mapstructure:"logHostname,omitempty"`
// Template for log line prefix (default if not set)
LogLinePrefix string `json:"logLinePrefix,omitempty" yaml:"logLinePrefix,omitempty" mapstructure:"logLinePrefix,omitempty"`
// Timezone for the log timestamps
LogTimezone string `json:"logTimezone,omitempty" yaml:"logTimezone,omitempty" mapstructure:"logTimezone,omitempty"`
// Add operations to log using the pgAudit extension
PgAuditLog string `json:"pgAuditLog,omitempty" yaml:"pgAuditLog,omitempty" mapstructure:"pgAuditLog,omitempty"`
// Log catalog using pgAudit
PgAuditLogCatalog string `json:"pgAuditLogCatalog,omitempty" yaml:"pgAuditLogCatalog,omitempty" mapstructure:"pgAuditLogCatalog,omitempty"`
}
type ValuesAuth ¶
type ValuesAuth struct {
// Name for a custom database to create
Database string `json:"database,omitempty" yaml:"database,omitempty" mapstructure:"database,omitempty"`
// Assign a password to the "postgres" admin user. Otherwise, remote access will
// be blocked for this user
EnablePostgresUser bool `json:"enablePostgresUser,omitempty" yaml:"enablePostgresUser,omitempty" mapstructure:"enablePostgresUser,omitempty"`
// Name of existing secret to use for PostgreSQL credentials.
// `auth.postgresPassword`, `auth.password`, and `auth.replicationPassword` will
// be ignored and picked up from this secret. The secret might also contains the
// key `ldap-password` if LDAP is enabled. `ldap.bind_password` will be ignored
// and picked from this secret in this case.
ExistingSecret string `json:"existingSecret,omitempty" yaml:"existingSecret,omitempty" mapstructure:"existingSecret,omitempty"`
// Password for the custom user to create. Ignored if `auth.existingSecret` is
// provided
Password string `json:"password,omitempty" yaml:"password,omitempty" mapstructure:"password,omitempty"`
// Password for the "postgres" admin user. Ignored if `auth.existingSecret` is
// provided
PostgresPassword string `json:"postgresPassword,omitempty" yaml:"postgresPassword,omitempty" mapstructure:"postgresPassword,omitempty"`
// Password for the replication user. Ignored if `auth.existingSecret` is provided
ReplicationPassword string `json:"replicationPassword,omitempty" yaml:"replicationPassword,omitempty" mapstructure:"replicationPassword,omitempty"`
// Name of the replication user
ReplicationUsername string `json:"replicationUsername,omitempty" yaml:"replicationUsername,omitempty" mapstructure:"replicationUsername,omitempty"`
// SecretKeys corresponds to the JSON schema field "secretKeys".
SecretKeys *ValuesAuthSecretKeys `json:"secretKeys,omitempty" yaml:"secretKeys,omitempty" mapstructure:"secretKeys,omitempty"`
// Mount credentials as a files instead of using an environment variable
UsePasswordFiles bool `json:"usePasswordFiles,omitempty" yaml:"usePasswordFiles,omitempty" mapstructure:"usePasswordFiles,omitempty"`
// Name for a custom user to create
Username string `json:"username,omitempty" yaml:"username,omitempty" mapstructure:"username,omitempty"`
}
type ValuesAuthSecretKeys ¶
type ValuesAuthSecretKeys struct {
// Name of key in existing secret to use for PostgreSQL credentials. Only used
// when `auth.existingSecret` is set.
AdminPasswordKey string `json:"adminPasswordKey,omitempty" yaml:"adminPasswordKey,omitempty" mapstructure:"adminPasswordKey,omitempty"`
// Name of key in existing secret to use for PostgreSQL credentials. Only used
// when `auth.existingSecret` is set.
ReplicationPasswordKey string `` /* 127-byte string literal not displayed */
// Name of key in existing secret to use for PostgreSQL credentials. Only used
// when `auth.existingSecret` is set.
UserPasswordKey string `json:"userPasswordKey,omitempty" yaml:"userPasswordKey,omitempty" mapstructure:"userPasswordKey,omitempty"`
}
type ValuesBackup ¶
type ValuesBackup struct {
// Cronjob corresponds to the JSON schema field "cronjob".
Cronjob *ValuesBackupCronjob `json:"cronjob,omitempty" yaml:"cronjob,omitempty" mapstructure:"cronjob,omitempty"`
// Enable the logical dump of the database "regularly"
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
}
type ValuesBackupCronjob ¶
type ValuesBackupCronjob struct {
// Set the cronjob annotations
Annotations ValuesBackupCronjobAnnotations `json:"annotations,omitempty" yaml:"annotations,omitempty" mapstructure:"annotations,omitempty"`
// Set backup container's command to run
Command []string `json:"command,omitempty" yaml:"command,omitempty" mapstructure:"command,omitempty"`
// Set the cronjob parameter concurrencyPolicy
ConcurrencyPolicy string `json:"concurrencyPolicy,omitempty" yaml:"concurrencyPolicy,omitempty" mapstructure:"concurrencyPolicy,omitempty"`
// ContainerSecurityContext corresponds to the JSON schema field
// "containerSecurityContext".
ContainerSecurityContext *ValuesBackupCronjobContainerSecurityContext `` /* 133-byte string literal not displayed */
// Set the cronjob parameter failedJobsHistoryLimit
FailedJobsHistoryLimit float64 `` /* 127-byte string literal not displayed */
// Set the cronjob labels
Labels ValuesBackupCronjobLabels `json:"labels,omitempty" yaml:"labels,omitempty" mapstructure:"labels,omitempty"`
// Node labels for PostgreSQL backup CronJob pod assignment
NodeSelector ValuesBackupCronjobNodeSelector `json:"nodeSelector,omitempty" yaml:"nodeSelector,omitempty" mapstructure:"nodeSelector,omitempty"`
// PodSecurityContext corresponds to the JSON schema field "podSecurityContext".
PodSecurityContext *ValuesBackupCronjobPodSecurityContext `json:"podSecurityContext,omitempty" yaml:"podSecurityContext,omitempty" mapstructure:"podSecurityContext,omitempty"`
// Set the cronjob parameter restartPolicy
RestartPolicy string `json:"restartPolicy,omitempty" yaml:"restartPolicy,omitempty" mapstructure:"restartPolicy,omitempty"`
// Set the cronjob parameter schedule
Schedule string `json:"schedule,omitempty" yaml:"schedule,omitempty" mapstructure:"schedule,omitempty"`
// Set the cronjob parameter startingDeadlineSeconds
StartingDeadlineSeconds string `` /* 130-byte string literal not displayed */
// Storage corresponds to the JSON schema field "storage".
Storage *ValuesBackupCronjobStorage `json:"storage,omitempty" yaml:"storage,omitempty" mapstructure:"storage,omitempty"`
// Set the cronjob parameter successfulJobsHistoryLimit
SuccessfulJobsHistoryLimit float64 `` /* 139-byte string literal not displayed */
// Set the cronjob parameter timeZone
TimeZone string `json:"timeZone,omitempty" yaml:"timeZone,omitempty" mapstructure:"timeZone,omitempty"`
// Set the cronjob parameter ttlSecondsAfterFinished
TtlSecondsAfterFinished string `` /* 130-byte string literal not displayed */
}
type ValuesBackupCronjobAnnotations ¶
type ValuesBackupCronjobAnnotations map[string]interface{}
Set the cronjob annotations
type ValuesBackupCronjobContainerSecurityContext ¶
type ValuesBackupCronjobContainerSecurityContext struct {
// Set container's Security Context allowPrivilegeEscalation
AllowPrivilegeEscalation bool `` /* 133-byte string literal not displayed */
// Capabilities corresponds to the JSON schema field "capabilities".
Capabilities *ValuesBackupCronjobContainerSecurityContextCapabilities `json:"capabilities,omitempty" yaml:"capabilities,omitempty" mapstructure:"capabilities,omitempty"`
// Enabled containers' Security Context
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Set container's Security Context privileged
Privileged bool `json:"privileged,omitempty" yaml:"privileged,omitempty" mapstructure:"privileged,omitempty"`
// Set container's Security Context readOnlyRootFilesystem
ReadOnlyRootFilesystem bool `` /* 127-byte string literal not displayed */
// Set containers' Security Context runAsGroup
RunAsGroup float64 `json:"runAsGroup,omitempty" yaml:"runAsGroup,omitempty" mapstructure:"runAsGroup,omitempty"`
// Set container's Security Context runAsNonRoot
RunAsNonRoot bool `json:"runAsNonRoot,omitempty" yaml:"runAsNonRoot,omitempty" mapstructure:"runAsNonRoot,omitempty"`
// Set containers' Security Context runAsUser
RunAsUser float64 `json:"runAsUser,omitempty" yaml:"runAsUser,omitempty" mapstructure:"runAsUser,omitempty"`
// SeccompProfile corresponds to the JSON schema field "seccompProfile".
SeccompProfile *ValuesBackupCronjobContainerSecurityContextSeccompProfile `json:"seccompProfile,omitempty" yaml:"seccompProfile,omitempty" mapstructure:"seccompProfile,omitempty"`
}
type ValuesBackupCronjobContainerSecurityContextCapabilities ¶
type ValuesBackupCronjobContainerSecurityContextCapabilities struct {
// List of capabilities to be dropped
Drop []string `json:"drop,omitempty" yaml:"drop,omitempty" mapstructure:"drop,omitempty"`
}
type ValuesBackupCronjobContainerSecurityContextSeccompProfile ¶
type ValuesBackupCronjobContainerSecurityContextSeccompProfile struct {
// Set container's Security Context seccomp profile
Type string `json:"type,omitempty" yaml:"type,omitempty" mapstructure:"type,omitempty"`
}
type ValuesBackupCronjobLabels ¶
type ValuesBackupCronjobLabels map[string]interface{}
Set the cronjob labels
type ValuesBackupCronjobNodeSelector ¶
type ValuesBackupCronjobNodeSelector map[string]interface{}
Node labels for PostgreSQL backup CronJob pod assignment
type ValuesBackupCronjobPodSecurityContext ¶
type ValuesBackupCronjobPodSecurityContext struct {
// Enable PodSecurityContext for CronJob/Backup
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Group ID for the CronJob
FsGroup float64 `json:"fsGroup,omitempty" yaml:"fsGroup,omitempty" mapstructure:"fsGroup,omitempty"`
// Set filesystem group change policy
FsGroupChangePolicy string `json:"fsGroupChangePolicy,omitempty" yaml:"fsGroupChangePolicy,omitempty" mapstructure:"fsGroupChangePolicy,omitempty"`
// Set filesystem extra groups
SupplementalGroups []interface{} `json:"supplementalGroups,omitempty" yaml:"supplementalGroups,omitempty" mapstructure:"supplementalGroups,omitempty"`
// Set kernel settings using the sysctl interface
Sysctls []interface{} `json:"sysctls,omitempty" yaml:"sysctls,omitempty" mapstructure:"sysctls,omitempty"`
}
type ValuesBackupCronjobStorage ¶
type ValuesBackupCronjobStorage struct {
// PV Access Mode
AccessModes []string `json:"accessModes,omitempty" yaml:"accessModes,omitempty" mapstructure:"accessModes,omitempty"`
// PVC annotations
Annotations ValuesBackupCronjobStorageAnnotations `json:"annotations,omitempty" yaml:"annotations,omitempty" mapstructure:"annotations,omitempty"`
// Provide an existing `PersistentVolumeClaim` (only when
// `architecture=standalone`)
ExistingClaim string `json:"existingClaim,omitempty" yaml:"existingClaim,omitempty" mapstructure:"existingClaim,omitempty"`
// Path to mount the volume at
MountPath string `json:"mountPath,omitempty" yaml:"mountPath,omitempty" mapstructure:"mountPath,omitempty"`
// Setting it to "keep" to avoid removing PVCs during a helm delete operation.
// Leaving it empty will delete PVCs after the chart deleted
ResourcePolicy string `json:"resourcePolicy,omitempty" yaml:"resourcePolicy,omitempty" mapstructure:"resourcePolicy,omitempty"`
// PVC Storage Request for the backup data volume
Size string `json:"size,omitempty" yaml:"size,omitempty" mapstructure:"size,omitempty"`
// PVC Storage Class for the backup data volume
StorageClass string `json:"storageClass,omitempty" yaml:"storageClass,omitempty" mapstructure:"storageClass,omitempty"`
// Subdirectory of the volume to mount at
SubPath string `json:"subPath,omitempty" yaml:"subPath,omitempty" mapstructure:"subPath,omitempty"`
// VolumeClaimTemplates corresponds to the JSON schema field
// "volumeClaimTemplates".
VolumeClaimTemplates *ValuesBackupCronjobStorageVolumeClaimTemplates `json:"volumeClaimTemplates,omitempty" yaml:"volumeClaimTemplates,omitempty" mapstructure:"volumeClaimTemplates,omitempty"`
}
type ValuesBackupCronjobStorageAnnotations ¶
type ValuesBackupCronjobStorageAnnotations map[string]interface{}
PVC annotations
type ValuesBackupCronjobStorageVolumeClaimTemplates ¶
type ValuesBackupCronjobStorageVolumeClaimTemplates struct {
// A label query over volumes to consider for binding (e.g. when using local
// volumes)
Selector ValuesBackupCronjobStorageVolumeClaimTemplatesSelector `json:"selector,omitempty" yaml:"selector,omitempty" mapstructure:"selector,omitempty"`
}
type ValuesBackupCronjobStorageVolumeClaimTemplatesSelector ¶
type ValuesBackupCronjobStorageVolumeClaimTemplatesSelector map[string]interface{}
A label query over volumes to consider for binding (e.g. when using local volumes)
type ValuesCommonAnnotations ¶
type ValuesCommonAnnotations map[string]interface{}
Add annotations to all the deployed resources
type ValuesCommonLabels ¶
type ValuesCommonLabels map[string]interface{}
Add labels to all the deployed resources
type ValuesContainerPorts ¶
type ValuesContainerPorts struct {
// PostgreSQL container port
Postgresql float64 `json:"postgresql,omitempty" yaml:"postgresql,omitempty" mapstructure:"postgresql,omitempty"`
}
type ValuesDiagnosticMode ¶
type ValuesDiagnosticMode struct {
// Args to override all containers in the statefulset
Args []string `json:"args,omitempty" yaml:"args,omitempty" mapstructure:"args,omitempty"`
// Command to override all containers in the statefulset
Command []string `json:"command,omitempty" yaml:"command,omitempty" mapstructure:"command,omitempty"`
// Enable diagnostic mode (all probes will be disabled and the command will be
// overridden)
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
}
type ValuesGlobal ¶
type ValuesGlobal struct {
// Global Docker registry secret names as an array
ImagePullSecrets []interface{} `json:"imagePullSecrets,omitempty" yaml:"imagePullSecrets,omitempty" mapstructure:"imagePullSecrets,omitempty"`
// Global Docker image registry
ImageRegistry string `json:"imageRegistry,omitempty" yaml:"imageRegistry,omitempty" mapstructure:"imageRegistry,omitempty"`
// Postgresql corresponds to the JSON schema field "postgresql".
Postgresql *ValuesGlobalPostgresql `json:"postgresql,omitempty" yaml:"postgresql,omitempty" mapstructure:"postgresql,omitempty"`
// Global StorageClass for Persistent Volume(s)
StorageClass string `json:"storageClass,omitempty" yaml:"storageClass,omitempty" mapstructure:"storageClass,omitempty"`
}
type ValuesGlobalPostgresql ¶
type ValuesGlobalPostgresql struct {
// Auth corresponds to the JSON schema field "auth".
Auth *ValuesGlobalPostgresqlAuth `json:"auth,omitempty" yaml:"auth,omitempty" mapstructure:"auth,omitempty"`
// Service corresponds to the JSON schema field "service".
Service *ValuesGlobalPostgresqlService `json:"service,omitempty" yaml:"service,omitempty" mapstructure:"service,omitempty"`
}
type ValuesGlobalPostgresqlAuth ¶
type ValuesGlobalPostgresqlAuth struct {
// Name for a custom database to create (overrides `auth.database`)
Database string `json:"database,omitempty" yaml:"database,omitempty" mapstructure:"database,omitempty"`
// Name of existing secret to use for PostgreSQL credentials (overrides
// `auth.existingSecret`).
ExistingSecret string `json:"existingSecret,omitempty" yaml:"existingSecret,omitempty" mapstructure:"existingSecret,omitempty"`
// Password for the custom user to create (overrides `auth.password`)
Password string `json:"password,omitempty" yaml:"password,omitempty" mapstructure:"password,omitempty"`
// Password for the "postgres" admin user (overrides `auth.postgresPassword`)
PostgresPassword string `json:"postgresPassword,omitempty" yaml:"postgresPassword,omitempty" mapstructure:"postgresPassword,omitempty"`
// SecretKeys corresponds to the JSON schema field "secretKeys".
SecretKeys *ValuesGlobalPostgresqlAuthSecretKeys `json:"secretKeys,omitempty" yaml:"secretKeys,omitempty" mapstructure:"secretKeys,omitempty"`
// Name for a custom user to create (overrides `auth.username`)
Username string `json:"username,omitempty" yaml:"username,omitempty" mapstructure:"username,omitempty"`
}
type ValuesGlobalPostgresqlAuthSecretKeys ¶
type ValuesGlobalPostgresqlAuthSecretKeys struct {
// Name of key in existing secret to use for PostgreSQL credentials (overrides
// `auth.secretKeys.adminPasswordKey`). Only used when
// `global.postgresql.auth.existingSecret` is set.
AdminPasswordKey string `json:"adminPasswordKey,omitempty" yaml:"adminPasswordKey,omitempty" mapstructure:"adminPasswordKey,omitempty"`
// Name of key in existing secret to use for PostgreSQL credentials (overrides
// `auth.secretKeys.replicationPasswordKey`). Only used when
// `global.postgresql.auth.existingSecret` is set.
ReplicationPasswordKey string `` /* 127-byte string literal not displayed */
// Name of key in existing secret to use for PostgreSQL credentials (overrides
// `auth.secretKeys.userPasswordKey`). Only used when
// `global.postgresql.auth.existingSecret` is set.
UserPasswordKey string `json:"userPasswordKey,omitempty" yaml:"userPasswordKey,omitempty" mapstructure:"userPasswordKey,omitempty"`
}
type ValuesGlobalPostgresqlService ¶
type ValuesGlobalPostgresqlService struct {
// Ports corresponds to the JSON schema field "ports".
Ports *ValuesGlobalPostgresqlServicePorts `json:"ports,omitempty" yaml:"ports,omitempty" mapstructure:"ports,omitempty"`
}
type ValuesGlobalPostgresqlServicePorts ¶
type ValuesGlobalPostgresqlServicePorts struct {
// PostgreSQL service port (overrides `service.ports.postgresql`)
Postgresql string `json:"postgresql,omitempty" yaml:"postgresql,omitempty" mapstructure:"postgresql,omitempty"`
}
type ValuesImage ¶
type ValuesImage struct {
// Specify if debug values should be set
Debug bool `json:"debug,omitempty" yaml:"debug,omitempty" mapstructure:"debug,omitempty"`
// PostgreSQL image digest in the way sha256:aa.... Please note this parameter, if
// set, will override the tag
Digest string `json:"digest,omitempty" yaml:"digest,omitempty" mapstructure:"digest,omitempty"`
// PostgreSQL image pull policy
PullPolicy string `json:"pullPolicy,omitempty" yaml:"pullPolicy,omitempty" mapstructure:"pullPolicy,omitempty"`
// Specify image pull secrets
PullSecrets []interface{} `json:"pullSecrets,omitempty" yaml:"pullSecrets,omitempty" mapstructure:"pullSecrets,omitempty"`
// PostgreSQL image registry
Registry string `json:"registry,omitempty" yaml:"registry,omitempty" mapstructure:"registry,omitempty"`
// PostgreSQL image repository
Repository string `json:"repository,omitempty" yaml:"repository,omitempty" mapstructure:"repository,omitempty"`
}
type ValuesLdap ¶
type ValuesLdap struct {
// Root DN to begin the search for the user in
Basedn string `json:"basedn,omitempty" yaml:"basedn,omitempty" mapstructure:"basedn,omitempty"`
// DN of user to bind to LDAP
Binddn string `json:"binddn,omitempty" yaml:"binddn,omitempty" mapstructure:"binddn,omitempty"`
// Password for the user to bind to LDAP
Bindpw string `json:"bindpw,omitempty" yaml:"bindpw,omitempty" mapstructure:"bindpw,omitempty"`
// Enable LDAP support
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Port number on the LDAP server to connect to
Port string `json:"port,omitempty" yaml:"port,omitempty" mapstructure:"port,omitempty"`
// String to prepend to the user name when forming the DN to bind
Prefix string `json:"prefix,omitempty" yaml:"prefix,omitempty" mapstructure:"prefix,omitempty"`
// Set to `ldaps` to use LDAPS
Scheme string `json:"scheme,omitempty" yaml:"scheme,omitempty" mapstructure:"scheme,omitempty"`
// Attribute to match against the user name in the search
SearchAttribute string `json:"searchAttribute,omitempty" yaml:"searchAttribute,omitempty" mapstructure:"searchAttribute,omitempty"`
// The search filter to use when doing search+bind authentication
SearchFilter string `json:"searchFilter,omitempty" yaml:"searchFilter,omitempty" mapstructure:"searchFilter,omitempty"`
// IP address or name of the LDAP server.
Server string `json:"server,omitempty" yaml:"server,omitempty" mapstructure:"server,omitempty"`
// String to append to the user name when forming the DN to bind
Suffix string `json:"suffix,omitempty" yaml:"suffix,omitempty" mapstructure:"suffix,omitempty"`
// Tls corresponds to the JSON schema field "tls".
Tls *ValuesLdapTls `json:"tls,omitempty" yaml:"tls,omitempty" mapstructure:"tls,omitempty"`
// LDAP URL beginning in the form `ldap[s]://host[:port]/basedn`. If provided, all
// the other LDAP parameters will be ignored.
Uri string `json:"uri,omitempty" yaml:"uri,omitempty" mapstructure:"uri,omitempty"`
}
type ValuesLdapTls ¶
type ValuesLdapTls struct {
// Se to true to enable TLS encryption
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
}
type ValuesMetrics ¶
type ValuesMetrics struct {
// Control enabled collectors
Collectors ValuesMetricsCollectors `json:"collectors,omitempty" yaml:"collectors,omitempty" mapstructure:"collectors,omitempty"`
// ContainerPorts corresponds to the JSON schema field "containerPorts".
ContainerPorts *ValuesMetricsContainerPorts `json:"containerPorts,omitempty" yaml:"containerPorts,omitempty" mapstructure:"containerPorts,omitempty"`
// ContainerSecurityContext corresponds to the JSON schema field
// "containerSecurityContext".
ContainerSecurityContext *ValuesMetricsContainerSecurityContext `` /* 133-byte string literal not displayed */
// Custom livenessProbe that overrides the default one
CustomLivenessProbe ValuesMetricsCustomLivenessProbe `json:"customLivenessProbe,omitempty" yaml:"customLivenessProbe,omitempty" mapstructure:"customLivenessProbe,omitempty"`
// Define additional custom metrics
CustomMetrics ValuesMetricsCustomMetrics `json:"customMetrics,omitempty" yaml:"customMetrics,omitempty" mapstructure:"customMetrics,omitempty"`
// Custom readinessProbe that overrides the default one
CustomReadinessProbe ValuesMetricsCustomReadinessProbe `json:"customReadinessProbe,omitempty" yaml:"customReadinessProbe,omitempty" mapstructure:"customReadinessProbe,omitempty"`
// Custom startupProbe that overrides the default one
CustomStartupProbe ValuesMetricsCustomStartupProbe `json:"customStartupProbe,omitempty" yaml:"customStartupProbe,omitempty" mapstructure:"customStartupProbe,omitempty"`
// Start a prometheus exporter
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Extra environment variables to add to PostgreSQL Prometheus exporter
ExtraEnvVars []interface{} `json:"extraEnvVars,omitempty" yaml:"extraEnvVars,omitempty" mapstructure:"extraEnvVars,omitempty"`
// Image corresponds to the JSON schema field "image".
Image *ValuesMetricsImage `json:"image,omitempty" yaml:"image,omitempty" mapstructure:"image,omitempty"`
// LivenessProbe corresponds to the JSON schema field "livenessProbe".
LivenessProbe *ValuesMetricsLivenessProbe `json:"livenessProbe,omitempty" yaml:"livenessProbe,omitempty" mapstructure:"livenessProbe,omitempty"`
// PrometheusRule corresponds to the JSON schema field "prometheusRule".
PrometheusRule *ValuesMetricsPrometheusRule `json:"prometheusRule,omitempty" yaml:"prometheusRule,omitempty" mapstructure:"prometheusRule,omitempty"`
// ReadinessProbe corresponds to the JSON schema field "readinessProbe".
ReadinessProbe *ValuesMetricsReadinessProbe `json:"readinessProbe,omitempty" yaml:"readinessProbe,omitempty" mapstructure:"readinessProbe,omitempty"`
// Set container requests and limits for different resources like CPU or memory
// (essential for production workloads)
Resources ValuesMetricsResources `json:"resources,omitempty" yaml:"resources,omitempty" mapstructure:"resources,omitempty"`
// Set container resources according to one common preset (allowed values: none,
// nano, small, medium, large, xlarge, 2xlarge). This is ignored if
// metrics.resources is set (metrics.resources is recommended for production).
ResourcesPreset string `json:"resourcesPreset,omitempty" yaml:"resourcesPreset,omitempty" mapstructure:"resourcesPreset,omitempty"`
// Service corresponds to the JSON schema field "service".
Service *ValuesMetricsService `json:"service,omitempty" yaml:"service,omitempty" mapstructure:"service,omitempty"`
// ServiceMonitor corresponds to the JSON schema field "serviceMonitor".
ServiceMonitor *ValuesMetricsServiceMonitor `json:"serviceMonitor,omitempty" yaml:"serviceMonitor,omitempty" mapstructure:"serviceMonitor,omitempty"`
// StartupProbe corresponds to the JSON schema field "startupProbe".
StartupProbe *ValuesMetricsStartupProbe `json:"startupProbe,omitempty" yaml:"startupProbe,omitempty" mapstructure:"startupProbe,omitempty"`
}
type ValuesMetricsCollectors ¶
type ValuesMetricsCollectors map[string]interface{}
Control enabled collectors
type ValuesMetricsContainerPorts ¶
type ValuesMetricsContainerPorts struct {
// PostgreSQL Prometheus exporter metrics container port
Metrics float64 `json:"metrics,omitempty" yaml:"metrics,omitempty" mapstructure:"metrics,omitempty"`
}
type ValuesMetricsContainerSecurityContext ¶
type ValuesMetricsContainerSecurityContext struct {
// Set container's Security Context allowPrivilegeEscalation
AllowPrivilegeEscalation bool `` /* 133-byte string literal not displayed */
// Capabilities corresponds to the JSON schema field "capabilities".
Capabilities *ValuesMetricsContainerSecurityContextCapabilities `json:"capabilities,omitempty" yaml:"capabilities,omitempty" mapstructure:"capabilities,omitempty"`
// Enabled containers' Security Context
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Set container's Security Context privileged
Privileged bool `json:"privileged,omitempty" yaml:"privileged,omitempty" mapstructure:"privileged,omitempty"`
// Set container's Security Context readOnlyRootFilesystem
ReadOnlyRootFilesystem bool `` /* 127-byte string literal not displayed */
// Set containers' Security Context runAsGroup
RunAsGroup float64 `json:"runAsGroup,omitempty" yaml:"runAsGroup,omitempty" mapstructure:"runAsGroup,omitempty"`
// Set container's Security Context runAsNonRoot
RunAsNonRoot bool `json:"runAsNonRoot,omitempty" yaml:"runAsNonRoot,omitempty" mapstructure:"runAsNonRoot,omitempty"`
// Set containers' Security Context runAsUser
RunAsUser float64 `json:"runAsUser,omitempty" yaml:"runAsUser,omitempty" mapstructure:"runAsUser,omitempty"`
// SeccompProfile corresponds to the JSON schema field "seccompProfile".
SeccompProfile *ValuesMetricsContainerSecurityContextSeccompProfile `json:"seccompProfile,omitempty" yaml:"seccompProfile,omitempty" mapstructure:"seccompProfile,omitempty"`
}
type ValuesMetricsContainerSecurityContextCapabilities ¶
type ValuesMetricsContainerSecurityContextCapabilities struct {
// List of capabilities to be dropped
Drop []string `json:"drop,omitempty" yaml:"drop,omitempty" mapstructure:"drop,omitempty"`
}
type ValuesMetricsContainerSecurityContextSeccompProfile ¶
type ValuesMetricsContainerSecurityContextSeccompProfile struct {
// Set container's Security Context seccomp profile
Type string `json:"type,omitempty" yaml:"type,omitempty" mapstructure:"type,omitempty"`
}
type ValuesMetricsCustomLivenessProbe ¶
type ValuesMetricsCustomLivenessProbe map[string]interface{}
Custom livenessProbe that overrides the default one
type ValuesMetricsCustomMetrics ¶
type ValuesMetricsCustomMetrics map[string]interface{}
Define additional custom metrics
type ValuesMetricsCustomReadinessProbe ¶
type ValuesMetricsCustomReadinessProbe map[string]interface{}
Custom readinessProbe that overrides the default one
type ValuesMetricsCustomStartupProbe ¶
type ValuesMetricsCustomStartupProbe map[string]interface{}
Custom startupProbe that overrides the default one
type ValuesMetricsImage ¶
type ValuesMetricsImage struct {
// PostgreSQL image digest in the way sha256:aa.... Please note this parameter, if
// set, will override the tag
Digest string `json:"digest,omitempty" yaml:"digest,omitempty" mapstructure:"digest,omitempty"`
// PostgreSQL Prometheus Exporter image pull policy
PullPolicy string `json:"pullPolicy,omitempty" yaml:"pullPolicy,omitempty" mapstructure:"pullPolicy,omitempty"`
// Specify image pull secrets
PullSecrets []interface{} `json:"pullSecrets,omitempty" yaml:"pullSecrets,omitempty" mapstructure:"pullSecrets,omitempty"`
// PostgreSQL Prometheus Exporter image registry
Registry string `json:"registry,omitempty" yaml:"registry,omitempty" mapstructure:"registry,omitempty"`
// PostgreSQL Prometheus Exporter image repository
Repository string `json:"repository,omitempty" yaml:"repository,omitempty" mapstructure:"repository,omitempty"`
}
type ValuesMetricsLivenessProbe ¶
type ValuesMetricsLivenessProbe struct {
// Enable livenessProbe on PostgreSQL Prometheus exporter containers
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Failure threshold for livenessProbe
FailureThreshold float64 `json:"failureThreshold,omitempty" yaml:"failureThreshold,omitempty" mapstructure:"failureThreshold,omitempty"`
// Initial delay seconds for livenessProbe
InitialDelaySeconds float64 `json:"initialDelaySeconds,omitempty" yaml:"initialDelaySeconds,omitempty" mapstructure:"initialDelaySeconds,omitempty"`
// Period seconds for livenessProbe
PeriodSeconds float64 `json:"periodSeconds,omitempty" yaml:"periodSeconds,omitempty" mapstructure:"periodSeconds,omitempty"`
// Success threshold for livenessProbe
SuccessThreshold float64 `json:"successThreshold,omitempty" yaml:"successThreshold,omitempty" mapstructure:"successThreshold,omitempty"`
// Timeout seconds for livenessProbe
TimeoutSeconds float64 `json:"timeoutSeconds,omitempty" yaml:"timeoutSeconds,omitempty" mapstructure:"timeoutSeconds,omitempty"`
}
type ValuesMetricsPrometheusRule ¶
type ValuesMetricsPrometheusRule struct {
// Create a PrometheusRule for Prometheus Operator
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Additional labels that can be used so PrometheusRule will be discovered by
// Prometheus
Labels ValuesMetricsPrometheusRuleLabels `json:"labels,omitempty" yaml:"labels,omitempty" mapstructure:"labels,omitempty"`
// Namespace for the PrometheusRule Resource (defaults to the Release Namespace)
Namespace string `json:"namespace,omitempty" yaml:"namespace,omitempty" mapstructure:"namespace,omitempty"`
// PrometheusRule definitions
Rules []interface{} `json:"rules,omitempty" yaml:"rules,omitempty" mapstructure:"rules,omitempty"`
}
type ValuesMetricsPrometheusRuleLabels ¶
type ValuesMetricsPrometheusRuleLabels map[string]interface{}
Additional labels that can be used so PrometheusRule will be discovered by Prometheus
type ValuesMetricsReadinessProbe ¶
type ValuesMetricsReadinessProbe struct {
// Enable readinessProbe on PostgreSQL Prometheus exporter containers
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Failure threshold for readinessProbe
FailureThreshold float64 `json:"failureThreshold,omitempty" yaml:"failureThreshold,omitempty" mapstructure:"failureThreshold,omitempty"`
// Initial delay seconds for readinessProbe
InitialDelaySeconds float64 `json:"initialDelaySeconds,omitempty" yaml:"initialDelaySeconds,omitempty" mapstructure:"initialDelaySeconds,omitempty"`
// Period seconds for readinessProbe
PeriodSeconds float64 `json:"periodSeconds,omitempty" yaml:"periodSeconds,omitempty" mapstructure:"periodSeconds,omitempty"`
// Success threshold for readinessProbe
SuccessThreshold float64 `json:"successThreshold,omitempty" yaml:"successThreshold,omitempty" mapstructure:"successThreshold,omitempty"`
// Timeout seconds for readinessProbe
TimeoutSeconds float64 `json:"timeoutSeconds,omitempty" yaml:"timeoutSeconds,omitempty" mapstructure:"timeoutSeconds,omitempty"`
}
type ValuesMetricsResources ¶
type ValuesMetricsResources map[string]interface{}
Set container requests and limits for different resources like CPU or memory (essential for production workloads)
type ValuesMetricsService ¶
type ValuesMetricsService struct {
// Static clusterIP or None for headless services
ClusterIP string `json:"clusterIP,omitempty" yaml:"clusterIP,omitempty" mapstructure:"clusterIP,omitempty"`
// Ports corresponds to the JSON schema field "ports".
Ports *ValuesMetricsServicePorts `json:"ports,omitempty" yaml:"ports,omitempty" mapstructure:"ports,omitempty"`
// Control where client requests go, to the same pod or round-robin
SessionAffinity string `json:"sessionAffinity,omitempty" yaml:"sessionAffinity,omitempty" mapstructure:"sessionAffinity,omitempty"`
}
type ValuesMetricsServiceMonitor ¶
type ValuesMetricsServiceMonitor struct {
// Create ServiceMonitor Resource for scraping metrics using Prometheus Operator
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Specify honorLabels parameter to add the scrape endpoint
HonorLabels bool `json:"honorLabels,omitempty" yaml:"honorLabels,omitempty" mapstructure:"honorLabels,omitempty"`
// Interval at which metrics should be scraped.
Interval string `json:"interval,omitempty" yaml:"interval,omitempty" mapstructure:"interval,omitempty"`
// The name of the label on the target service to use as the job name in
// prometheus.
JobLabel string `json:"jobLabel,omitempty" yaml:"jobLabel,omitempty" mapstructure:"jobLabel,omitempty"`
// Additional labels that can be used so ServiceMonitor will be discovered by
// Prometheus
Labels ValuesMetricsServiceMonitorLabels `json:"labels,omitempty" yaml:"labels,omitempty" mapstructure:"labels,omitempty"`
// MetricRelabelConfigs to apply to samples before ingestion
MetricRelabelings []interface{} `json:"metricRelabelings,omitempty" yaml:"metricRelabelings,omitempty" mapstructure:"metricRelabelings,omitempty"`
// Namespace for the ServiceMonitor Resource (defaults to the Release Namespace)
Namespace string `json:"namespace,omitempty" yaml:"namespace,omitempty" mapstructure:"namespace,omitempty"`
// RelabelConfigs to apply to samples before scraping
Relabelings []interface{} `json:"relabelings,omitempty" yaml:"relabelings,omitempty" mapstructure:"relabelings,omitempty"`
// Timeout after which the scrape is ended
ScrapeTimeout string `json:"scrapeTimeout,omitempty" yaml:"scrapeTimeout,omitempty" mapstructure:"scrapeTimeout,omitempty"`
// Prometheus instance selector labels
Selector ValuesMetricsServiceMonitorSelector `json:"selector,omitempty" yaml:"selector,omitempty" mapstructure:"selector,omitempty"`
}
type ValuesMetricsServiceMonitorLabels ¶
type ValuesMetricsServiceMonitorLabels map[string]interface{}
Additional labels that can be used so ServiceMonitor will be discovered by Prometheus
type ValuesMetricsServiceMonitorSelector ¶
type ValuesMetricsServiceMonitorSelector map[string]interface{}
Prometheus instance selector labels
type ValuesMetricsServicePorts ¶
type ValuesMetricsServicePorts struct {
// PostgreSQL Prometheus Exporter service port
Metrics float64 `json:"metrics,omitempty" yaml:"metrics,omitempty" mapstructure:"metrics,omitempty"`
}
type ValuesMetricsStartupProbe ¶
type ValuesMetricsStartupProbe struct {
// Enable startupProbe on PostgreSQL Prometheus exporter containers
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Failure threshold for startupProbe
FailureThreshold float64 `json:"failureThreshold,omitempty" yaml:"failureThreshold,omitempty" mapstructure:"failureThreshold,omitempty"`
// Initial delay seconds for startupProbe
InitialDelaySeconds float64 `json:"initialDelaySeconds,omitempty" yaml:"initialDelaySeconds,omitempty" mapstructure:"initialDelaySeconds,omitempty"`
// Period seconds for startupProbe
PeriodSeconds float64 `json:"periodSeconds,omitempty" yaml:"periodSeconds,omitempty" mapstructure:"periodSeconds,omitempty"`
// Success threshold for startupProbe
SuccessThreshold float64 `json:"successThreshold,omitempty" yaml:"successThreshold,omitempty" mapstructure:"successThreshold,omitempty"`
// Timeout seconds for startupProbe
TimeoutSeconds float64 `json:"timeoutSeconds,omitempty" yaml:"timeoutSeconds,omitempty" mapstructure:"timeoutSeconds,omitempty"`
}
type ValuesPrimary ¶
type ValuesPrimary struct {
// Affinity for PostgreSQL primary pods assignment
Affinity ValuesPrimaryAffinity `json:"affinity,omitempty" yaml:"affinity,omitempty" mapstructure:"affinity,omitempty"`
// Annotations for PostgreSQL primary pods
Annotations ValuesPrimaryAnnotations `json:"annotations,omitempty" yaml:"annotations,omitempty" mapstructure:"annotations,omitempty"`
// Override default container args (useful when using custom images)
Args []interface{} `json:"args,omitempty" yaml:"args,omitempty" mapstructure:"args,omitempty"`
// Mount Service Account token in pod
AutomountServiceAccountToken bool `` /* 145-byte string literal not displayed */
// Override default container command (useful when using custom images)
Command []interface{} `json:"command,omitempty" yaml:"command,omitempty" mapstructure:"command,omitempty"`
// PostgreSQL Primary main configuration to be injected as ConfigMap
Configuration string `json:"configuration,omitempty" yaml:"configuration,omitempty" mapstructure:"configuration,omitempty"`
// ContainerSecurityContext corresponds to the JSON schema field
// "containerSecurityContext".
ContainerSecurityContext *ValuesPrimaryContainerSecurityContext `` /* 133-byte string literal not displayed */
// Custom livenessProbe that overrides the default one
CustomLivenessProbe ValuesPrimaryCustomLivenessProbe `json:"customLivenessProbe,omitempty" yaml:"customLivenessProbe,omitempty" mapstructure:"customLivenessProbe,omitempty"`
// Custom readinessProbe that overrides the default one
CustomReadinessProbe ValuesPrimaryCustomReadinessProbe `json:"customReadinessProbe,omitempty" yaml:"customReadinessProbe,omitempty" mapstructure:"customReadinessProbe,omitempty"`
// Custom startupProbe that overrides the default one
CustomStartupProbe ValuesPrimaryCustomStartupProbe `json:"customStartupProbe,omitempty" yaml:"customStartupProbe,omitempty" mapstructure:"customStartupProbe,omitempty"`
// Name of an existing ConfigMap with PostgreSQL Primary configuration
ExistingConfigmap string `json:"existingConfigmap,omitempty" yaml:"existingConfigmap,omitempty" mapstructure:"existingConfigmap,omitempty"`
// Name of an existing ConfigMap with PostgreSQL Primary extended configuration
ExistingExtendedConfigmap string `` /* 136-byte string literal not displayed */
// Extended PostgreSQL Primary configuration (appended to main or default
// configuration)
ExtendedConfiguration string `json:"extendedConfiguration,omitempty" yaml:"extendedConfiguration,omitempty" mapstructure:"extendedConfiguration,omitempty"`
// Array with extra environment variables to add to PostgreSQL Primary nodes
ExtraEnvVars []interface{} `json:"extraEnvVars,omitempty" yaml:"extraEnvVars,omitempty" mapstructure:"extraEnvVars,omitempty"`
// Name of existing ConfigMap containing extra env vars for PostgreSQL Primary
// nodes
ExtraEnvVarsCM string `json:"extraEnvVarsCM,omitempty" yaml:"extraEnvVarsCM,omitempty" mapstructure:"extraEnvVarsCM,omitempty"`
// Name of existing Secret containing extra env vars for PostgreSQL Primary nodes
ExtraEnvVarsSecret string `json:"extraEnvVarsSecret,omitempty" yaml:"extraEnvVarsSecret,omitempty" mapstructure:"extraEnvVarsSecret,omitempty"`
// Optionally specify extra PodSpec for the PostgreSQL Primary pod(s)
ExtraPodSpec ValuesPrimaryExtraPodSpec `json:"extraPodSpec,omitempty" yaml:"extraPodSpec,omitempty" mapstructure:"extraPodSpec,omitempty"`
// Optionally specify extra list of additional volumeMounts for the PostgreSQL
// Primary container(s)
ExtraVolumeMounts []interface{} `json:"extraVolumeMounts,omitempty" yaml:"extraVolumeMounts,omitempty" mapstructure:"extraVolumeMounts,omitempty"`
// Optionally specify extra list of additional volumes for the PostgreSQL Primary
// pod(s)
ExtraVolumes []interface{} `json:"extraVolumes,omitempty" yaml:"extraVolumes,omitempty" mapstructure:"extraVolumes,omitempty"`
// PostgreSQL primary pods host aliases
HostAliases []interface{} `json:"hostAliases,omitempty" yaml:"hostAliases,omitempty" mapstructure:"hostAliases,omitempty"`
// Specify if host IPC should be enabled for PostgreSQL pod (postgresql primary)
HostIPC bool `json:"hostIPC,omitempty" yaml:"hostIPC,omitempty" mapstructure:"hostIPC,omitempty"`
// Specify if host network should be enabled for PostgreSQL pod (postgresql
// primary)
HostNetwork bool `json:"hostNetwork,omitempty" yaml:"hostNetwork,omitempty" mapstructure:"hostNetwork,omitempty"`
// Add additional init containers to the PostgreSQL Primary pod(s)
InitContainers []interface{} `json:"initContainers,omitempty" yaml:"initContainers,omitempty" mapstructure:"initContainers,omitempty"`
// Initdb corresponds to the JSON schema field "initdb".
Initdb *ValuesPrimaryInitdb `json:"initdb,omitempty" yaml:"initdb,omitempty" mapstructure:"initdb,omitempty"`
// Map of labels to add to the statefulset (postgresql primary)
Labels ValuesPrimaryLabels `json:"labels,omitempty" yaml:"labels,omitempty" mapstructure:"labels,omitempty"`
// for the PostgreSQL Primary container to automate configuration before or after
// startup
LifecycleHooks ValuesPrimaryLifecycleHooks `json:"lifecycleHooks,omitempty" yaml:"lifecycleHooks,omitempty" mapstructure:"lifecycleHooks,omitempty"`
// LivenessProbe corresponds to the JSON schema field "livenessProbe".
LivenessProbe *ValuesPrimaryLivenessProbe `json:"livenessProbe,omitempty" yaml:"livenessProbe,omitempty" mapstructure:"livenessProbe,omitempty"`
// Name of the primary database (eg primary, master, leader, ...)
Name string `json:"name,omitempty" yaml:"name,omitempty" mapstructure:"name,omitempty"`
// NetworkPolicy corresponds to the JSON schema field "networkPolicy".
NetworkPolicy *ValuesPrimaryNetworkPolicy `json:"networkPolicy,omitempty" yaml:"networkPolicy,omitempty" mapstructure:"networkPolicy,omitempty"`
// NodeAffinityPreset corresponds to the JSON schema field "nodeAffinityPreset".
NodeAffinityPreset *ValuesPrimaryNodeAffinityPreset `json:"nodeAffinityPreset,omitempty" yaml:"nodeAffinityPreset,omitempty" mapstructure:"nodeAffinityPreset,omitempty"`
// Node labels for PostgreSQL primary pods assignment
NodeSelector ValuesPrimaryNodeSelector `json:"nodeSelector,omitempty" yaml:"nodeSelector,omitempty" mapstructure:"nodeSelector,omitempty"`
// Persistence corresponds to the JSON schema field "persistence".
Persistence *ValuesPrimaryPersistence `json:"persistence,omitempty" yaml:"persistence,omitempty" mapstructure:"persistence,omitempty"`
// PersistentVolumeClaimRetentionPolicy corresponds to the JSON schema field
// "persistentVolumeClaimRetentionPolicy".
PersistentVolumeClaimRetentionPolicy *ValuesPrimaryPersistentVolumeClaimRetentionPolicy `` /* 169-byte string literal not displayed */
// PostgreSQL Primary client authentication configuration
PgHbaConfiguration string `json:"pgHbaConfiguration,omitempty" yaml:"pgHbaConfiguration,omitempty" mapstructure:"pgHbaConfiguration,omitempty"`
// PostgreSQL primary pod affinity preset. Ignored if `primary.affinity` is set.
// Allowed values: `soft` or `hard`
PodAffinityPreset string `json:"podAffinityPreset,omitempty" yaml:"podAffinityPreset,omitempty" mapstructure:"podAffinityPreset,omitempty"`
// Map of annotations to add to the pods (postgresql primary)
PodAnnotations ValuesPrimaryPodAnnotations `json:"podAnnotations,omitempty" yaml:"podAnnotations,omitempty" mapstructure:"podAnnotations,omitempty"`
// PostgreSQL primary pod anti-affinity preset. Ignored if `primary.affinity` is
// set. Allowed values: `soft` or `hard`
PodAntiAffinityPreset string `json:"podAntiAffinityPreset,omitempty" yaml:"podAntiAffinityPreset,omitempty" mapstructure:"podAntiAffinityPreset,omitempty"`
// Map of labels to add to the pods (postgresql primary)
PodLabels ValuesPrimaryPodLabels `json:"podLabels,omitempty" yaml:"podLabels,omitempty" mapstructure:"podLabels,omitempty"`
// PodSecurityContext corresponds to the JSON schema field "podSecurityContext".
PodSecurityContext *ValuesPrimaryPodSecurityContext `json:"podSecurityContext,omitempty" yaml:"podSecurityContext,omitempty" mapstructure:"podSecurityContext,omitempty"`
// Priority Class to use for each pod (postgresql primary)
PriorityClassName string `json:"priorityClassName,omitempty" yaml:"priorityClassName,omitempty" mapstructure:"priorityClassName,omitempty"`
// ReadinessProbe corresponds to the JSON schema field "readinessProbe".
ReadinessProbe *ValuesPrimaryReadinessProbe `json:"readinessProbe,omitempty" yaml:"readinessProbe,omitempty" mapstructure:"readinessProbe,omitempty"`
// Set container requests and limits for different resources like CPU or memory
// (essential for production workloads)
Resources ValuesPrimaryResources `json:"resources,omitempty" yaml:"resources,omitempty" mapstructure:"resources,omitempty"`
// Set container resources according to one common preset (allowed values: none,
// nano, small, medium, large, xlarge, 2xlarge). This is ignored if
// primary.resources is set (primary.resources is recommended for production).
ResourcesPreset string `json:"resourcesPreset,omitempty" yaml:"resourcesPreset,omitempty" mapstructure:"resourcesPreset,omitempty"`
// Use an alternate scheduler, e.g. "stork".
SchedulerName string `json:"schedulerName,omitempty" yaml:"schedulerName,omitempty" mapstructure:"schedulerName,omitempty"`
// Service corresponds to the JSON schema field "service".
Service *ValuesPrimaryService `json:"service,omitempty" yaml:"service,omitempty" mapstructure:"service,omitempty"`
// Add additional sidecar containers to the PostgreSQL Primary pod(s)
Sidecars []interface{} `json:"sidecars,omitempty" yaml:"sidecars,omitempty" mapstructure:"sidecars,omitempty"`
// Standby corresponds to the JSON schema field "standby".
Standby *ValuesPrimaryStandby `json:"standby,omitempty" yaml:"standby,omitempty" mapstructure:"standby,omitempty"`
// StartupProbe corresponds to the JSON schema field "startupProbe".
StartupProbe *ValuesPrimaryStartupProbe `json:"startupProbe,omitempty" yaml:"startupProbe,omitempty" mapstructure:"startupProbe,omitempty"`
// Seconds PostgreSQL primary pod needs to terminate gracefully
TerminationGracePeriodSeconds string `` /* 148-byte string literal not displayed */
// Tolerations for PostgreSQL primary pods assignment
Tolerations []interface{} `json:"tolerations,omitempty" yaml:"tolerations,omitempty" mapstructure:"tolerations,omitempty"`
// Topology Spread Constraints for pod assignment spread across your cluster among
// failure-domains. Evaluated as a template
TopologySpreadConstraints []interface{} `` /* 136-byte string literal not displayed */
// UpdateStrategy corresponds to the JSON schema field "updateStrategy".
UpdateStrategy *ValuesPrimaryUpdateStrategy `json:"updateStrategy,omitempty" yaml:"updateStrategy,omitempty" mapstructure:"updateStrategy,omitempty"`
}
type ValuesPrimaryAffinity ¶
type ValuesPrimaryAffinity map[string]interface{}
Affinity for PostgreSQL primary pods assignment
type ValuesPrimaryAnnotations ¶
type ValuesPrimaryAnnotations map[string]interface{}
Annotations for PostgreSQL primary pods
type ValuesPrimaryContainerSecurityContext ¶
type ValuesPrimaryContainerSecurityContext struct {
// Set container's Security Context allowPrivilegeEscalation
AllowPrivilegeEscalation bool `` /* 133-byte string literal not displayed */
// Capabilities corresponds to the JSON schema field "capabilities".
Capabilities *ValuesPrimaryContainerSecurityContextCapabilities `json:"capabilities,omitempty" yaml:"capabilities,omitempty" mapstructure:"capabilities,omitempty"`
// Enabled containers' Security Context
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Set container's Security Context privileged
Privileged bool `json:"privileged,omitempty" yaml:"privileged,omitempty" mapstructure:"privileged,omitempty"`
// Set container's Security Context readOnlyRootFilesystem
ReadOnlyRootFilesystem bool `` /* 127-byte string literal not displayed */
// Set containers' Security Context runAsGroup
RunAsGroup float64 `json:"runAsGroup,omitempty" yaml:"runAsGroup,omitempty" mapstructure:"runAsGroup,omitempty"`
// Set container's Security Context runAsNonRoot
RunAsNonRoot bool `json:"runAsNonRoot,omitempty" yaml:"runAsNonRoot,omitempty" mapstructure:"runAsNonRoot,omitempty"`
// Set containers' Security Context runAsUser
RunAsUser float64 `json:"runAsUser,omitempty" yaml:"runAsUser,omitempty" mapstructure:"runAsUser,omitempty"`
// SeccompProfile corresponds to the JSON schema field "seccompProfile".
SeccompProfile *ValuesPrimaryContainerSecurityContextSeccompProfile `json:"seccompProfile,omitempty" yaml:"seccompProfile,omitempty" mapstructure:"seccompProfile,omitempty"`
}
type ValuesPrimaryContainerSecurityContextCapabilities ¶
type ValuesPrimaryContainerSecurityContextCapabilities struct {
// List of capabilities to be dropped
Drop []string `json:"drop,omitempty" yaml:"drop,omitempty" mapstructure:"drop,omitempty"`
}
type ValuesPrimaryContainerSecurityContextSeccompProfile ¶
type ValuesPrimaryContainerSecurityContextSeccompProfile struct {
// Set container's Security Context seccomp profile
Type string `json:"type,omitempty" yaml:"type,omitempty" mapstructure:"type,omitempty"`
}
type ValuesPrimaryCustomLivenessProbe ¶
type ValuesPrimaryCustomLivenessProbe map[string]interface{}
Custom livenessProbe that overrides the default one
type ValuesPrimaryCustomReadinessProbe ¶
type ValuesPrimaryCustomReadinessProbe map[string]interface{}
Custom readinessProbe that overrides the default one
type ValuesPrimaryCustomStartupProbe ¶
type ValuesPrimaryCustomStartupProbe map[string]interface{}
Custom startupProbe that overrides the default one
type ValuesPrimaryExtraPodSpec ¶
type ValuesPrimaryExtraPodSpec map[string]interface{}
Optionally specify extra PodSpec for the PostgreSQL Primary pod(s)
type ValuesPrimaryInitdb ¶
type ValuesPrimaryInitdb struct {
// PostgreSQL initdb extra arguments
Args string `json:"args,omitempty" yaml:"args,omitempty" mapstructure:"args,omitempty"`
// Specify the PostgreSQL password to execute the initdb scripts
Password string `json:"password,omitempty" yaml:"password,omitempty" mapstructure:"password,omitempty"`
// Specify a custom location for the PostgreSQL transaction log
PostgresqlWalDir string `json:"postgresqlWalDir,omitempty" yaml:"postgresqlWalDir,omitempty" mapstructure:"postgresqlWalDir,omitempty"`
// Dictionary of initdb scripts
Scripts ValuesPrimaryInitdbScripts `json:"scripts,omitempty" yaml:"scripts,omitempty" mapstructure:"scripts,omitempty"`
// ConfigMap with scripts to be run at first boot
ScriptsConfigMap string `json:"scriptsConfigMap,omitempty" yaml:"scriptsConfigMap,omitempty" mapstructure:"scriptsConfigMap,omitempty"`
// Secret with scripts to be run at first boot (in case it contains sensitive
// information)
ScriptsSecret string `json:"scriptsSecret,omitempty" yaml:"scriptsSecret,omitempty" mapstructure:"scriptsSecret,omitempty"`
// Specify the PostgreSQL username to execute the initdb scripts
User string `json:"user,omitempty" yaml:"user,omitempty" mapstructure:"user,omitempty"`
}
type ValuesPrimaryInitdbScripts ¶
type ValuesPrimaryInitdbScripts map[string]interface{}
Dictionary of initdb scripts
type ValuesPrimaryLabels ¶
type ValuesPrimaryLabels map[string]interface{}
Map of labels to add to the statefulset (postgresql primary)
type ValuesPrimaryLifecycleHooks ¶
type ValuesPrimaryLifecycleHooks map[string]interface{}
for the PostgreSQL Primary container to automate configuration before or after startup
type ValuesPrimaryLivenessProbe ¶
type ValuesPrimaryLivenessProbe struct {
// Enable livenessProbe on PostgreSQL Primary containers
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Failure threshold for livenessProbe
FailureThreshold float64 `json:"failureThreshold,omitempty" yaml:"failureThreshold,omitempty" mapstructure:"failureThreshold,omitempty"`
// Initial delay seconds for livenessProbe
InitialDelaySeconds float64 `json:"initialDelaySeconds,omitempty" yaml:"initialDelaySeconds,omitempty" mapstructure:"initialDelaySeconds,omitempty"`
// Period seconds for livenessProbe
PeriodSeconds float64 `json:"periodSeconds,omitempty" yaml:"periodSeconds,omitempty" mapstructure:"periodSeconds,omitempty"`
// Success threshold for livenessProbe
SuccessThreshold float64 `json:"successThreshold,omitempty" yaml:"successThreshold,omitempty" mapstructure:"successThreshold,omitempty"`
// Timeout seconds for livenessProbe
TimeoutSeconds float64 `json:"timeoutSeconds,omitempty" yaml:"timeoutSeconds,omitempty" mapstructure:"timeoutSeconds,omitempty"`
}
type ValuesPrimaryNetworkPolicy ¶
type ValuesPrimaryNetworkPolicy struct {
// Don't require server label for connections
AllowExternal bool `json:"allowExternal,omitempty" yaml:"allowExternal,omitempty" mapstructure:"allowExternal,omitempty"`
// Allow the pod to access any range of port and all destinations.
AllowExternalEgress bool `json:"allowExternalEgress,omitempty" yaml:"allowExternalEgress,omitempty" mapstructure:"allowExternalEgress,omitempty"`
// Specifies whether a NetworkPolicy should be created
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Add extra ingress rules to the NetworkPolicy
ExtraEgress []string `json:"extraEgress,omitempty" yaml:"extraEgress,omitempty" mapstructure:"extraEgress,omitempty"`
// Add extra ingress rules to the NetworkPolice
ExtraIngress []string `json:"extraIngress,omitempty" yaml:"extraIngress,omitempty" mapstructure:"extraIngress,omitempty"`
}
type ValuesPrimaryNodeAffinityPreset ¶
type ValuesPrimaryNodeAffinityPreset struct {
// PostgreSQL primary node label key to match Ignored if `primary.affinity` is
// set.
Key string `json:"key,omitempty" yaml:"key,omitempty" mapstructure:"key,omitempty"`
// PostgreSQL primary node affinity preset type. Ignored if `primary.affinity` is
// set. Allowed values: `soft` or `hard`
Type string `json:"type,omitempty" yaml:"type,omitempty" mapstructure:"type,omitempty"`
// PostgreSQL primary node label values to match. Ignored if `primary.affinity` is
// set.
Values []interface{} `json:"values,omitempty" yaml:"values,omitempty" mapstructure:"values,omitempty"`
}
type ValuesPrimaryNodeSelector ¶
type ValuesPrimaryNodeSelector map[string]interface{}
Node labels for PostgreSQL primary pods assignment
type ValuesPrimaryPersistence ¶
type ValuesPrimaryPersistence struct {
// PVC Access Mode for PostgreSQL volume
AccessModes []string `json:"accessModes,omitempty" yaml:"accessModes,omitempty" mapstructure:"accessModes,omitempty"`
// Annotations for the PVC
Annotations ValuesPrimaryPersistenceAnnotations `json:"annotations,omitempty" yaml:"annotations,omitempty" mapstructure:"annotations,omitempty"`
// Custom PVC data source
DataSource ValuesPrimaryPersistenceDataSource `json:"dataSource,omitempty" yaml:"dataSource,omitempty" mapstructure:"dataSource,omitempty"`
// Enable PostgreSQL Primary data persistence using PVC
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Name of an existing PVC to use
ExistingClaim string `json:"existingClaim,omitempty" yaml:"existingClaim,omitempty" mapstructure:"existingClaim,omitempty"`
// Labels for the PVC
Labels ValuesPrimaryPersistenceLabels `json:"labels,omitempty" yaml:"labels,omitempty" mapstructure:"labels,omitempty"`
// The path the volume will be mounted at
MountPath string `json:"mountPath,omitempty" yaml:"mountPath,omitempty" mapstructure:"mountPath,omitempty"`
// Selector to match an existing Persistent Volume (this value is evaluated as a
// template)
Selector ValuesPrimaryPersistenceSelector `json:"selector,omitempty" yaml:"selector,omitempty" mapstructure:"selector,omitempty"`
// PVC Storage Request for PostgreSQL volume
Size string `json:"size,omitempty" yaml:"size,omitempty" mapstructure:"size,omitempty"`
// PVC Storage Class for PostgreSQL Primary data volume
StorageClass string `json:"storageClass,omitempty" yaml:"storageClass,omitempty" mapstructure:"storageClass,omitempty"`
// The subdirectory of the volume to mount to
SubPath string `json:"subPath,omitempty" yaml:"subPath,omitempty" mapstructure:"subPath,omitempty"`
}
type ValuesPrimaryPersistenceAnnotations ¶
type ValuesPrimaryPersistenceAnnotations map[string]interface{}
Annotations for the PVC
type ValuesPrimaryPersistenceDataSource ¶
type ValuesPrimaryPersistenceDataSource map[string]interface{}
Custom PVC data source
type ValuesPrimaryPersistenceLabels ¶
type ValuesPrimaryPersistenceLabels map[string]interface{}
Labels for the PVC
type ValuesPrimaryPersistenceSelector ¶
type ValuesPrimaryPersistenceSelector map[string]interface{}
Selector to match an existing Persistent Volume (this value is evaluated as a template)
type ValuesPrimaryPersistentVolumeClaimRetentionPolicy ¶
type ValuesPrimaryPersistentVolumeClaimRetentionPolicy struct {
// Enable Persistent volume retention policy for Primary Statefulset
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Volume retention behavior that applies when the StatefulSet is deleted
WhenDeleted string `json:"whenDeleted,omitempty" yaml:"whenDeleted,omitempty" mapstructure:"whenDeleted,omitempty"`
// Volume retention behavior when the replica count of the StatefulSet is reduced
WhenScaled string `json:"whenScaled,omitempty" yaml:"whenScaled,omitempty" mapstructure:"whenScaled,omitempty"`
}
type ValuesPrimaryPodAnnotations ¶
type ValuesPrimaryPodAnnotations map[string]interface{}
Map of annotations to add to the pods (postgresql primary)
type ValuesPrimaryPodLabels ¶
type ValuesPrimaryPodLabels map[string]interface{}
Map of labels to add to the pods (postgresql primary)
type ValuesPrimaryPodSecurityContext ¶
type ValuesPrimaryPodSecurityContext struct {
// Enable security context
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Group ID for the pod
FsGroup float64 `json:"fsGroup,omitempty" yaml:"fsGroup,omitempty" mapstructure:"fsGroup,omitempty"`
// Set filesystem group change policy
FsGroupChangePolicy string `json:"fsGroupChangePolicy,omitempty" yaml:"fsGroupChangePolicy,omitempty" mapstructure:"fsGroupChangePolicy,omitempty"`
// Set filesystem extra groups
SupplementalGroups []interface{} `json:"supplementalGroups,omitempty" yaml:"supplementalGroups,omitempty" mapstructure:"supplementalGroups,omitempty"`
// Set kernel settings using the sysctl interface
Sysctls []interface{} `json:"sysctls,omitempty" yaml:"sysctls,omitempty" mapstructure:"sysctls,omitempty"`
}
type ValuesPrimaryReadinessProbe ¶
type ValuesPrimaryReadinessProbe struct {
// Enable readinessProbe on PostgreSQL Primary containers
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Failure threshold for readinessProbe
FailureThreshold float64 `json:"failureThreshold,omitempty" yaml:"failureThreshold,omitempty" mapstructure:"failureThreshold,omitempty"`
// Initial delay seconds for readinessProbe
InitialDelaySeconds float64 `json:"initialDelaySeconds,omitempty" yaml:"initialDelaySeconds,omitempty" mapstructure:"initialDelaySeconds,omitempty"`
// Period seconds for readinessProbe
PeriodSeconds float64 `json:"periodSeconds,omitempty" yaml:"periodSeconds,omitempty" mapstructure:"periodSeconds,omitempty"`
// Success threshold for readinessProbe
SuccessThreshold float64 `json:"successThreshold,omitempty" yaml:"successThreshold,omitempty" mapstructure:"successThreshold,omitempty"`
// Timeout seconds for readinessProbe
TimeoutSeconds float64 `json:"timeoutSeconds,omitempty" yaml:"timeoutSeconds,omitempty" mapstructure:"timeoutSeconds,omitempty"`
}
type ValuesPrimaryResources ¶
type ValuesPrimaryResources map[string]interface{}
Set container requests and limits for different resources like CPU or memory (essential for production workloads)
type ValuesPrimaryService ¶
type ValuesPrimaryService struct {
// Annotations for PostgreSQL primary service
Annotations ValuesPrimaryServiceAnnotations `json:"annotations,omitempty" yaml:"annotations,omitempty" mapstructure:"annotations,omitempty"`
// Static clusterIP or None for headless services
ClusterIP string `json:"clusterIP,omitempty" yaml:"clusterIP,omitempty" mapstructure:"clusterIP,omitempty"`
// Enable client source IP preservation
ExternalTrafficPolicy string `json:"externalTrafficPolicy,omitempty" yaml:"externalTrafficPolicy,omitempty" mapstructure:"externalTrafficPolicy,omitempty"`
// Extra ports to expose in the PostgreSQL primary service
ExtraPorts []interface{} `json:"extraPorts,omitempty" yaml:"extraPorts,omitempty" mapstructure:"extraPorts,omitempty"`
// Headless corresponds to the JSON schema field "headless".
Headless *ValuesPrimaryServiceHeadless `json:"headless,omitempty" yaml:"headless,omitempty" mapstructure:"headless,omitempty"`
// Load balancer IP if service type is `LoadBalancer`
LoadBalancerIP string `json:"loadBalancerIP,omitempty" yaml:"loadBalancerIP,omitempty" mapstructure:"loadBalancerIP,omitempty"`
// Addresses that are allowed when service is LoadBalancer
LoadBalancerSourceRanges []interface{} `` /* 133-byte string literal not displayed */
// NodePorts corresponds to the JSON schema field "nodePorts".
NodePorts *ValuesPrimaryServiceNodePorts `json:"nodePorts,omitempty" yaml:"nodePorts,omitempty" mapstructure:"nodePorts,omitempty"`
// Ports corresponds to the JSON schema field "ports".
Ports *ValuesPrimaryServicePorts `json:"ports,omitempty" yaml:"ports,omitempty" mapstructure:"ports,omitempty"`
// Session Affinity for Kubernetes service, can be "None" or "ClientIP"
SessionAffinity string `json:"sessionAffinity,omitempty" yaml:"sessionAffinity,omitempty" mapstructure:"sessionAffinity,omitempty"`
// Additional settings for the sessionAffinity
SessionAffinityConfig ValuesPrimaryServiceSessionAffinityConfig `json:"sessionAffinityConfig,omitempty" yaml:"sessionAffinityConfig,omitempty" mapstructure:"sessionAffinityConfig,omitempty"`
// Kubernetes Service type
Type string `json:"type,omitempty" yaml:"type,omitempty" mapstructure:"type,omitempty"`
}
type ValuesPrimaryServiceAnnotations ¶
type ValuesPrimaryServiceAnnotations map[string]interface{}
Annotations for PostgreSQL primary service
type ValuesPrimaryServiceHeadless ¶
type ValuesPrimaryServiceHeadless struct {
// Additional custom annotations for headless PostgreSQL primary service
Annotations ValuesPrimaryServiceHeadlessAnnotations `json:"annotations,omitempty" yaml:"annotations,omitempty" mapstructure:"annotations,omitempty"`
}
type ValuesPrimaryServiceHeadlessAnnotations ¶
type ValuesPrimaryServiceHeadlessAnnotations map[string]interface{}
Additional custom annotations for headless PostgreSQL primary service
type ValuesPrimaryServiceNodePorts ¶
type ValuesPrimaryServiceNodePorts struct {
// Node port for PostgreSQL
Postgresql string `json:"postgresql,omitempty" yaml:"postgresql,omitempty" mapstructure:"postgresql,omitempty"`
}
type ValuesPrimaryServicePorts ¶
type ValuesPrimaryServicePorts struct {
// PostgreSQL service port
Postgresql float64 `json:"postgresql,omitempty" yaml:"postgresql,omitempty" mapstructure:"postgresql,omitempty"`
}
type ValuesPrimaryServiceSessionAffinityConfig ¶
type ValuesPrimaryServiceSessionAffinityConfig map[string]interface{}
Additional settings for the sessionAffinity
type ValuesPrimaryStandby ¶
type ValuesPrimaryStandby struct {
// Whether to enable current cluster's primary as standby server of another
// cluster or not
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// The Host of replication primary in the other cluster
PrimaryHost string `json:"primaryHost,omitempty" yaml:"primaryHost,omitempty" mapstructure:"primaryHost,omitempty"`
// The Port of replication primary in the other cluster
PrimaryPort string `json:"primaryPort,omitempty" yaml:"primaryPort,omitempty" mapstructure:"primaryPort,omitempty"`
}
type ValuesPrimaryStartupProbe ¶
type ValuesPrimaryStartupProbe struct {
// Enable startupProbe on PostgreSQL Primary containers
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Failure threshold for startupProbe
FailureThreshold float64 `json:"failureThreshold,omitempty" yaml:"failureThreshold,omitempty" mapstructure:"failureThreshold,omitempty"`
// Initial delay seconds for startupProbe
InitialDelaySeconds float64 `json:"initialDelaySeconds,omitempty" yaml:"initialDelaySeconds,omitempty" mapstructure:"initialDelaySeconds,omitempty"`
// Period seconds for startupProbe
PeriodSeconds float64 `json:"periodSeconds,omitempty" yaml:"periodSeconds,omitempty" mapstructure:"periodSeconds,omitempty"`
// Success threshold for startupProbe
SuccessThreshold float64 `json:"successThreshold,omitempty" yaml:"successThreshold,omitempty" mapstructure:"successThreshold,omitempty"`
// Timeout seconds for startupProbe
TimeoutSeconds float64 `json:"timeoutSeconds,omitempty" yaml:"timeoutSeconds,omitempty" mapstructure:"timeoutSeconds,omitempty"`
}
type ValuesPrimaryUpdateStrategy ¶
type ValuesPrimaryUpdateStrategy struct {
// PostgreSQL Primary statefulset rolling update configuration parameters
RollingUpdate ValuesPrimaryUpdateStrategyRollingUpdate `json:"rollingUpdate,omitempty" yaml:"rollingUpdate,omitempty" mapstructure:"rollingUpdate,omitempty"`
// PostgreSQL Primary statefulset strategy type
Type string `json:"type,omitempty" yaml:"type,omitempty" mapstructure:"type,omitempty"`
}
type ValuesPrimaryUpdateStrategyRollingUpdate ¶
type ValuesPrimaryUpdateStrategyRollingUpdate map[string]interface{}
PostgreSQL Primary statefulset rolling update configuration parameters
type ValuesPsp ¶
type ValuesPsp struct {
// Whether to create a PodSecurityPolicy. WARNING: PodSecurityPolicy is deprecated
// in Kubernetes v1.21 or later, unavailable in v1.25 or later
Create bool `json:"create,omitempty" yaml:"create,omitempty" mapstructure:"create,omitempty"`
}
type ValuesRbac ¶
type ValuesRbac struct {
// Create Role and RoleBinding (required for PSP to work)
Create bool `json:"create,omitempty" yaml:"create,omitempty" mapstructure:"create,omitempty"`
// Custom RBAC rules to set
Rules []interface{} `json:"rules,omitempty" yaml:"rules,omitempty" mapstructure:"rules,omitempty"`
}
type ValuesReadReplicas ¶
type ValuesReadReplicas struct {
// Affinity for PostgreSQL read only pods assignment
Affinity ValuesReadReplicasAffinity `json:"affinity,omitempty" yaml:"affinity,omitempty" mapstructure:"affinity,omitempty"`
// Annotations for PostgreSQL read only pods
Annotations ValuesReadReplicasAnnotations `json:"annotations,omitempty" yaml:"annotations,omitempty" mapstructure:"annotations,omitempty"`
// Override default container args (useful when using custom images)
Args []interface{} `json:"args,omitempty" yaml:"args,omitempty" mapstructure:"args,omitempty"`
// Mount Service Account token in pod
AutomountServiceAccountToken bool `` /* 145-byte string literal not displayed */
// Override default container command (useful when using custom images)
Command []interface{} `json:"command,omitempty" yaml:"command,omitempty" mapstructure:"command,omitempty"`
// ContainerSecurityContext corresponds to the JSON schema field
// "containerSecurityContext".
ContainerSecurityContext *ValuesReadReplicasContainerSecurityContext `` /* 133-byte string literal not displayed */
// Custom livenessProbe that overrides the default one
CustomLivenessProbe ValuesReadReplicasCustomLivenessProbe `json:"customLivenessProbe,omitempty" yaml:"customLivenessProbe,omitempty" mapstructure:"customLivenessProbe,omitempty"`
// Custom readinessProbe that overrides the default one
CustomReadinessProbe ValuesReadReplicasCustomReadinessProbe `json:"customReadinessProbe,omitempty" yaml:"customReadinessProbe,omitempty" mapstructure:"customReadinessProbe,omitempty"`
// Custom startupProbe that overrides the default one
CustomStartupProbe ValuesReadReplicasCustomStartupProbe `json:"customStartupProbe,omitempty" yaml:"customStartupProbe,omitempty" mapstructure:"customStartupProbe,omitempty"`
// Extended PostgreSQL read only replicas configuration (appended to main or
// default configuration)
ExtendedConfiguration string `json:"extendedConfiguration,omitempty" yaml:"extendedConfiguration,omitempty" mapstructure:"extendedConfiguration,omitempty"`
// Array with extra environment variables to add to PostgreSQL read only nodes
ExtraEnvVars []interface{} `json:"extraEnvVars,omitempty" yaml:"extraEnvVars,omitempty" mapstructure:"extraEnvVars,omitempty"`
// Name of existing ConfigMap containing extra env vars for PostgreSQL read only
// nodes
ExtraEnvVarsCM string `json:"extraEnvVarsCM,omitempty" yaml:"extraEnvVarsCM,omitempty" mapstructure:"extraEnvVarsCM,omitempty"`
// Name of existing Secret containing extra env vars for PostgreSQL read only
// nodes
ExtraEnvVarsSecret string `json:"extraEnvVarsSecret,omitempty" yaml:"extraEnvVarsSecret,omitempty" mapstructure:"extraEnvVarsSecret,omitempty"`
// Optionally specify extra PodSpec for the PostgreSQL read only pod(s)
ExtraPodSpec ValuesReadReplicasExtraPodSpec `json:"extraPodSpec,omitempty" yaml:"extraPodSpec,omitempty" mapstructure:"extraPodSpec,omitempty"`
// Optionally specify extra list of additional volumeMounts for the PostgreSQL
// read only container(s)
ExtraVolumeMounts []interface{} `json:"extraVolumeMounts,omitempty" yaml:"extraVolumeMounts,omitempty" mapstructure:"extraVolumeMounts,omitempty"`
// Optionally specify extra list of additional volumes for the PostgreSQL read
// only pod(s)
ExtraVolumes []interface{} `json:"extraVolumes,omitempty" yaml:"extraVolumes,omitempty" mapstructure:"extraVolumes,omitempty"`
// PostgreSQL read only pods host aliases
HostAliases []interface{} `json:"hostAliases,omitempty" yaml:"hostAliases,omitempty" mapstructure:"hostAliases,omitempty"`
// Specify if host IPC should be enabled for PostgreSQL pod (postgresql primary)
HostIPC bool `json:"hostIPC,omitempty" yaml:"hostIPC,omitempty" mapstructure:"hostIPC,omitempty"`
// Specify if host network should be enabled for PostgreSQL pod (PostgreSQL read
// only)
HostNetwork bool `json:"hostNetwork,omitempty" yaml:"hostNetwork,omitempty" mapstructure:"hostNetwork,omitempty"`
// Add additional init containers to the PostgreSQL read only pod(s)
InitContainers []interface{} `json:"initContainers,omitempty" yaml:"initContainers,omitempty" mapstructure:"initContainers,omitempty"`
// Map of labels to add to the statefulset (PostgreSQL read only)
Labels ValuesReadReplicasLabels `json:"labels,omitempty" yaml:"labels,omitempty" mapstructure:"labels,omitempty"`
// for the PostgreSQL read only container to automate configuration before or
// after startup
LifecycleHooks ValuesReadReplicasLifecycleHooks `json:"lifecycleHooks,omitempty" yaml:"lifecycleHooks,omitempty" mapstructure:"lifecycleHooks,omitempty"`
// LivenessProbe corresponds to the JSON schema field "livenessProbe".
LivenessProbe *ValuesReadReplicasLivenessProbe `json:"livenessProbe,omitempty" yaml:"livenessProbe,omitempty" mapstructure:"livenessProbe,omitempty"`
// Name of the read replicas database (eg secondary, slave, ...)
Name string `json:"name,omitempty" yaml:"name,omitempty" mapstructure:"name,omitempty"`
// NetworkPolicy corresponds to the JSON schema field "networkPolicy".
NetworkPolicy *ValuesReadReplicasNetworkPolicy `json:"networkPolicy,omitempty" yaml:"networkPolicy,omitempty" mapstructure:"networkPolicy,omitempty"`
// NodeAffinityPreset corresponds to the JSON schema field "nodeAffinityPreset".
NodeAffinityPreset *ValuesReadReplicasNodeAffinityPreset `json:"nodeAffinityPreset,omitempty" yaml:"nodeAffinityPreset,omitempty" mapstructure:"nodeAffinityPreset,omitempty"`
// Node labels for PostgreSQL read only pods assignment
NodeSelector ValuesReadReplicasNodeSelector `json:"nodeSelector,omitempty" yaml:"nodeSelector,omitempty" mapstructure:"nodeSelector,omitempty"`
// Persistence corresponds to the JSON schema field "persistence".
Persistence *ValuesReadReplicasPersistence `json:"persistence,omitempty" yaml:"persistence,omitempty" mapstructure:"persistence,omitempty"`
// PersistentVolumeClaimRetentionPolicy corresponds to the JSON schema field
// "persistentVolumeClaimRetentionPolicy".
PersistentVolumeClaimRetentionPolicy *ValuesReadReplicasPersistentVolumeClaimRetentionPolicy `` /* 169-byte string literal not displayed */
// PostgreSQL read only pod affinity preset. Ignored if `primary.affinity` is set.
// Allowed values: `soft` or `hard`
PodAffinityPreset string `json:"podAffinityPreset,omitempty" yaml:"podAffinityPreset,omitempty" mapstructure:"podAffinityPreset,omitempty"`
// Map of annotations to add to the pods (PostgreSQL read only)
PodAnnotations ValuesReadReplicasPodAnnotations `json:"podAnnotations,omitempty" yaml:"podAnnotations,omitempty" mapstructure:"podAnnotations,omitempty"`
// PostgreSQL read only pod anti-affinity preset. Ignored if `primary.affinity` is
// set. Allowed values: `soft` or `hard`
PodAntiAffinityPreset string `json:"podAntiAffinityPreset,omitempty" yaml:"podAntiAffinityPreset,omitempty" mapstructure:"podAntiAffinityPreset,omitempty"`
// Map of labels to add to the pods (PostgreSQL read only)
PodLabels ValuesReadReplicasPodLabels `json:"podLabels,omitempty" yaml:"podLabels,omitempty" mapstructure:"podLabels,omitempty"`
// PodSecurityContext corresponds to the JSON schema field "podSecurityContext".
PodSecurityContext *ValuesReadReplicasPodSecurityContext `json:"podSecurityContext,omitempty" yaml:"podSecurityContext,omitempty" mapstructure:"podSecurityContext,omitempty"`
// Priority Class to use for each pod (PostgreSQL read only)
PriorityClassName string `json:"priorityClassName,omitempty" yaml:"priorityClassName,omitempty" mapstructure:"priorityClassName,omitempty"`
// ReadinessProbe corresponds to the JSON schema field "readinessProbe".
ReadinessProbe *ValuesReadReplicasReadinessProbe `json:"readinessProbe,omitempty" yaml:"readinessProbe,omitempty" mapstructure:"readinessProbe,omitempty"`
// Number of PostgreSQL read only replicas
ReplicaCount float64 `json:"replicaCount,omitempty" yaml:"replicaCount,omitempty" mapstructure:"replicaCount,omitempty"`
// Set container requests and limits for different resources like CPU or memory
// (essential for production workloads)
Resources ValuesReadReplicasResources `json:"resources,omitempty" yaml:"resources,omitempty" mapstructure:"resources,omitempty"`
// Set container resources according to one common preset (allowed values: none,
// nano, small, medium, large, xlarge, 2xlarge). This is ignored if
// readReplicas.resources is set (readReplicas.resources is recommended for
// production).
ResourcesPreset string `json:"resourcesPreset,omitempty" yaml:"resourcesPreset,omitempty" mapstructure:"resourcesPreset,omitempty"`
// Use an alternate scheduler, e.g. "stork".
SchedulerName string `json:"schedulerName,omitempty" yaml:"schedulerName,omitempty" mapstructure:"schedulerName,omitempty"`
// Service corresponds to the JSON schema field "service".
Service *ValuesReadReplicasService `json:"service,omitempty" yaml:"service,omitempty" mapstructure:"service,omitempty"`
// Add additional sidecar containers to the PostgreSQL read only pod(s)
Sidecars []interface{} `json:"sidecars,omitempty" yaml:"sidecars,omitempty" mapstructure:"sidecars,omitempty"`
// StartupProbe corresponds to the JSON schema field "startupProbe".
StartupProbe *ValuesReadReplicasStartupProbe `json:"startupProbe,omitempty" yaml:"startupProbe,omitempty" mapstructure:"startupProbe,omitempty"`
// Seconds PostgreSQL read only pod needs to terminate gracefully
TerminationGracePeriodSeconds string `` /* 148-byte string literal not displayed */
// Tolerations for PostgreSQL read only pods assignment
Tolerations []interface{} `json:"tolerations,omitempty" yaml:"tolerations,omitempty" mapstructure:"tolerations,omitempty"`
// Topology Spread Constraints for pod assignment spread across your cluster among
// failure-domains. Evaluated as a template
TopologySpreadConstraints []interface{} `` /* 136-byte string literal not displayed */
// UpdateStrategy corresponds to the JSON schema field "updateStrategy".
UpdateStrategy *ValuesReadReplicasUpdateStrategy `json:"updateStrategy,omitempty" yaml:"updateStrategy,omitempty" mapstructure:"updateStrategy,omitempty"`
}
type ValuesReadReplicasAffinity ¶
type ValuesReadReplicasAffinity map[string]interface{}
Affinity for PostgreSQL read only pods assignment
type ValuesReadReplicasAnnotations ¶
type ValuesReadReplicasAnnotations map[string]interface{}
Annotations for PostgreSQL read only pods
type ValuesReadReplicasContainerSecurityContext ¶
type ValuesReadReplicasContainerSecurityContext struct {
// Set container's Security Context allowPrivilegeEscalation
AllowPrivilegeEscalation bool `` /* 133-byte string literal not displayed */
// Capabilities corresponds to the JSON schema field "capabilities".
Capabilities *ValuesReadReplicasContainerSecurityContextCapabilities `json:"capabilities,omitempty" yaml:"capabilities,omitempty" mapstructure:"capabilities,omitempty"`
// Enabled containers' Security Context
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Set container's Security Context privileged
Privileged bool `json:"privileged,omitempty" yaml:"privileged,omitempty" mapstructure:"privileged,omitempty"`
// Set container's Security Context readOnlyRootFilesystem
ReadOnlyRootFilesystem bool `` /* 127-byte string literal not displayed */
// Set containers' Security Context runAsGroup
RunAsGroup float64 `json:"runAsGroup,omitempty" yaml:"runAsGroup,omitempty" mapstructure:"runAsGroup,omitempty"`
// Set container's Security Context runAsNonRoot
RunAsNonRoot bool `json:"runAsNonRoot,omitempty" yaml:"runAsNonRoot,omitempty" mapstructure:"runAsNonRoot,omitempty"`
// Set containers' Security Context runAsUser
RunAsUser float64 `json:"runAsUser,omitempty" yaml:"runAsUser,omitempty" mapstructure:"runAsUser,omitempty"`
// SeccompProfile corresponds to the JSON schema field "seccompProfile".
SeccompProfile *ValuesReadReplicasContainerSecurityContextSeccompProfile `json:"seccompProfile,omitempty" yaml:"seccompProfile,omitempty" mapstructure:"seccompProfile,omitempty"`
}
type ValuesReadReplicasContainerSecurityContextCapabilities ¶
type ValuesReadReplicasContainerSecurityContextCapabilities struct {
// List of capabilities to be dropped
Drop []string `json:"drop,omitempty" yaml:"drop,omitempty" mapstructure:"drop,omitempty"`
}
type ValuesReadReplicasContainerSecurityContextSeccompProfile ¶
type ValuesReadReplicasContainerSecurityContextSeccompProfile struct {
// Set container's Security Context seccomp profile
Type string `json:"type,omitempty" yaml:"type,omitempty" mapstructure:"type,omitempty"`
}
type ValuesReadReplicasCustomLivenessProbe ¶
type ValuesReadReplicasCustomLivenessProbe map[string]interface{}
Custom livenessProbe that overrides the default one
type ValuesReadReplicasCustomReadinessProbe ¶
type ValuesReadReplicasCustomReadinessProbe map[string]interface{}
Custom readinessProbe that overrides the default one
type ValuesReadReplicasCustomStartupProbe ¶
type ValuesReadReplicasCustomStartupProbe map[string]interface{}
Custom startupProbe that overrides the default one
type ValuesReadReplicasExtraPodSpec ¶
type ValuesReadReplicasExtraPodSpec map[string]interface{}
Optionally specify extra PodSpec for the PostgreSQL read only pod(s)
type ValuesReadReplicasLabels ¶
type ValuesReadReplicasLabels map[string]interface{}
Map of labels to add to the statefulset (PostgreSQL read only)
type ValuesReadReplicasLifecycleHooks ¶
type ValuesReadReplicasLifecycleHooks map[string]interface{}
for the PostgreSQL read only container to automate configuration before or after startup
type ValuesReadReplicasLivenessProbe ¶
type ValuesReadReplicasLivenessProbe struct {
// Enable livenessProbe on PostgreSQL read only containers
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Failure threshold for livenessProbe
FailureThreshold float64 `json:"failureThreshold,omitempty" yaml:"failureThreshold,omitempty" mapstructure:"failureThreshold,omitempty"`
// Initial delay seconds for livenessProbe
InitialDelaySeconds float64 `json:"initialDelaySeconds,omitempty" yaml:"initialDelaySeconds,omitempty" mapstructure:"initialDelaySeconds,omitempty"`
// Period seconds for livenessProbe
PeriodSeconds float64 `json:"periodSeconds,omitempty" yaml:"periodSeconds,omitempty" mapstructure:"periodSeconds,omitempty"`
// Success threshold for livenessProbe
SuccessThreshold float64 `json:"successThreshold,omitempty" yaml:"successThreshold,omitempty" mapstructure:"successThreshold,omitempty"`
// Timeout seconds for livenessProbe
TimeoutSeconds float64 `json:"timeoutSeconds,omitempty" yaml:"timeoutSeconds,omitempty" mapstructure:"timeoutSeconds,omitempty"`
}
type ValuesReadReplicasNetworkPolicy ¶
type ValuesReadReplicasNetworkPolicy struct {
// Don't require server label for connections
AllowExternal bool `json:"allowExternal,omitempty" yaml:"allowExternal,omitempty" mapstructure:"allowExternal,omitempty"`
// Allow the pod to access any range of port and all destinations.
AllowExternalEgress bool `json:"allowExternalEgress,omitempty" yaml:"allowExternalEgress,omitempty" mapstructure:"allowExternalEgress,omitempty"`
// Specifies whether a NetworkPolicy should be created
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Add extra ingress rules to the NetworkPolicy
ExtraEgress []string `json:"extraEgress,omitempty" yaml:"extraEgress,omitempty" mapstructure:"extraEgress,omitempty"`
// Add extra ingress rules to the NetworkPolice
ExtraIngress []string `json:"extraIngress,omitempty" yaml:"extraIngress,omitempty" mapstructure:"extraIngress,omitempty"`
}
type ValuesReadReplicasNodeAffinityPreset ¶
type ValuesReadReplicasNodeAffinityPreset struct {
// PostgreSQL read only node label key to match Ignored if `primary.affinity` is
// set.
Key string `json:"key,omitempty" yaml:"key,omitempty" mapstructure:"key,omitempty"`
// PostgreSQL read only node affinity preset type. Ignored if `primary.affinity`
// is set. Allowed values: `soft` or `hard`
Type string `json:"type,omitempty" yaml:"type,omitempty" mapstructure:"type,omitempty"`
// PostgreSQL read only node label values to match. Ignored if `primary.affinity`
// is set.
Values []interface{} `json:"values,omitempty" yaml:"values,omitempty" mapstructure:"values,omitempty"`
}
type ValuesReadReplicasNodeSelector ¶
type ValuesReadReplicasNodeSelector map[string]interface{}
Node labels for PostgreSQL read only pods assignment
type ValuesReadReplicasPersistence ¶
type ValuesReadReplicasPersistence struct {
// PVC Access Mode for PostgreSQL volume
AccessModes []string `json:"accessModes,omitempty" yaml:"accessModes,omitempty" mapstructure:"accessModes,omitempty"`
// Annotations for the PVC
Annotations ValuesReadReplicasPersistenceAnnotations `json:"annotations,omitempty" yaml:"annotations,omitempty" mapstructure:"annotations,omitempty"`
// Custom PVC data source
DataSource ValuesReadReplicasPersistenceDataSource `json:"dataSource,omitempty" yaml:"dataSource,omitempty" mapstructure:"dataSource,omitempty"`
// Enable PostgreSQL read only data persistence using PVC
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Name of an existing PVC to use
ExistingClaim string `json:"existingClaim,omitempty" yaml:"existingClaim,omitempty" mapstructure:"existingClaim,omitempty"`
// Labels for the PVC
Labels ValuesReadReplicasPersistenceLabels `json:"labels,omitempty" yaml:"labels,omitempty" mapstructure:"labels,omitempty"`
// The path the volume will be mounted at
MountPath string `json:"mountPath,omitempty" yaml:"mountPath,omitempty" mapstructure:"mountPath,omitempty"`
// Selector to match an existing Persistent Volume (this value is evaluated as a
// template)
Selector ValuesReadReplicasPersistenceSelector `json:"selector,omitempty" yaml:"selector,omitempty" mapstructure:"selector,omitempty"`
// PVC Storage Request for PostgreSQL volume
Size string `json:"size,omitempty" yaml:"size,omitempty" mapstructure:"size,omitempty"`
// PVC Storage Class for PostgreSQL read only data volume
StorageClass string `json:"storageClass,omitempty" yaml:"storageClass,omitempty" mapstructure:"storageClass,omitempty"`
// The subdirectory of the volume to mount to
SubPath string `json:"subPath,omitempty" yaml:"subPath,omitempty" mapstructure:"subPath,omitempty"`
}
type ValuesReadReplicasPersistenceAnnotations ¶
type ValuesReadReplicasPersistenceAnnotations map[string]interface{}
Annotations for the PVC
type ValuesReadReplicasPersistenceDataSource ¶
type ValuesReadReplicasPersistenceDataSource map[string]interface{}
Custom PVC data source
type ValuesReadReplicasPersistenceLabels ¶
type ValuesReadReplicasPersistenceLabels map[string]interface{}
Labels for the PVC
type ValuesReadReplicasPersistenceSelector ¶
type ValuesReadReplicasPersistenceSelector map[string]interface{}
Selector to match an existing Persistent Volume (this value is evaluated as a template)
type ValuesReadReplicasPersistentVolumeClaimRetentionPolicy ¶
type ValuesReadReplicasPersistentVolumeClaimRetentionPolicy struct {
// Enable Persistent volume retention policy for read only Statefulset
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Volume retention behavior that applies when the StatefulSet is deleted
WhenDeleted string `json:"whenDeleted,omitempty" yaml:"whenDeleted,omitempty" mapstructure:"whenDeleted,omitempty"`
// Volume retention behavior when the replica count of the StatefulSet is reduced
WhenScaled string `json:"whenScaled,omitempty" yaml:"whenScaled,omitempty" mapstructure:"whenScaled,omitempty"`
}
type ValuesReadReplicasPodAnnotations ¶
type ValuesReadReplicasPodAnnotations map[string]interface{}
Map of annotations to add to the pods (PostgreSQL read only)
type ValuesReadReplicasPodLabels ¶
type ValuesReadReplicasPodLabels map[string]interface{}
Map of labels to add to the pods (PostgreSQL read only)
type ValuesReadReplicasPodSecurityContext ¶
type ValuesReadReplicasPodSecurityContext struct {
// Enable security context
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Group ID for the pod
FsGroup float64 `json:"fsGroup,omitempty" yaml:"fsGroup,omitempty" mapstructure:"fsGroup,omitempty"`
// Set filesystem group change policy
FsGroupChangePolicy string `json:"fsGroupChangePolicy,omitempty" yaml:"fsGroupChangePolicy,omitempty" mapstructure:"fsGroupChangePolicy,omitempty"`
// Set filesystem extra groups
SupplementalGroups []interface{} `json:"supplementalGroups,omitempty" yaml:"supplementalGroups,omitempty" mapstructure:"supplementalGroups,omitempty"`
// Set kernel settings using the sysctl interface
Sysctls []interface{} `json:"sysctls,omitempty" yaml:"sysctls,omitempty" mapstructure:"sysctls,omitempty"`
}
type ValuesReadReplicasReadinessProbe ¶
type ValuesReadReplicasReadinessProbe struct {
// Enable readinessProbe on PostgreSQL read only containers
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Failure threshold for readinessProbe
FailureThreshold float64 `json:"failureThreshold,omitempty" yaml:"failureThreshold,omitempty" mapstructure:"failureThreshold,omitempty"`
// Initial delay seconds for readinessProbe
InitialDelaySeconds float64 `json:"initialDelaySeconds,omitempty" yaml:"initialDelaySeconds,omitempty" mapstructure:"initialDelaySeconds,omitempty"`
// Period seconds for readinessProbe
PeriodSeconds float64 `json:"periodSeconds,omitempty" yaml:"periodSeconds,omitempty" mapstructure:"periodSeconds,omitempty"`
// Success threshold for readinessProbe
SuccessThreshold float64 `json:"successThreshold,omitempty" yaml:"successThreshold,omitempty" mapstructure:"successThreshold,omitempty"`
// Timeout seconds for readinessProbe
TimeoutSeconds float64 `json:"timeoutSeconds,omitempty" yaml:"timeoutSeconds,omitempty" mapstructure:"timeoutSeconds,omitempty"`
}
type ValuesReadReplicasResources ¶
type ValuesReadReplicasResources map[string]interface{}
Set container requests and limits for different resources like CPU or memory (essential for production workloads)
type ValuesReadReplicasService ¶
type ValuesReadReplicasService struct {
// Annotations for PostgreSQL read only service
Annotations ValuesReadReplicasServiceAnnotations `json:"annotations,omitempty" yaml:"annotations,omitempty" mapstructure:"annotations,omitempty"`
// Static clusterIP or None for headless services
ClusterIP string `json:"clusterIP,omitempty" yaml:"clusterIP,omitempty" mapstructure:"clusterIP,omitempty"`
// Enable client source IP preservation
ExternalTrafficPolicy string `json:"externalTrafficPolicy,omitempty" yaml:"externalTrafficPolicy,omitempty" mapstructure:"externalTrafficPolicy,omitempty"`
// Extra ports to expose in the PostgreSQL read only service
ExtraPorts []interface{} `json:"extraPorts,omitempty" yaml:"extraPorts,omitempty" mapstructure:"extraPorts,omitempty"`
// Headless corresponds to the JSON schema field "headless".
Headless *ValuesReadReplicasServiceHeadless `json:"headless,omitempty" yaml:"headless,omitempty" mapstructure:"headless,omitempty"`
// Load balancer IP if service type is `LoadBalancer`
LoadBalancerIP string `json:"loadBalancerIP,omitempty" yaml:"loadBalancerIP,omitempty" mapstructure:"loadBalancerIP,omitempty"`
// Addresses that are allowed when service is LoadBalancer
LoadBalancerSourceRanges []interface{} `` /* 133-byte string literal not displayed */
// NodePorts corresponds to the JSON schema field "nodePorts".
NodePorts *ValuesReadReplicasServiceNodePorts `json:"nodePorts,omitempty" yaml:"nodePorts,omitempty" mapstructure:"nodePorts,omitempty"`
// Ports corresponds to the JSON schema field "ports".
Ports *ValuesReadReplicasServicePorts `json:"ports,omitempty" yaml:"ports,omitempty" mapstructure:"ports,omitempty"`
// Session Affinity for Kubernetes service, can be "None" or "ClientIP"
SessionAffinity string `json:"sessionAffinity,omitempty" yaml:"sessionAffinity,omitempty" mapstructure:"sessionAffinity,omitempty"`
// Additional settings for the sessionAffinity
SessionAffinityConfig ValuesReadReplicasServiceSessionAffinityConfig `json:"sessionAffinityConfig,omitempty" yaml:"sessionAffinityConfig,omitempty" mapstructure:"sessionAffinityConfig,omitempty"`
// Kubernetes Service type
Type string `json:"type,omitempty" yaml:"type,omitempty" mapstructure:"type,omitempty"`
}
type ValuesReadReplicasServiceAnnotations ¶
type ValuesReadReplicasServiceAnnotations map[string]interface{}
Annotations for PostgreSQL read only service
type ValuesReadReplicasServiceHeadless ¶
type ValuesReadReplicasServiceHeadless struct {
// Additional custom annotations for headless PostgreSQL read only service
Annotations ValuesReadReplicasServiceHeadlessAnnotations `json:"annotations,omitempty" yaml:"annotations,omitempty" mapstructure:"annotations,omitempty"`
}
type ValuesReadReplicasServiceHeadlessAnnotations ¶
type ValuesReadReplicasServiceHeadlessAnnotations map[string]interface{}
Additional custom annotations for headless PostgreSQL read only service
type ValuesReadReplicasServiceNodePorts ¶
type ValuesReadReplicasServiceNodePorts struct {
// Node port for PostgreSQL
Postgresql string `json:"postgresql,omitempty" yaml:"postgresql,omitempty" mapstructure:"postgresql,omitempty"`
}
type ValuesReadReplicasServicePorts ¶
type ValuesReadReplicasServicePorts struct {
// PostgreSQL service port
Postgresql float64 `json:"postgresql,omitempty" yaml:"postgresql,omitempty" mapstructure:"postgresql,omitempty"`
}
type ValuesReadReplicasServiceSessionAffinityConfig ¶
type ValuesReadReplicasServiceSessionAffinityConfig map[string]interface{}
Additional settings for the sessionAffinity
type ValuesReadReplicasStartupProbe ¶
type ValuesReadReplicasStartupProbe struct {
// Enable startupProbe on PostgreSQL read only containers
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Failure threshold for startupProbe
FailureThreshold float64 `json:"failureThreshold,omitempty" yaml:"failureThreshold,omitempty" mapstructure:"failureThreshold,omitempty"`
// Initial delay seconds for startupProbe
InitialDelaySeconds float64 `json:"initialDelaySeconds,omitempty" yaml:"initialDelaySeconds,omitempty" mapstructure:"initialDelaySeconds,omitempty"`
// Period seconds for startupProbe
PeriodSeconds float64 `json:"periodSeconds,omitempty" yaml:"periodSeconds,omitempty" mapstructure:"periodSeconds,omitempty"`
// Success threshold for startupProbe
SuccessThreshold float64 `json:"successThreshold,omitempty" yaml:"successThreshold,omitempty" mapstructure:"successThreshold,omitempty"`
// Timeout seconds for startupProbe
TimeoutSeconds float64 `json:"timeoutSeconds,omitempty" yaml:"timeoutSeconds,omitempty" mapstructure:"timeoutSeconds,omitempty"`
}
type ValuesReadReplicasUpdateStrategy ¶
type ValuesReadReplicasUpdateStrategy struct {
// PostgreSQL read only statefulset rolling update configuration parameters
RollingUpdate ValuesReadReplicasUpdateStrategyRollingUpdate `json:"rollingUpdate,omitempty" yaml:"rollingUpdate,omitempty" mapstructure:"rollingUpdate,omitempty"`
// PostgreSQL read only statefulset strategy type
Type string `json:"type,omitempty" yaml:"type,omitempty" mapstructure:"type,omitempty"`
}
type ValuesReadReplicasUpdateStrategyRollingUpdate ¶
type ValuesReadReplicasUpdateStrategyRollingUpdate map[string]interface{}
PostgreSQL read only statefulset rolling update configuration parameters
type ValuesReplication ¶
type ValuesReplication struct {
// Cluster application name. Useful for advanced replication settings
ApplicationName string `json:"applicationName,omitempty" yaml:"applicationName,omitempty" mapstructure:"applicationName,omitempty"`
// Number of replicas that will have synchronous replication. Note: Cannot be
// greater than `readReplicas.replicaCount`.
NumSynchronousReplicas float64 `` /* 127-byte string literal not displayed */
// Set synchronous commit mode. Allowed values: `on`, `remote_apply`,
// `remote_write`, `local` and `off`
SynchronousCommit string `json:"synchronousCommit,omitempty" yaml:"synchronousCommit,omitempty" mapstructure:"synchronousCommit,omitempty"`
}
type ValuesServiceAccount ¶
type ValuesServiceAccount struct {
// Additional custom annotations for the ServiceAccount
Annotations ValuesServiceAccountAnnotations `json:"annotations,omitempty" yaml:"annotations,omitempty" mapstructure:"annotations,omitempty"`
// Allows auto mount of ServiceAccountToken on the serviceAccount created
AutomountServiceAccountToken bool `` /* 145-byte string literal not displayed */
// Enable creation of ServiceAccount for PostgreSQL pod
Create bool `json:"create,omitempty" yaml:"create,omitempty" mapstructure:"create,omitempty"`
// The name of the ServiceAccount to use.
Name string `json:"name,omitempty" yaml:"name,omitempty" mapstructure:"name,omitempty"`
}
type ValuesServiceAccountAnnotations ¶
type ValuesServiceAccountAnnotations map[string]interface{}
Additional custom annotations for the ServiceAccount
type ValuesServiceBindings ¶
type ValuesServiceBindings struct {
// Create secret for service binding (Experimental)
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
}
type ValuesShmVolume ¶
type ValuesShmVolume struct {
// Enable emptyDir volume for /dev/shm for PostgreSQL pod(s)
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Set this to enable a size limit on the shm tmpfs
SizeLimit string `json:"sizeLimit,omitempty" yaml:"sizeLimit,omitempty" mapstructure:"sizeLimit,omitempty"`
}
type ValuesTls ¶
type ValuesTls struct {
// Generate automatically self-signed TLS certificates
AutoGenerated bool `json:"autoGenerated,omitempty" yaml:"autoGenerated,omitempty" mapstructure:"autoGenerated,omitempty"`
// CA Certificate filename
CertCAFilename string `json:"certCAFilename,omitempty" yaml:"certCAFilename,omitempty" mapstructure:"certCAFilename,omitempty"`
// Certificate filename
CertFilename string `json:"certFilename,omitempty" yaml:"certFilename,omitempty" mapstructure:"certFilename,omitempty"`
// Certificate key filename
CertKeyFilename string `json:"certKeyFilename,omitempty" yaml:"certKeyFilename,omitempty" mapstructure:"certKeyFilename,omitempty"`
// Name of an existing secret that contains the certificates
CertificatesSecret string `json:"certificatesSecret,omitempty" yaml:"certificatesSecret,omitempty" mapstructure:"certificatesSecret,omitempty"`
// File containing a Certificate Revocation List
CrlFilename string `json:"crlFilename,omitempty" yaml:"crlFilename,omitempty" mapstructure:"crlFilename,omitempty"`
// Enable TLS traffic support
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Whether to use the server's TLS cipher preferences rather than the client's
PreferServerCiphers bool `json:"preferServerCiphers,omitempty" yaml:"preferServerCiphers,omitempty" mapstructure:"preferServerCiphers,omitempty"`
}
type ValuesVolumePermissions ¶
type ValuesVolumePermissions struct {
// ContainerSecurityContext corresponds to the JSON schema field
// "containerSecurityContext".
ContainerSecurityContext *ValuesVolumePermissionsContainerSecurityContext `` /* 133-byte string literal not displayed */
// Enable init container that changes the owner and group of the persistent volume
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty" mapstructure:"enabled,omitempty"`
// Image corresponds to the JSON schema field "image".
Image *ValuesVolumePermissionsImage `json:"image,omitempty" yaml:"image,omitempty" mapstructure:"image,omitempty"`
// Set container requests and limits for different resources like CPU or memory
// (essential for production workloads)
Resources ValuesVolumePermissionsResources `json:"resources,omitempty" yaml:"resources,omitempty" mapstructure:"resources,omitempty"`
// Set container resources according to one common preset (allowed values: none,
// nano, small, medium, large, xlarge, 2xlarge). This is ignored if
// volumePermissions.resources is set (volumePermissions.resources is recommended
// for production).
ResourcesPreset string `json:"resourcesPreset,omitempty" yaml:"resourcesPreset,omitempty" mapstructure:"resourcesPreset,omitempty"`
}
type ValuesVolumePermissionsContainerSecurityContext ¶
type ValuesVolumePermissionsContainerSecurityContext struct {
// Group ID for the init container
RunAsGroup float64 `json:"runAsGroup,omitempty" yaml:"runAsGroup,omitempty" mapstructure:"runAsGroup,omitempty"`
// runAsNonRoot for the init container
RunAsNonRoot bool `json:"runAsNonRoot,omitempty" yaml:"runAsNonRoot,omitempty" mapstructure:"runAsNonRoot,omitempty"`
// User ID for the init container
RunAsUser float64 `json:"runAsUser,omitempty" yaml:"runAsUser,omitempty" mapstructure:"runAsUser,omitempty"`
// SeccompProfile corresponds to the JSON schema field "seccompProfile".
SeccompProfile *ValuesVolumePermissionsContainerSecurityContextSeccompProfile `json:"seccompProfile,omitempty" yaml:"seccompProfile,omitempty" mapstructure:"seccompProfile,omitempty"`
}
type ValuesVolumePermissionsContainerSecurityContextSeccompProfile ¶
type ValuesVolumePermissionsContainerSecurityContextSeccompProfile struct {
// seccompProfile.type for the init container
Type string `json:"type,omitempty" yaml:"type,omitempty" mapstructure:"type,omitempty"`
}
type ValuesVolumePermissionsImage ¶
type ValuesVolumePermissionsImage struct {
// Init container volume-permissions image digest in the way sha256:aa.... Please
// note this parameter, if set, will override the tag
Digest string `json:"digest,omitempty" yaml:"digest,omitempty" mapstructure:"digest,omitempty"`
// Init container volume-permissions image pull policy
PullPolicy string `json:"pullPolicy,omitempty" yaml:"pullPolicy,omitempty" mapstructure:"pullPolicy,omitempty"`
// Init container volume-permissions image pull secrets
PullSecrets []interface{} `json:"pullSecrets,omitempty" yaml:"pullSecrets,omitempty" mapstructure:"pullSecrets,omitempty"`
// Init container volume-permissions image registry
Registry string `json:"registry,omitempty" yaml:"registry,omitempty" mapstructure:"registry,omitempty"`
// Init container volume-permissions image repository
Repository string `json:"repository,omitempty" yaml:"repository,omitempty" mapstructure:"repository,omitempty"`
}
type ValuesVolumePermissionsResources ¶
type ValuesVolumePermissionsResources map[string]interface{}
Set container requests and limits for different resources like CPU or memory (essential for production workloads)