|
1618 | 1618 | postgresql: { |
1619 | 1619 | '#extensions':: d.obj(help='"The configuration of the extensions to be added"'), |
1620 | 1620 | extensions: { |
| 1621 | + '#env':: d.obj(help='"Env is a list of custom environment variables to be set in the\\nPostgreSQL process for this extension. It is the responsibility of the\\ncluster administrator to ensure the variables are correct for the\\nspecific extension. Note that changes to these variables require\\na manual cluster restart to take effect."'), |
| 1622 | + env: { |
| 1623 | + '#withName':: d.fn(help='"Name of the environment variable to be injected into the\\nPostgreSQL process."', args=[d.arg(name='name', type=d.T.string)]), |
| 1624 | + withName(name): { name: name }, |
| 1625 | + '#withValue':: d.fn(help="\"Value of the environment variable. CloudNativePG performs a direct\\nreplacement of this value, with support for placeholder expansion.\\nThe ${`image_root`} placeholder resolves to the absolute mount path\\nof the extension's volume (e.g., `/extensions/my-extension`). This\\nis particularly useful for allowing applications or libraries to\\nlocate specific directories within the mounted image.\\nUnrecognized placeholders are rejected. To include a literal ${...}\\nin the value, escape it as $${...}.\"", args=[d.arg(name='value', type=d.T.string)]), |
| 1626 | + withValue(value): { value: value }, |
| 1627 | + }, |
1621 | 1628 | '#image':: d.obj(help='"The image containing the extension."'), |
1622 | 1629 | image: { |
1623 | 1630 | '#withPullPolicy':: d.fn(help="\"Policy for pulling OCI objects. Possible values are:\\nAlways: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.\\nNever: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.\\nIfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails.\\nDefaults to Always if :latest tag is specified, or IfNotPresent otherwise.\"", args=[d.arg(name='pullPolicy', type=d.T.string)]), |
1624 | 1631 | withPullPolicy(pullPolicy): { image+: { pullPolicy: pullPolicy } }, |
1625 | 1632 | '#withReference':: d.fn(help='"Required: Image or artifact reference to be used.\\nBehaves in the same way as pod.spec.containers[*].image.\\nPull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets.\\nMore info: https://kubernetes.io/docs/concepts/containers/images\\nThis field is optional to allow higher level config management to default or override\\ncontainer images in workload controllers like Deployments and StatefulSets."', args=[d.arg(name='reference', type=d.T.string)]), |
1626 | 1633 | withReference(reference): { image+: { reference: reference } }, |
1627 | 1634 | }, |
| 1635 | + '#withBin_path':: d.fn(help="\"A list of directories within the image to be appended to the\\nPostgreSQL process's `PATH` environment variable.\"", args=[d.arg(name='bin_path', type=d.T.array)]), |
| 1636 | + withBin_path(bin_path): { bin_path: if std.isArray(v=bin_path) then bin_path else [bin_path] }, |
| 1637 | + '#withBin_pathMixin':: d.fn(help="\"A list of directories within the image to be appended to the\\nPostgreSQL process's `PATH` environment variable.\"\n\n**Note:** This function appends passed data to existing values", args=[d.arg(name='bin_path', type=d.T.array)]), |
| 1638 | + withBin_pathMixin(bin_path): { bin_path+: if std.isArray(v=bin_path) then bin_path else [bin_path] }, |
1628 | 1639 | '#withDynamic_library_path':: d.fn(help='"The list of directories inside the image which should be added to dynamic_library_path.\\nIf not defined, defaults to \\"/lib\\"."', args=[d.arg(name='dynamic_library_path', type=d.T.array)]), |
1629 | 1640 | withDynamic_library_path(dynamic_library_path): { dynamic_library_path: if std.isArray(v=dynamic_library_path) then dynamic_library_path else [dynamic_library_path] }, |
1630 | 1641 | '#withDynamic_library_pathMixin':: d.fn(help='"The list of directories inside the image which should be added to dynamic_library_path.\\nIf not defined, defaults to \\"/lib\\"."\n\n**Note:** This function appends passed data to existing values', args=[d.arg(name='dynamic_library_path', type=d.T.array)]), |
1631 | 1642 | withDynamic_library_pathMixin(dynamic_library_path): { dynamic_library_path+: if std.isArray(v=dynamic_library_path) then dynamic_library_path else [dynamic_library_path] }, |
| 1643 | + '#withEnv':: d.fn(help='"Env is a list of custom environment variables to be set in the\\nPostgreSQL process for this extension. It is the responsibility of the\\ncluster administrator to ensure the variables are correct for the\\nspecific extension. Note that changes to these variables require\\na manual cluster restart to take effect."', args=[d.arg(name='env', type=d.T.array)]), |
| 1644 | + withEnv(env): { env: if std.isArray(v=env) then env else [env] }, |
| 1645 | + '#withEnvMixin':: d.fn(help='"Env is a list of custom environment variables to be set in the\\nPostgreSQL process for this extension. It is the responsibility of the\\ncluster administrator to ensure the variables are correct for the\\nspecific extension. Note that changes to these variables require\\na manual cluster restart to take effect."\n\n**Note:** This function appends passed data to existing values', args=[d.arg(name='env', type=d.T.array)]), |
| 1646 | + withEnvMixin(env): { env+: if std.isArray(v=env) then env else [env] }, |
1632 | 1647 | '#withExtension_control_path':: d.fn(help='"The list of directories inside the image which should be added to extension_control_path.\\nIf not defined, defaults to \\"/share\\"."', args=[d.arg(name='extension_control_path', type=d.T.array)]), |
1633 | 1648 | withExtension_control_path(extension_control_path): { extension_control_path: if std.isArray(v=extension_control_path) then extension_control_path else [extension_control_path] }, |
1634 | 1649 | '#withExtension_control_pathMixin':: d.fn(help='"The list of directories inside the image which should be added to extension_control_path.\\nIf not defined, defaults to \\"/share\\"."\n\n**Note:** This function appends passed data to existing values', args=[d.arg(name='extension_control_path', type=d.T.array)]), |
|
2435 | 2450 | withPriorityClassName(priorityClassName): { spec+: { priorityClassName: priorityClassName } }, |
2436 | 2451 | '#withSchedulerName':: d.fn(help='"If specified, the pod will be dispatched by specified Kubernetes\\nscheduler. If not specified, the pod will be dispatched by the default\\nscheduler. More info:\\nhttps://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/"', args=[d.arg(name='schedulerName', type=d.T.string)]), |
2437 | 2452 | withSchedulerName(schedulerName): { spec+: { schedulerName: schedulerName } }, |
| 2453 | + '#withServiceAccountName':: d.fn(help='"Name of an existing ServiceAccount in the same namespace to use for the cluster.\\nWhen specified, the operator will not create a new ServiceAccount\\nbut will use the provided one. This is useful for sharing a single\\nServiceAccount across multiple clusters (e.g., for cloud IAM configurations).\\nIf not specified, a ServiceAccount will be created with the cluster name.\\nMutually exclusive with ServiceAccountTemplate."', args=[d.arg(name='serviceAccountName', type=d.T.string)]), |
| 2454 | + withServiceAccountName(serviceAccountName): { spec+: { serviceAccountName: serviceAccountName } }, |
2438 | 2455 | '#withSmartShutdownTimeout':: d.fn(help='"The time in seconds that controls the window of time reserved for the smart shutdown of Postgres to complete.\\nMake sure you reserve enough time for the operator to request a fast shutdown of Postgres\\n(that is: `stopDelay` - `smartShutdownTimeout`). Default is 180 seconds."', args=[d.arg(name='smartShutdownTimeout', type=d.T.integer)]), |
2439 | 2456 | withSmartShutdownTimeout(smartShutdownTimeout): { spec+: { smartShutdownTimeout: smartShutdownTimeout } }, |
2440 | 2457 | '#withStartDelay':: d.fn(help='"The time in seconds that is allowed for a PostgreSQL instance to\\nsuccessfully start up (default 3600).\\nThe startup probe failure threshold is derived from this value using the formula:\\nceiling(startDelay / 10)."', args=[d.arg(name='startDelay', type=d.T.integer)]), |
|
0 commit comments