mirror of
https://github.com/bjw-s-labs/helm-charts.git
synced 2025-07-04 17:07:04 +02:00
50 lines
4.7 KiB
Markdown
50 lines
4.7 KiB
Markdown
# Names
|
||
|
||
### Configuration
|
||
|
||
Each resource that can be created by the Common library supports the following fields to control the generated resource name, along with the resource identifier.
|
||
|
||
All of these fields support the use of Helm templates for advanced naming requirements.
|
||
|
||
#### forceRename
|
||
|
||
Override the default resource name entirely.
|
||
|
||
!!! info
|
||
The `forceRename` field is mutually exclusive with the `prefix` and `suffix` fields.
|
||
|
||
#### prefix
|
||
|
||
Prefix to prepend to the resource name. Will not be added if the resource name already starts with the prefix.
|
||
|
||
#### suffix
|
||
|
||
Suffix to append to the resource name. Will not be added if the resource name already ends with the suffix. Defaults to the resource identifier if there are multiple enabled items, otherwise it defaults to an empty value.
|
||
|
||
### Behavior
|
||
|
||
By default, all resource names are based on the `bjw-s.common.lib.chart.names.fullname` template which defaults to the Helm Release name. This template can be further controlled by the `global.nameOverride` and `global.fullnameOverride` values.
|
||
|
||
The resource identifier (key) is only appended when there are multiple resources of the same kind or if the value `global.alwaysAppendIdentifierToResourceName` is set to `true`.
|
||
|
||
!!! info
|
||
When the resource name already equals the identifier or if the identifier suffix is already present, it will not be added a second time. This is to prevent names like `vaultwarden-vaultwarden`
|
||
|
||
Assuming a Helm Release with the name `base_name`, the following table gives an overview of how the resource name is generated:
|
||
|
||
| `forceRename` | Enabled items | Always append identifier | `identifier` | `prefix` | `suffix` | Expected name | Notes |
|
||
|------------------------------|---------------|--------------------------|---------------|---------------|-------------|-------------------------------|--------------------------------------------------|
|
||
| `custom-name` | | | | | | `custom-name` | Force rename overrides all logic |
|
||
| `"{{ .Release.Namespace }}"` | | | | | | `default` | Force rename with a template overrides all logic |
|
||
| | 1 | | `abc` | | | `base_name` | Base case, no additional configuration |
|
||
| | 1 | | `abc` | `team` | | `team-base_name` | Prefix added |
|
||
| | 1 | | `abc` | `base_name` | | `base_name` | Prefix equal to fullname – skipped |
|
||
| | 1 | | `abc` | | `svc` | `base_name-svc` | Suffix added |
|
||
| | 1 | | `abc` | | `base_name` | `base_name` | Suffix equal to fullname - skipped |
|
||
| | 1 | | `abc` | `team` | `svc` | `team-base_name-svc` | Prefix + suffix, no identifier |
|
||
| | 1 | `true` | `abc` | | | `base_name-abc` | identifier suffix via global flag |
|
||
| | 1 | `true` | `abc` | `team` | `svc` | `team-base_name-abc-svc` | Prefix + identifier + suffix via global flag |
|
||
| | 2 | | `abc` | | | `base_name-abc` | Identifier due to itemCount > 1 |
|
||
| | 2 | | `abc` | `team` | `svc` | `team-base_name-abc-svc` | Prefix + Identifier + Suffix |
|
||
| | 2 | | `base_name` | | | `base_name` | Identifier equal to fullname – skipped |
|
||
| | 2 | | `abc` | | `abc` | `base_name-abc` | Suffix skipped – already included by identifer |
|