diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..51dfa0d
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+test_values/
\ No newline at end of file
diff --git a/README.md b/README.md
index eb1adbf..9c670f7 100644
--- a/README.md
+++ b/README.md
@@ -1,2 +1,39 @@
-# charts
-My Helm Charts
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+# plcnk's Helm Charts
+
+Charts for deploying applications on [Kubernetes](https://kubernetes.io/) using [Helm](https://helm.sh/).
+
+The code in this repository is provided as-is with no warranties.
+
+## Usage
+
+[Helm](https://helm.sh) must be installed to use the charts.
+Please refer to Helm's [documentation](https://helm.sh/docs/) to get started.
+
+Once Helm is set up properly, add the repo as follows:
+
+```console
+helm repo add plcnk https://charts.plcnk.net
+helm repo update
+```
+
+You can then run `helm search repo plcnk` to see the charts.
+
+## Available charts
+
+| Chart | Chart Version | App Version | Description |
+| --------------------------------------------------------------------- | ------------- | ----------------- | --------------------------------------------------------------- |
+| [it-tools](https://github.com/plcnk/charts/tree/main/charts/it-tools) | 0.1.0 | 2024.5.13-a0bc346 | Collection of handy online tools for developers, with great UX. |
diff --git a/charts/it-tools/.helmignore b/charts/it-tools/.helmignore
new file mode 100644
index 0000000..0e8a0eb
--- /dev/null
+++ b/charts/it-tools/.helmignore
@@ -0,0 +1,23 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*.orig
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
+.vscode/
diff --git a/charts/it-tools/Chart.yaml b/charts/it-tools/Chart.yaml
new file mode 100644
index 0000000..2e47763
--- /dev/null
+++ b/charts/it-tools/Chart.yaml
@@ -0,0 +1,30 @@
+apiVersion: v2
+name: it-tools
+description: Collection of handy online tools for developers, with great UX.
+icon: https://raw.githubusercontent.com/CorentinTh/it-tools/main/public/mstile-310x310.png
+sources:
+ - https://github.com/CorentinTh/it-tools
+maintainers:
+ - name: Romain Pluciennik
+ email: romain.pluciennik@gmail.com
+
+# A chart can be either an 'application' or a 'library' chart.
+#
+# Application charts are a collection of templates that can be packaged into versioned archives
+# to be deployed.
+#
+# Library charts provide useful utilities or functions for the chart developer. They're included as
+# a dependency of application charts to inject those utilities and functions into the rendering
+# pipeline. Library charts do not define any templates and therefore cannot be deployed.
+type: application
+
+# This is the chart version. This version number should be incremented each time you make changes
+# to the chart and its templates, including the app version.
+# Versions are expected to follow Semantic Versioning (https://semver.org/)
+version: 0.1.0
+
+# This is the version number of the application being deployed. This version number should be
+# incremented each time you make changes to the application. Versions are not expected to
+# follow Semantic Versioning. They should reflect the version the application is using.
+# It is recommended to use it with quotes.
+appVersion: "2024.5.13-a0bc346"
diff --git a/charts/it-tools/README.md b/charts/it-tools/README.md
new file mode 100644
index 0000000..8b479b4
--- /dev/null
+++ b/charts/it-tools/README.md
@@ -0,0 +1,109 @@
+# it-tools
+
+Helm chart for deploying [it-tools](https://it-tools.tech/).
+
+it-tools is a collection of handy online tools for developers, with great UX.
+
+> [!NOTE]
+> This chart is not maintained by the original author of it-tools and any problems with this chart should be submitted [here](https://github.com/plcnk/charts/issues/new).
+
+## Source code
+
+*
+
+## Get repo
+
+```console
+helm repo add plcnk https://charts.plcnk.net
+helm repo update
+```
+
+## Install chart
+
+```console
+helm install [RELEASE_NAME] plcnk/it-tools
+```
+
+## Uninstall chart
+
+```console
+helm uninstall [RELEASE_NAME]
+```
+
+## Parameters
+
+### Global parameters
+
+| Name | Description | Value |
+| ------------------ | ---------------------------------------------- | ----- |
+| `replicaCount` | Number of replicas for the it-tools Deployment | `1` |
+| `imagePullSecrets` | Docker registry pull secrets | `[]` |
+| `nameOverride` | Name override | `""` |
+| `fullnameOverride` | Full name override | `""` |
+| `podAnnotations` | Additional annotations for the Pod resource | `{}` |
+| `podLabels` | Additional labels for the Pod resource | `{}` |
+| `nodeSelector` | Node labels for pod assignment | `{}` |
+| `tolerations` | Tolerations for pod assignment | `[]` |
+| `affinity` | Affinity for pod assignment | `{}` |
+
+### Image parameters
+
+| Name | Description | Value |
+| ------------------ | ------------------------------------------------------------- | ----------------------------- |
+| `image.repository` | Docker image repository | `ghcr.io/corentinth/it-tools` |
+| `image.pullPolicy` | Docker image pull policy | `IfNotPresent` |
+| `image.tag` | Overrides the image tag whose default is the chart appVersion | `""` |
+
+### Service account parameters
+
+| Name | Description | Value |
+| ---------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ------- |
+| `serviceAccount.create` | Specifies whether a service account should be created | `false` |
+| `serviceAccount.automount` | Automatically mount a ServiceAccount's API credentials? | `true` |
+| `serviceAccount.annotations` | Additional annotations for the ServiceAccount resource | `{}` |
+| `serviceAccount.name` | The name of the service account to use. If not set and create is true, a name is generated using the fullname template | `""` |
+
+### Security context parameters
+
+| Name | Description | Value |
+| ------------------------------------------ | ----------------------------------------- | ---------------- |
+| `securityContext.capabilities.drop` | Capabilities to drop | `["ALL"]` |
+| `securityContext.readOnlyRootFilesystem` | If root filesystem should be read-only | `true` |
+| `securityContext.runAsNonRoot` | If pod should be run as non-root | `true` |
+| `securityContext.runAsUser` | User to run pod as | `10099` |
+| `securityContext.runAsGroup` | Group to run pod as | `10099` |
+| `securityContext.allowPrivilegeEscalation` | If privilege escalation should be allowed | `false` |
+| `securityContext.seccompProfile.type` | seccomp profile type | `RuntimeDefault` |
+
+### Service parameters
+
+| Name | Description | Value |
+| -------------- | ---------------------- | ----------- |
+| `service.type` | Service type to create | `ClusterIP` |
+| `service.port` | Service port to use | `80` |
+
+### Ingress parameters
+
+| Name | Description | Value |
+| --------------------- | ------------------------------------------------------------------------ | ------- |
+| `ingress.enabled` | Enable ingress record generation | `false` |
+| `ingress.className` | IngressClass that will be be used to implement the Ingress | `""` |
+| `ingress.annotations` | Additional annotations for the Ingress resource | `{}` |
+| `ingress.hosts` | An array with hostname(s) to be covered with the ingress record | `[]` |
+| `ingress.tls` | TLS configuration for hostname(s) to be covered with this ingress record | `[]` |
+
+### Resources parameters
+
+| Name | Description | Value |
+| ----------- | -------------------- | ----- |
+| `resources` | Kubernetes resources | `{}` |
+
+### Autoscaling parameters
+
+| Name | Description | Value |
+| ----------------------------------------------- | ------------------------------------ | ------- |
+| `autoscaling.enabled` | Enable Horizontal POD autoscaling | `false` |
+| `autoscaling.minReplicas` | Minimum number of replicas | `1` |
+| `autoscaling.maxReplicas` | Maximum number of replicas | `100` |
+| `autoscaling.targetCPUUtilizationPercentage` | Target CPU utilization percentage | `80` |
+| `autoscaling.targetMemoryUtilizationPercentage` | Target Memory utilization percentage | `80` |
diff --git a/charts/it-tools/templates/_helpers.tpl b/charts/it-tools/templates/_helpers.tpl
new file mode 100644
index 0000000..2597e2b
--- /dev/null
+++ b/charts/it-tools/templates/_helpers.tpl
@@ -0,0 +1,62 @@
+{{/*
+Expand the name of the chart.
+*/}}
+{{- define "it-tools.name" -}}
+{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
+{{- end }}
+
+{{/*
+Create a default fully qualified app name.
+We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
+If release name contains chart name it will be used as a full name.
+*/}}
+{{- define "it-tools.fullname" -}}
+{{- if .Values.fullnameOverride }}
+{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
+{{- else }}
+{{- $name := default .Chart.Name .Values.nameOverride }}
+{{- if contains $name .Release.Name }}
+{{- .Release.Name | trunc 63 | trimSuffix "-" }}
+{{- else }}
+{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
+{{- end }}
+{{- end }}
+{{- end }}
+
+{{/*
+Create chart name and version as used by the chart label.
+*/}}
+{{- define "it-tools.chart" -}}
+{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
+{{- end }}
+
+{{/*
+Common labels
+*/}}
+{{- define "it-tools.labels" -}}
+helm.sh/chart: {{ include "it-tools.chart" . }}
+{{ include "it-tools.selectorLabels" . }}
+{{- if .Chart.AppVersion }}
+app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
+{{- end }}
+app.kubernetes.io/managed-by: {{ .Release.Service }}
+{{- end }}
+
+{{/*
+Selector labels
+*/}}
+{{- define "it-tools.selectorLabels" -}}
+app.kubernetes.io/name: {{ include "it-tools.name" . }}
+app.kubernetes.io/instance: {{ .Release.Name }}
+{{- end }}
+
+{{/*
+Create the name of the service account to use
+*/}}
+{{- define "it-tools.serviceAccountName" -}}
+{{- if .Values.serviceAccount.create }}
+{{- default (include "it-tools.fullname" .) .Values.serviceAccount.name }}
+{{- else }}
+{{- default "default" .Values.serviceAccount.name }}
+{{- end }}
+{{- end }}
diff --git a/charts/it-tools/templates/configmap.yaml b/charts/it-tools/templates/configmap.yaml
new file mode 100644
index 0000000..f239dfc
--- /dev/null
+++ b/charts/it-tools/templates/configmap.yaml
@@ -0,0 +1,29 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: nginx-conf
+data:
+ nginx.conf: |
+ worker_processes auto;
+
+ error_log /tmp/nginx/error.log warn;
+ pid /tmp/nginx/nginx.pid;
+
+ events {
+ worker_connections 1024;
+ }
+
+ http {
+ include /etc/nginx/mime.types;
+
+ server {
+ listen 80;
+ server_name _;
+ root /usr/share/nginx/html;
+ index index.html;
+
+ location / {
+ try_files $uri $uri/ /index.html;
+ }
+ }
+ }
diff --git a/charts/it-tools/templates/deployment.yaml b/charts/it-tools/templates/deployment.yaml
new file mode 100644
index 0000000..9bb2dd8
--- /dev/null
+++ b/charts/it-tools/templates/deployment.yaml
@@ -0,0 +1,82 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: {{ include "it-tools.fullname" . }}
+ labels:
+ {{- include "it-tools.labels" . | nindent 4 }}
+spec:
+ {{- if not .Values.autoscaling.enabled }}
+ replicas: {{ .Values.replicaCount }}
+ {{- end }}
+ selector:
+ matchLabels:
+ {{- include "it-tools.selectorLabels" . | nindent 6 }}
+ template:
+ metadata:
+ {{- with .Values.podAnnotations }}
+ annotations:
+ {{- toYaml . | nindent 8 }}
+ {{- end }}
+ labels:
+ {{- include "it-tools.labels" . | nindent 8 }}
+ {{- with .Values.podLabels }}
+ {{- toYaml . | nindent 8 }}
+ {{- end }}
+ spec:
+ {{- with .Values.imagePullSecrets }}
+ imagePullSecrets:
+ {{- toYaml . | nindent 8 }}
+ {{- end }}
+ serviceAccountName: {{ include "it-tools.serviceAccountName" . }}
+ containers:
+ - name: {{ .Chart.Name }}
+ securityContext:
+ {{- toYaml .Values.securityContext | nindent 12 }}
+ image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
+ imagePullPolicy: {{ .Values.image.pullPolicy }}
+ ports:
+ - name: http
+ containerPort: {{ .Values.service.port }}
+ protocol: TCP
+ livenessProbe:
+ httpGet:
+ path: /
+ port: http
+ periodSeconds: 30
+ timeoutSeconds: 30
+ readinessProbe:
+ httpGet:
+ path: /
+ port: http
+ periodSeconds: 30
+ timeoutSeconds: 30
+ resources:
+ {{- toYaml .Values.resources | nindent 12 }}
+ volumeMounts:
+ - name: cache
+ mountPath: "/var/cache/nginx"
+ - name: tmp
+ mountPath: "/tmp/nginx"
+ - name: conf
+ mountPath: /etc/nginx/nginx.conf
+ subPath: nginx.conf
+ volumes:
+ - name: cache
+ emptyDir: {}
+ - name: tmp
+ emptyDir: {}
+ - name: conf
+ configMap:
+ name: nginx-conf
+ {{- with .Values.nodeSelector }}
+ nodeSelector:
+ {{- toYaml . | nindent 8 }}
+ {{- end }}
+ {{- with .Values.affinity }}
+ affinity:
+ {{- toYaml . | nindent 8 }}
+ {{- end }}
+ {{- with .Values.tolerations }}
+ tolerations:
+ {{- toYaml . | nindent 8 }}
+ {{- end }}
diff --git a/charts/it-tools/templates/hpa.yaml b/charts/it-tools/templates/hpa.yaml
new file mode 100644
index 0000000..436e6a3
--- /dev/null
+++ b/charts/it-tools/templates/hpa.yaml
@@ -0,0 +1,32 @@
+{{- if .Values.autoscaling.enabled }}
+apiVersion: autoscaling/v2
+kind: HorizontalPodAutoscaler
+metadata:
+ name: {{ include "it-tools.fullname" . }}
+ labels:
+ {{- include "it-tools.labels" . | nindent 4 }}
+spec:
+ scaleTargetRef:
+ apiVersion: apps/v1
+ kind: Deployment
+ name: {{ include "it-tools.fullname" . }}
+ minReplicas: {{ .Values.autoscaling.minReplicas }}
+ maxReplicas: {{ .Values.autoscaling.maxReplicas }}
+ metrics:
+ {{- if .Values.autoscaling.targetCPUUtilizationPercentage }}
+ - type: Resource
+ resource:
+ name: cpu
+ target:
+ type: Utilization
+ averageUtilization: {{ .Values.autoscaling.targetCPUUtilizationPercentage }}
+ {{- end }}
+ {{- if .Values.autoscaling.targetMemoryUtilizationPercentage }}
+ - type: Resource
+ resource:
+ name: memory
+ target:
+ type: Utilization
+ averageUtilization: {{ .Values.autoscaling.targetMemoryUtilizationPercentage }}
+ {{- end }}
+{{- end }}
diff --git a/charts/it-tools/templates/ingress.yaml b/charts/it-tools/templates/ingress.yaml
new file mode 100644
index 0000000..5c47a29
--- /dev/null
+++ b/charts/it-tools/templates/ingress.yaml
@@ -0,0 +1,61 @@
+{{- if .Values.ingress.enabled -}}
+{{- $fullName := include "it-tools.fullname" . -}}
+{{- $svcPort := .Values.service.port -}}
+{{- if and .Values.ingress.className (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) }}
+ {{- if not (hasKey .Values.ingress.annotations "kubernetes.io/ingress.class") }}
+ {{- $_ := set .Values.ingress.annotations "kubernetes.io/ingress.class" .Values.ingress.className}}
+ {{- end }}
+{{- end }}
+{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}}
+apiVersion: networking.k8s.io/v1
+{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}}
+apiVersion: networking.k8s.io/v1beta1
+{{- else -}}
+apiVersion: extensions/v1beta1
+{{- end }}
+kind: Ingress
+metadata:
+ name: {{ $fullName }}
+ labels:
+ {{- include "it-tools.labels" . | nindent 4 }}
+ {{- with .Values.ingress.annotations }}
+ annotations:
+ {{- toYaml . | nindent 4 }}
+ {{- end }}
+spec:
+ {{- if and .Values.ingress.className (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion) }}
+ ingressClassName: {{ .Values.ingress.className }}
+ {{- end }}
+ {{- if .Values.ingress.tls }}
+ tls:
+ {{- range .Values.ingress.tls }}
+ - hosts:
+ {{- range .hosts }}
+ - {{ . | quote }}
+ {{- end }}
+ secretName: {{ .secretName }}
+ {{- end }}
+ {{- end }}
+ rules:
+ {{- range .Values.ingress.hosts }}
+ - host: {{ .host | quote }}
+ http:
+ paths:
+ {{- range .paths }}
+ - path: {{ .path }}
+ {{- if and .pathType (semverCompare ">=1.18-0" $.Capabilities.KubeVersion.GitVersion) }}
+ pathType: {{ .pathType }}
+ {{- end }}
+ backend:
+ {{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion }}
+ service:
+ name: {{ $fullName }}
+ port:
+ number: {{ $svcPort }}
+ {{- else }}
+ serviceName: {{ $fullName }}
+ servicePort: {{ $svcPort }}
+ {{- end }}
+ {{- end }}
+ {{- end }}
+{{- end }}
diff --git a/charts/it-tools/templates/service.yaml b/charts/it-tools/templates/service.yaml
new file mode 100644
index 0000000..81d1fb7
--- /dev/null
+++ b/charts/it-tools/templates/service.yaml
@@ -0,0 +1,15 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "it-tools.fullname" . }}
+ labels:
+ {{- include "it-tools.labels" . | nindent 4 }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ - port: {{ .Values.service.port }}
+ targetPort: http
+ protocol: TCP
+ name: http
+ selector:
+ {{- include "it-tools.selectorLabels" . | nindent 4 }}
diff --git a/charts/it-tools/templates/serviceaccount.yaml b/charts/it-tools/templates/serviceaccount.yaml
new file mode 100644
index 0000000..620dc4d
--- /dev/null
+++ b/charts/it-tools/templates/serviceaccount.yaml
@@ -0,0 +1,13 @@
+{{- if .Values.serviceAccount.create -}}
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+ name: {{ include "it-tools.serviceAccountName" . }}
+ labels:
+ {{- include "it-tools.labels" . | nindent 4 }}
+ {{- with .Values.serviceAccount.annotations }}
+ annotations:
+ {{- toYaml . | nindent 4 }}
+ {{- end }}
+automountServiceAccountToken: {{ .Values.serviceAccount.automount }}
+{{- end }}
diff --git a/charts/it-tools/templates/tests/test-connection.yaml b/charts/it-tools/templates/tests/test-connection.yaml
new file mode 100644
index 0000000..b5b3798
--- /dev/null
+++ b/charts/it-tools/templates/tests/test-connection.yaml
@@ -0,0 +1,15 @@
+apiVersion: v1
+kind: Pod
+metadata:
+ name: "{{ include "it-tools.fullname" . }}-test-connection"
+ labels:
+ {{- include "it-tools.labels" . | nindent 4 }}
+ annotations:
+ "helm.sh/hook": test
+spec:
+ containers:
+ - name: wget
+ image: busybox
+ command: ['wget']
+ args: ['{{ include "it-tools.fullname" . }}:{{ .Values.service.port }}']
+ restartPolicy: Never
diff --git a/charts/it-tools/values.yaml b/charts/it-tools/values.yaml
new file mode 100644
index 0000000..892dc0e
--- /dev/null
+++ b/charts/it-tools/values.yaml
@@ -0,0 +1,128 @@
+# Default values for it-tools.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+
+## @section Global parameters
+## @param replicaCount Number of replicas for the it-tools Deployment
+replicaCount: 1
+
+## @param imagePullSecrets Docker registry pull secrets
+## @param nameOverride Name override
+## @param fullnameOverride Full name override
+imagePullSecrets: []
+nameOverride: ""
+fullnameOverride: ""
+
+## @param podAnnotations Additional annotations for the Pod resource
+## @param podLabels Additional labels for the Pod resource
+podAnnotations: {}
+podLabels: {}
+
+## @param nodeSelector Node labels for pod assignment
+## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/
+nodeSelector: {}
+
+## @param tolerations Tolerations for pod assignment
+## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
+tolerations: []
+
+## @param affinity Affinity for pod assignment
+## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
+affinity: {}
+
+## @section Image parameters
+## @param image.repository Docker image repository
+## @param image.pullPolicy Docker image pull policy
+## @param image.tag Overrides the image tag whose default is the chart appVersion
+image:
+ repository: ghcr.io/corentinth/it-tools
+ pullPolicy: IfNotPresent
+ tag: ""
+
+## @section Service account parameters
+## @param serviceAccount.create Specifies whether a service account should be created
+## @param serviceAccount.automount Automatically mount a ServiceAccount's API credentials?
+## @param serviceAccount.annotations Additional annotations for the ServiceAccount resource
+## @param serviceAccount.name The name of the service account to use. If not set and create is true, a name is generated using the fullname template
+serviceAccount:
+ create: false
+ automount: true
+ annotations: {}
+ name: ""
+
+## @section Security context parameters
+## @param securityContext.capabilities.drop Capabilities to drop
+## @param securityContext.readOnlyRootFilesystem If root filesystem should be read-only
+## @param securityContext.runAsNonRoot If pod should be run as non-root
+## @param securityContext.runAsUser User to run pod as
+## @param securityContext.runAsGroup Group to run pod as
+## @param securityContext.allowPrivilegeEscalation If privilege escalation should be allowed
+## @param securityContext.seccompProfile.type seccomp profile type
+securityContext:
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ runAsNonRoot: true
+ runAsUser: 10099
+ runAsGroup: 10099
+ allowPrivilegeEscalation: false
+ seccompProfile:
+ type: RuntimeDefault
+
+## @section Service parameters
+## @param service.type Service type to create
+## @param service.port Service port to use
+service:
+ type: ClusterIP
+ port: 80
+
+## @section Ingress parameters
+## Configure the ingress resource that allows you to access the installation
+## ref: https://kubernetes.io/docs/concepts/services-networking/ingress/
+##
+## @param ingress.enabled Enable ingress record generation
+## @param ingress.className IngressClass that will be be used to implement the Ingress
+## @param ingress.annotations Additional annotations for the Ingress resource
+## @param ingress.hosts An array with hostname(s) to be covered with the ingress record
+## @param ingress.tls TLS configuration for hostname(s) to be covered with this ingress record
+ingress:
+ enabled: false
+ className: ""
+ annotations: {}
+ # kubernetes.io/ingress.class: nginx
+ # kubernetes.io/tls-acme: "true"
+ hosts: []
+ # - host: it-tools.example.local
+ # paths:
+ # - path: /
+ # pathType: Prefix
+ tls: []
+ # - secretName: it-tools-tls
+ # hosts:
+ # - it-tools.example.local
+
+## @section Resources parameters
+## @param resources Kubernetes resources
+resources: {}
+ # limits:
+ # cpu: 100m
+ # memory: 128Mi
+ # requests:
+ # cpu: 100m
+ # memory: 128Mi
+
+## @section Autoscaling parameters
+## Autoscaling parameters
+## ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/
+## @param autoscaling.enabled Enable Horizontal POD autoscaling
+## @param autoscaling.minReplicas Minimum number of replicas
+## @param autoscaling.maxReplicas Maximum number of replicas
+## @param autoscaling.targetCPUUtilizationPercentage Target CPU utilization percentage
+## @param autoscaling.targetMemoryUtilizationPercentage Target Memory utilization percentage
+autoscaling:
+ enabled: false
+ minReplicas: 1
+ maxReplicas: 100
+ targetCPUUtilizationPercentage: 80
+ targetMemoryUtilizationPercentage: 80