Files
chart/library/common/docs/service/README.md
Stavros Kois 929e60d801 NAS-121003 / 23.10 / Adapt charts CI and improve/fix common (#1011)
* Adapt charts CI and improve/fix common

* add check on permissions contaienr

* add postgres template

* update comments

* Update create_app.sh

* add check

* update script

* auto gen item.yaml from Chart,yaml

* rename readme on dest

* duplicate readme from the same source

* correct comment

* reoder

* remove extra space

* keep both README and app-readme

* update regex, to also allow 2 letter names, which is also valid

* No need to check host network if there aren't any pod values

* use same pattern as the pod.name label (not prepending release-name

* update deps

* add chart dirs to ci

* Add a validation to check if there is any yaml errors after merging files

* update charts path on ci

* common/1.0.0/ -> common/

* update common-test dep path

* temp update create_app script

* make permissions container name configurable, incase we want to change order of execution

* update naming convention

* fix typo and a missed name change

* do not allow `--` in names
2023-03-16 17:36:19 +02:00

44 lines
5.8 KiB
Markdown

# Service
| Key | Type | Required | Helm Template | Default | Description |
| :------------------------------------------------------ | :-------: | :------: | :----------------: | :----------------------------------------------: | :------------------------------------------------------------------------------------------------------------------------------------------------ |
| service | `dict` | ❌ | ❌ | `{}` | Define the service as dicts |
| service.[service-name] | `dict` | ✅ | ❌ | `{}` | Holds service definition |
| service.[service-name].enabled | `boolean` | ✅ | ❌ | `false` | Enables or Disables the service |
| service.[service-name].labels | `dict` | ❌ | ✅ (On value only) | `{}` | Additional labels for service |
| service.[service-name].annotations | `dict` | ❌ | ✅ (On value only) | `{}` | Additional annotations for service |
| service.[service-name].type | `string` | ❌ | ✅ | `ClusterIP` | Define the service type (ClusterIP, NodePort) |
| service.[service-name].publishNotReadyAddresses | `boolean` | ❌ | ❌ | `false` | Define whether to publishNotReadyAddresses or not |
| service.[service-name].targetSelector | `string` | ❌ | ❌ | `""` | Define the pod to link the service, by default will use the primary pod |
| service.[service-name].ports | `list` | ✅ | ❌ | `{}` | Define the ports of the service |
| service.[service-name].ports.[port-name] | `dict` | ✅ | ❌ | `{}` | Define the port dict |
| service.[service-name].ports.[port-name].port | `int` | ✅ | ✅ | | Define the port that will be exposed by the service |
| service.[service-name].ports.[port-name].targetPort | `int` | ❌ | ✅ | `[port-name].port` | Define the target port (No named ports, as this will be used to assign the containerPort to containers) |
| service.[service-name].ports.[port-name].protocol | `string` | ❌ | ✅ | `{{ .Values.fallbackDefaults.serviceProtocol }}` | Define the port protocol (http, https, tcp, udp). (Also used by the container ports and probes, http and https are converted to tcp where needed) |
| service.[service-name].ports.[port-name].nodePort | `string` | ❌ | ✅ | | Define the node port |
| service.[service-name].ports.[port-name].hostPort | `string` | ❌ | ❌ | | Define the hostPort, should be **avoided**, unless **ABSOLUTELY** necessary |
| service.[service-name].ports.[port-name].targetSelector | `string` | ❌ | ❌ | | Define the container to link this port (Must be on under the pod linked above) |
> When `targetSelector`(s) is empty, it will define auto-select the primary pod/container
---
Appears in:
- `.Values.service`
---
Naming scheme:
- Primary: `$FullName` (release-name-chart-name)
- Non-Primary: `$FullName-$ServiceName` (release-name-chart-name-ServiceName)
---
> Those are the common `keys` for all **service**.
> Additional keys, information and examples, see on the specific kind of service.
- [ClusterIP](ClusterIP.md)
- [NodePort](NodePort.md)