{"id":25308626,"url":"https://github.com/baloise-incubator/generic-chart","last_synced_at":"2025-04-07T08:59:38.471Z","repository":{"id":109475597,"uuid":"247357268","full_name":"baloise-incubator/generic-chart","owner":"baloise-incubator","description":"General purpose Helm Chart","archived":false,"fork":false,"pushed_at":"2023-12-11T15:01:30.000Z","size":201,"stargazers_count":6,"open_issues_count":0,"forks_count":6,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-13T12:47:35.956Z","etag":null,"topics":["gitops","helm-chart"],"latest_commit_sha":null,"homepage":null,"language":"Mustache","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/baloise-incubator.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2020-03-14T21:39:36.000Z","updated_at":"2024-10-01T04:59:19.000Z","dependencies_parsed_at":"2023-12-11T16:26:02.652Z","dependency_job_id":"cc64a2b3-4faf-4e22-a841-58a4d2c86ec1","html_url":"https://github.com/baloise-incubator/generic-chart","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baloise-incubator%2Fgeneric-chart","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baloise-incubator%2Fgeneric-chart/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baloise-incubator%2Fgeneric-chart/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baloise-incubator%2Fgeneric-chart/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/baloise-incubator","download_url":"https://codeload.github.com/baloise-incubator/generic-chart/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247623009,"owners_count":20968574,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gitops","helm-chart"],"created_at":"2025-02-13T12:34:32.967Z","updated_at":"2025-04-07T08:59:38.443Z","avatar_url":"https://github.com/baloise-incubator.png","language":"Mustache","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Generic Helm Chart\n\nThis chart is a template for common Kubernetes resource manifests, which should cover most use cases. Please read\nthrough the list of possible configuration parameters. If you miss a specific feature, you can easily add it via a pull\nrequest. If you don't think you can do that, just create a JIRA issue in the Container Platform Team JIRA project (Key:\nCOP)\n\n## Change Log\n\nIn [CHANGELOG.md](./CHANGELOG.md) are all changes since version `1.0.0` tracked with the corresponding **migration\nguides**.\n\n## Examples\n\nYou can find an example setup using the generic-chart in the [examples directory](./examples/). If you search of a more\nspecific use-case, have a look at the test values.yaml in the [tests/](./tests) directory.\n\n## Configuration\n\n|                                             Parameter | Description                                                                                                                                                                                                                                  | Default                          |\n|------------------------------------------------------:|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:---------------------------------|\n|                                      **replicaCount** | Amount of `Pod` replicas                                                                                                                                                                                                                     | `1`                              |\n|                                       **topologyKey** | topologyKey                                                                                                                                                                                                                                  | ``                               |\n|                              **revisionHistoryLimit** | Amount of old `ReplicaSets` for this `Deployment` should be retained                                                                                                                                                                         | `1`                              |\n|                                  **image.repository** | URL to the container registry with organisation and repository                                                                                                                                                                               | `nil`                            |\n|                                         **image.tag** | Image tag of the provided container repository                                                                                                                                                                                               | `nil`                            |\n|                                  **image.pullPolicy** | The pull policy when a image should be pulled (`IfNotPresent`, `Always`)                                                                                                                                                                     | `IfNotPresent`                   |\n|                                  **imagePullSecrets** | Reference a `Secret` which should be use to authenticate against a container registry                                                                                                                                                        | `nil`                            |\n|                                      **nameOverride** | Override the fullname with this name                                                                                                                                                                                                         | \"\"                               |\n|                                 **namespaceOverride** | Overrides the namespace in every resource                                                                                                                                                                                                    | `nil`                            |\n|                             **serviceAccount.create** | If a `ServiceAccount` should be created. If `false` a `ServiceAccount` must be provided and configured correctly with its name under `serviceAccount.name`.                                                                                  | `true`                           |\n|                               **serviceAccount.name** | Name of the `ServiceAccount`. If not set and create is true, a name is generated using the name template                                                                                                                                     | `nil`                            |\n|       **serviceAccount.automountServiceAccountToken** | If `true` the `Secret` with the `Token` and `Certificates`  of the `ServiceAccount` is mounted. Only required when access to the master API is necessary                                                                                     | `false`                          |\n|                        **serviceAccount.annotations** | Sets [`annotations`](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/) for the `ServiceAccount`                                                                                                                | `{}`                             |\n|                                           **network** | Map of ports which should be exposed for services type ClusterIP. Adds `ports` section to the Pod template, adds `ports` section to Service and can create `Ingress` or `Route` and `ServiceMonitor` for the ports.                          | `network.http.servicePort: 8080` |\n|                            **network.{}.servicePort** | Port number of the `Service` (e.g. 8080, 8443). If `nil` no port on the `Service` is exposed                                                                                                                                                 | `nil`                            |\n|                          **network.{}.containerPort** | The port which is exposed on the `Pod`. If `nil` corresponds to the `network.{}.servicePort`                                                                                                                                                 | `nil`                            |\n|                                **network.{}.ingress** | If not `nil` creates an `Ingress` or `Route` for the `Service` and its `servicePort`. If set to `{}` see `ingress.zone`                                                                                                                      | `nil`                            |\n|                           **network.{}.ingress.host** | Sets the hostname for the `Ingress` or `Route`. If `nil` see `ingress.zone`                                                                                                                                                                  | `nil`                            |\n|                    **network.{}.ingress.annotations** | Sets [`annotations`](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/) for the `Ingress` or `Route` instance                                                                                                   | `{}`                             |\n|                           **network.{}.ingress.path** | Sets the path for the `Ingress` or `Route` instance                                                                                                                                                                                          | `/`                              |\n|                    **network.{}.ingress.termination** | [TLS termination](https://docs.openshift.com/container-platform/3.11/architecture/networking/routes.html#route-types) for the `Ingress` or `Route` instance. Possible values are `edge`, `passthrough` or `reencrypt`                        | `edge`                           |\n|      **network.{}.ingress.enableIstioIngressGateway** | Publish this service outside service mesh                                                                                                                                                                                                    | `false`                          |\n|                       **network.{}.ingress.addAsEnv** | If true, adds `network.{}.ingress.host` as environment variable. Default name is \"INGRESS_HOST_\u003cKEY\u003e\"                                                                                                                                        | `false`                          |\n|                **network.{}.ingress.envNameOverride** | Overrides the generated environment variable name which is set by `network.{}.ingress.addAsEnv`                                                                                                                                              | `nil`                            |\n|      **network.{}.ingress.enableIstioIngressGateway** | Publish this service outside service mesh                                                                                                                                                                                                    | `false`                          |\n|                         **network.{}.serviceMonitor** | If set to `{}` creates a `ServiceMonitor` for the `Service` and its `servicePort` with default values for `interval`,`path` and `scheme`                                                                                                     | `nil`                            |\n|                **network.{}.serviceMonitor.interval** | Interval at which metrics should be scraped                                                                                                                                                                                                  | `30s`                            |\n|                    **network.{}.serviceMonitor.path** | HTTP path to scrape for metrics.                                                                                                                                                                                                             | `/metrics`                       |\n|                  **network.{}.serviceMonitor.scheme** | HTTP scheme to scrape metrics                                                                                                                                                                                                                | `http`                           |\n|             **network.{}.serviceMonitor.extraConfig** | Any additional configuration available under `endpoints` of the `ServiceMonitor`                                                                                                                                                             | `nil`                            |\n|                               **serviceLoadBalancer** | Map of ports which should be exposed for services type LoadBalancer. Adds `ports` section to the Pod template, adds `ports` section to Service and can create                       `ServiceMonitor` for the ports.                          | `nil`                            |\n|                **serviceLoadBalancer.{}.servicePort** | Port number of the `Service` (e.g. 8080, 8443). If `nil` no port on the `Service` is exposed                                                                                                                                                 | `nil`                            |\n|              **serviceLoadBalancer.{}.containerPort** | The port which is exposed on the `Pod`. If `nil` corresponds to the `network.{}.servicePort`                                                                                                                                                 | `nil`                            |\n|             **serviceLoadBalancer.{}.serviceMonitor** | If set to `{}` creates a `ServiceMonitor` for the `Service` and its `servicePort` with default values for `interval`,`path` and `scheme`                                                                                                     | `nil`                            |\n|    **serviceLoadBalancer.{}.serviceMonitor.interval** | Interval at which metrics should be scraped                                                                                                                                                                                                  | `30s`                            |\n|        **serviceLoadBalancer.{}.serviceMonitor.path** | HTTP path to scrape for metrics.                                                                                                                                                                                                             | `/metrics`                       |\n|      **serviceLoadBalancer.{}.serviceMonitor.scheme** | HTTP scheme to scrape metrics                                                                                                                                                                                                                | `http`                           |\n| **serviceLoadBalancer.{}.serviceMonitor.extraConfig** | Any additional configuration available under `endpoints` of the `ServiceMonitor`                                                                                                                                                             | `nil`                            |\n|                             **serviceLoadBalancerIP** | LoadBalancer IP on which service will be exposed\t\t\t\t\t\t\t                                                                                                                                                                                      | `nil`                            |\n|                    **serviceLoadBalancerAnnotations** | Sets [`annotations`](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/) for the LoadBalancer type `Service`\t\t\t\t\t\t\t                                                                                              | `nil`                            |\n|                                      **service.type** | `Service` type (`ClusterIP`, `NodePort`, `ExternalName`)                                                                                                                                                                                     | `ClusterIP`                      |\n|                               **service.annotations** | Sets [`annotations`](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/) for the `Service`                                                                                                                       |                                  |\n|                                **ingress.controller** | Sets the type of the ingress controller (e.g. Route, Ingress)                                                                                                                                                                                | `Route`                          |\n|                                      **ingress.zone** | ***Deprecated***: If set to `ch` or `sh` and `network.{}.ingress.host` is `nil`, the hostname is generated (~ $CHART_NAME-$RELEASE_NAME.$ZONE$ENV.os1.balgroupit.com)                                                                        | `nil`                            |\n|                     **externalSecret.secretStoreRef** | .spec.secretStoreRef of ExternalSecret                                                                                                                                                                                                       | `{}`                             |\n|                             **externalSecret.target** | .spec.target of ExternalSecret                                                                                                                                                                                                               | `externalSecret.target`          |\n|                           **externalSecret.addAsEnv** | Mounts all referenced secret keys as environment variables                                                                                                                                                                                   | `true`                           |\n|                          **externalSecret.mountPath** | If set, mounts all referenced Secret keys as file. Path should NOT end with a `/`.                                                                                                                                                           | `nil`                            |\n|                       **externalSecret.overrideName** | Overrides default name of [`ExternalSecret`](https://external-secrets.io/v0.5.8/api-externalsecret/) or its resulting [`Secret`](https://kubernetes.io/docs/concepts/configuration/secret/)                                                  | `.Release.Name`                  |\n|                               **externalSecret.refs** | References to secrets in HashiCorp Vault                                                                                                                                                                                                     | `[]`                             |\n|                     **externalSecret.refs.vaultPath** | Path to secret in HashiCorp Vault (e.g. secrets/apps/exampleApplication/T/exampleSecret)                                                                                                                                                     | `[]`                             |\n|                      **externalSecret.refs.vaultKey** | Key of the secret in HashiCorp Vault (e.g. password)                                                                                                                                                                                         | `nil`                            |\n|                     **externalSecret.refs.secretKey** | Key for secret in the Kubernetes Secret (e.g. USERNAME). If not defined, `externalSecret.refs.vaultKey` is used.                                                                                                                             | `externalSecret.refs.vaultKey`   |\n|                      **externalSecret.refs.addAsEnv** | If true, secretKey is mounted as environment variable. Overrides externalSecret.addAsEnv                                                                                                                                                     | `externalSecret.addAsEnv`        |\n|                     **externalSecret.refs.mountPath** | If set, secretKey is mounted as file on given mountPath. Can only overrides externalSecret.mountPath but disable it                                                                                                                          | `externalSecret.mountPath`       |\n|                           **externalSecret.refsFrom** | References to secrets in HashiCorp Vault using all KV-pairs from a specified path                                                                                                                                                            | `[]`                             |\n|                 **externalSecret.refsFrom.vaultPath** | Path to secret in HashiCorp Vault (e.g. secrets/apps/exampleApplication/T/exampleSecret), all contained KV-pairs will be added                                                                                                               | `[]`                             |\n|                                               **env** | List of environment variables for the `Deployment`                                                                                                                                                                                           | `nil`                            |\n|                                           **envFrom** | Set environment variables from a `ConfigMap` or `Secret`. See [`envFrom`](https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/#configure-all-key-value-pairs-in-a-configmap-as-container-environment-variables) | `nil`                            |\n|                       **deployment.stateful.enabled** | If true uses [`StatefulSet`](https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/) instead of [`Deployment`](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/)                                        | `false`                          |\n|           **deployment.stateful.podManagementPolicy** | Defines [`podManagementPolicy`](https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#pod-management-policies) for the `StatefulSet`                                                                                        | `OrderedReady`                   |\n|                 **deployment.stateful.servicePerPod** | If `deployment.stateful` is true, a Service per stateful Pod is created. Required for e.g. Remote EJBs                                                                                                                                       | `true`                           |\n|               **deployment.stateful.routePerService** | If `deployment.stateful` is true, a Route per stateful Service is created. Required for e.g. Remote EJBs                                                                                                                                     | `true`                           |\n|                               **deployment.strategy** | Specifies the [`strategy`](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy) used to replace old Pods by new ones                                                                                              | `type: RollingUpdate`            |\n|                               **persistence.enabled** | If `true` a [`PVC`](https://kubernetes.io/docs/concepts/storage/persistent-volumes/) is created                                                                                                                                              | `false`                          |\n|                                  **persistence.name** | The name of the PVC                                                                                                                                                                                                                          | `generic-chart.name`             |\n|                           **persistence.accessModes** | [`accessModes`](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes) of the PVC (ReadWriteOnce, ReadWriteMany)                                                                                                      | `ReadWriteOnce`                  |\n|                          **persistence.storageClass** | [`storageClass`] of the PVC (trident-nfs-snapshot, trident-nfs)                                                                                                                                                                              | `nil`                            |\n|                                  **persistence.size** | Size of the PVC (e.g. 512Mi, 10Gi, 1Ti)                                                                                                                                                                                                      | `nil`                            |\n|                       **persistence.volumeMountPath** | Path where to volume should be mounted (e.g. `/var/data/`). If set, `volumes` and `volumeMounts` are configured                                                                                                                              | `nil`                            |\n|                           **persistence.annotations** | Sets [`annotations`](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/) for the `PersistentVolumeClaim`                                                                                                         | `{}`                             |\n|                                           **volumes** | Set [`Volumes`](https://kubernetes.io/docs/concepts/storage/volumes/) available to the `Pod`                                                                                                                                                 | `[]`                             |\n|                                      **volumeMounts** | Mounts a [`Volume`](https://kubernetes.io/docs/concepts/storage/volumes/) defined in `volumes` in the container.                                                                                                                             | `[]`                             |\n|                                    **readinessProbe** | Defines the [`readinessProbe`](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/)                                                                                                        | `{}`                             |\n|                                     **livenessProbe** | Defines the [`livenessProbe`](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/)                                                                                                         | `{}`                             |\n|                                      **startupProbe** | Defines the [`startupProbe`](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/)                                                                                                          | `{}`                             |\n|                                         **resources** | CPU/Memory resource [`requests/limits`](https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container)                                                             | `{}`                             |\n|                                **podSecurityContext** | [`securityContext`](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/) of the `Pod`                                                                                                                                 | `{}`                             |\n|                                   **securityContext** | [`securityContext`](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/) for the container                                                                                                                            | `{}`                             |\n|                                      **nodeSelector** | [`nodeSelector`](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector) schedules Pods only on matching nodes                                                                                                      | `{}`                             |\n|                                       **tolerations** | [`tolerations`](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/) allows to schedule `Pods` on nodes with [`taints`](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/)                         | `{}`                             |\n|                                          **affinity** | Set [`affinity`](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#node-affinity-beta-feature) to control how pods are scheduled                                                                                            | `{}`                             |\n|                      **defaultAffinityRules.enabled** | If `true` prevents that the `Pod` defined in `replicaCount` are not scheduled on the same node                                                                                                                                               | `true`                           |\n|                                       **annotations** | Sets [`annotations`](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/) for the `Pod`                                                                                                                           | `{}`                             |\n|                                           **command** | Sets [`command`](https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#define-a-command-and-arguments-when-you-create-a-pod) for the `Pod`.                                                            | `[]`                             |\n|                                              **args** | Sets [`args`](https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#define-a-command-and-arguments-when-you-create-a-pod) for the `Pod`.                                                               | `[]`                             |\n|                                    **initContainers** | Sets [`initContainers`](https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) for the `Pod`.                                                                                                                                  | `[]`                             |\n|                              **additionalContainers** | Define additional containers for the `Pod`.                                                                                                                                                                                                  | `[]`                             |\n|                                 **enableServiceMesh** | Enable or disable deployment of pods in a service mesh                                                                                                                                                                                       | `false`                          |\n|                                    **enableReloader** | Enable or disable automatic restarts of pods if a referenced ConfigMap or Secret has changed. [More Info](https://github.com/stakater/Reloader)                                                                                              | `false`                          |\n\n## Contributions\n\nIf you contribute new featuers or fix a bug, please update the `.version` in the `Chart.yaml` according\nto [SemVer](https://semver.org/) and update the documentation.\n\n## Testing\n\nTo run tests\n\n```bash\nmake test\n```\n\nTo update the snapshot files\n\n```bash\nmake test-update\n```\n\nIf you want to add your own test case, simply copy [tests/simple](./tests/simple) in a new directory and adjust the\ntest.yaml and values.yaml accordingly.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbaloise-incubator%2Fgeneric-chart","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbaloise-incubator%2Fgeneric-chart","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbaloise-incubator%2Fgeneric-chart/lists"}