Compare commits
1 Commits
1ef0c22390
...
8b6c491464
Author | SHA1 | Date |
---|---|---|
|
8b6c491464 |
|
@ -1,16 +0,0 @@
|
|||
apiVersion: v2
|
||||
name: ingress-management
|
||||
description: A Helm chart to manage Ingress traffic
|
||||
version: 0.1.0
|
||||
appVersion: "1.0"
|
||||
home: https://github.com/ot-container-kit/helm-charts
|
||||
maintainers:
|
||||
- name: sharvarikhamkar1304
|
||||
keywords:
|
||||
- ingress
|
||||
- kong
|
||||
- httpRoute
|
||||
- kubernetes
|
||||
icon: https://raw.githubusercontent.com/OT-CONTAINER-KIT/helm-charts/main/static/helm-chart-logo.svg
|
||||
sources:
|
||||
- https://github.com/ot-container-kit/helm-charts
|
|
@ -1,49 +0,0 @@
|
|||
|
||||
# Ingress Management Helm Chart
|
||||
|
||||
A simple and reusable Helm chart to manage Kubernetes Gateway API HTTPRoutes for routing traffic to backend services.
|
||||
|
||||
This chart helps manage HTTPRoute resources to expose services using the Kubernetes Gateway API. You can customize host, path, service, and namespace via values.
|
||||
|
||||
|
||||
## Homepage
|
||||
|
||||
[https://github.com/ot-container-kit/helm-charts](https://github.com/ot-container-kit/helm-charts)
|
||||
|
||||
|
||||
|
||||
## Maintainers
|
||||
|
||||
| Name | URL |
|
||||
| ---------------- | --------------------------------------------- |
|
||||
| sharvari-khamkar | [GitHub](https://github.com/sharvari-khamkar) |
|
||||
|
||||
|
||||
|
||||
## Source Code
|
||||
|
||||
[GitHub - ot-container-kit/helm-charts](https://github.com/ot-container-kit/helm-charts)
|
||||
|
||||
|
||||
|
||||
## Requirements
|
||||
|
||||
| Repository | Name | Version |
|
||||
| ------------------------------------------------------------------------------------------------ | ---- | ------- |
|
||||
| [https://ot-container-kit.github.io/helm-charts](https://ot-container-kit.github.io/helm-charts) | base | 0.1.0 |
|
||||
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| **Attribute** | **Scope** | **Example** | **Description** | **Default** |
|
||||
|------------------|------------------|------------------------|------------------------------------------------------------------------|--------------|
|
||||
| <br> `name` <br> <br> | <br> Global <br> <br> | <br> `"my-app"` <br> <br> | <br> Name of the HTTPRoute and backend service (the app name)<br><br> | `""` |
|
||||
| <br> `namespace` <br> <br> | <br> Global <br> <br> | <br> `"default"` <br> <br> | <br> Kubernetes namespace where resources like HTTPRoute will be deployed<br><br> | `""` |
|
||||
| <br> `host` <br> <br> | Routing | `"app.example.com"` | Hostname to expose the app<br><br> | `""` |
|
||||
| <br>`path` <br> <br> | Routing | `"/api"` | Path under the host<br><br> | `""` |
|
||||
| <br>`service.name` <br> <br> | Service Config | `"my-backend-svc"` | Name of the backend service to which traffic will be routed<br><br> | `""` |
|
||||
| <br>`service.kind` <br> <br> | Service Config | `"Service"` | Kind of backend resource (Service by default)<br><br> | `"Service"` |
|
||||
| <br>`service.port` <br> <br> | Service Config | `80` | Port on which the backend service listens<br><br> | `80` |
|
||||
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
---
|
||||
apiVersion: gateway.networking.k8s.io/v1
|
||||
kind: HTTPRoute
|
||||
metadata:
|
||||
name: {{ required "A valid 'name' is required!" .Values.name }}
|
||||
{{- if .Values.labels }}
|
||||
labels:
|
||||
{{ toYaml .Values.labels | indent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- if .Values.parentRefs }}
|
||||
parentRefs:
|
||||
{{- range .Values.parentRefs }}
|
||||
- name: {{ .name }}
|
||||
{{- if .namespace }}
|
||||
namespace: {{ .namespace }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{- if .Values.hostnames }}
|
||||
hostnames:
|
||||
{{- range .Values.hostnames }}
|
||||
- "{{ . }}"
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
rules:
|
||||
{{- range .Values.rules }}
|
||||
- matches:
|
||||
{{- range .matches }}
|
||||
- path:
|
||||
type: {{ .path.type }}
|
||||
value: {{ .path.value | quote }}
|
||||
{{- end }}
|
||||
backendRefs:
|
||||
{{- range .backendRefs }}
|
||||
- name: {{ .name }}
|
||||
kind: {{ .kind | default "Service" }}
|
||||
port: {{ .port }}
|
||||
{{- end }}
|
||||
{{- end }}
|
|
@ -1,60 +0,0 @@
|
|||
---
|
||||
# charts/ingress-management/values.yaml
|
||||
|
||||
# -- Name of the HTTPRoute and backend service (typically the app name)
|
||||
name: ""
|
||||
|
||||
# -- Labels to apply to the HTTPRoute metadata
|
||||
labels:
|
||||
app: ""
|
||||
|
||||
# -- Optional annotations to apply to the HTTPRoute resource
|
||||
annotations: {}
|
||||
|
||||
# -- Reference to the Gateway (parentRefs)
|
||||
parentRefs:
|
||||
- name: ""
|
||||
namespace: ""
|
||||
# -- Hostnames to be matched in the HTTPRoute
|
||||
hostnames:
|
||||
- ""
|
||||
|
||||
# -- Routing rules for HTTPRoute
|
||||
rules:
|
||||
- matches:
|
||||
- path:
|
||||
type: PathPrefix
|
||||
value: ""
|
||||
backendRefs:
|
||||
- name: ""
|
||||
kind: Service
|
||||
port: 80
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Example values.yaml File
|
||||
# -----------------------------------------------------
|
||||
# name: open-webui
|
||||
|
||||
# labels:
|
||||
# app: open-webui
|
||||
|
||||
# annotations:
|
||||
# konghq.com/protocols: https
|
||||
# konghq.com/https-redirect-status-code: "301"
|
||||
|
||||
# parentRefs:
|
||||
# - name: kong
|
||||
# namespace: default
|
||||
|
||||
# hostnames:
|
||||
# - bp-ai.opstree.dev
|
||||
|
||||
# rules:
|
||||
# - matches:
|
||||
# - path:
|
||||
# type: PathPrefix
|
||||
# value: /
|
||||
# backendRefs:
|
||||
# - name: open-webui
|
||||
# kind: Service
|
||||
# port: 80
|
|
@ -2,7 +2,7 @@ apiVersion: v2
|
|||
name: microservice
|
||||
description: Basic helm chart for deploying microservices on kubernetes with best practices
|
||||
type: application
|
||||
version: 0.1.8
|
||||
version: 0.1.6
|
||||
appVersion: "0.1.2"
|
||||
maintainers:
|
||||
- name: ashwani-opstree
|
||||
|
|
|
@ -33,7 +33,7 @@ spec:
|
|||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- with .Values.global.imagePullSecrets }}
|
||||
{{- with .Values.imagePullSecrets }}
|
||||
imagePullSecrets:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
|
@ -67,11 +67,11 @@ spec:
|
|||
value: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if and .Values.deployment.healthProbes.enabled .Values.deployment.livenessProbe.httpGet }}
|
||||
{{- if and .Values.deployment.healthProbes.enabled .Values.deployment.livenessProbe }}
|
||||
livenessProbe:
|
||||
{{- toYaml .Values.deployment.livenessProbe | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if and .Values.deployment.healthProbes.enabled .Values.deployment.readinessProbe.httpGet }}
|
||||
{{- if and .Values.deployment.healthProbes.enabled .Values.deployment.readinessProbe }}
|
||||
readinessProbe:
|
||||
{{- toYaml .Values.deployment.readinessProbe | nindent 12 }}
|
||||
{{- end }}
|
||||
|
|
|
@ -1,26 +0,0 @@
|
|||
---
|
||||
apiVersion: v2
|
||||
description: A deployment helm chart which will be used to deploy any type of stateless application
|
||||
maintainers:
|
||||
- name: iamabhishek-dubey
|
||||
email: "abhishek.dubey@opstree.com"
|
||||
url: https://github.com/iamabhishek-dubey
|
||||
name: worker
|
||||
sources:
|
||||
- https://github.com/ot-container-kit/helm-charts
|
||||
dependencies:
|
||||
- name: base
|
||||
version: 0.1.0
|
||||
repository: https://ot-container-kit.github.io/helm-charts
|
||||
version: 0.1.0
|
||||
appVersion: "0.1.0"
|
||||
home: https://github.com/ot-container-kit/helm-charts
|
||||
keywords:
|
||||
- deployment
|
||||
- base
|
||||
- opstree
|
||||
- kubernetes
|
||||
- openshift
|
||||
- microservice
|
||||
- stateless
|
||||
icon: https://raw.githubusercontent.com/OT-CONTAINER-KIT/helm-charts/main/static/helm-chart-logo.svg
|
|
@ -1,39 +0,0 @@
|
|||
# Worker Deployment Helm Chart
|
||||
|
||||
 
|
||||
|
||||
A deployment helm chart which will be used to deploy any type of stateless application
|
||||
|
||||
**Homepage:** <https://github.com/ot-container-kit/helm-charts>
|
||||
|
||||
## Maintainers
|
||||
|
||||
| Name | Email | Url |
|
||||
|-------------------|------------------------------|----------------------------------------|
|
||||
| iamabhishek-dubey | <abhishek.dubey@opstree.com> | <https://github.com/iamabhishek-dubey> |
|
||||
|
||||
## Source Code
|
||||
|
||||
* <https://github.com/ot-container-kit/helm-charts>
|
||||
|
||||
## Requirements
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------------------------------------------|------|---------|
|
||||
| https://ot-container-kit.github.io/helm-charts | base | 0.1.0 |
|
||||
|
||||
## Values
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|------------------------|--------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------|
|
||||
| autoscaling | object | `{"enabled":false,"maxReplicas":50,"minReplicas":10,"targetCPUUtilizationPercentage":65,"targetMemoryUtilizationPercentage":65}` | Autoscaling properties with target CPU and Memory details |
|
||||
| base | object | `{"image":{"command":[],"pullPolicy":"IfNotPresent","pullSecrets":"","repository":"nginx","tag":"latest"}}` | Base block to define the inputs for image, secret and configmap env |
|
||||
| base.image | object | `{"command":[],"pullPolicy":"IfNotPresent","pullSecrets":"","repository":"nginx","tag":"latest"}` | Image block with all image details |
|
||||
| base.image.command | list | `[]` | Additional command arguments which needs to be passed |
|
||||
| base.image.pullPolicy | string | `"IfNotPresent"` | Default image pull policy |
|
||||
| base.image.pullSecrets | string | `""` | Image pull secrets for private repository authentication |
|
||||
| base.image.repository | string | `"nginx"` | Default image repository |
|
||||
| base.image.tag | string | `"latest"` | Default image tag |
|
||||
| replicaCount | int | `2` | Number of replicas for deployment, it will be overridden in case autoscaling is enabled |
|
||||
| resources | object | `{}` | Kubernetes resource in terms of requests and limits |
|
||||
| volumes | string | `nil` | Kubernetes volumes definition which needs to be mounted |
|
|
@ -1,4 +0,0 @@
|
|||
{{ include "configmap" . }}
|
||||
---
|
||||
{{ include "serviceAccount" . }}
|
||||
---
|
|
@ -1,18 +0,0 @@
|
|||
{{- if .Values.volumes }}
|
||||
{{- if .Values.volumes.configMaps }}
|
||||
{{ range $cm := .Values.volumes.configMaps}}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ $cm.name }}
|
||||
labels:
|
||||
{{- include "base.labels" $ | nindent 4 }}
|
||||
data:
|
||||
{{- range $filename, $content := $cm.data }}
|
||||
{{ $filename }}: |-
|
||||
{{ $content | toString | indent 4}}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
|
@ -1,65 +0,0 @@
|
|||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ include "base.fullname" . }}
|
||||
labels:
|
||||
{{- include "base.labels" . | nindent 4 }}
|
||||
spec:
|
||||
{{- if not .Values.autoscaling.enabled }}
|
||||
{{- with .Values.replicaCount }}
|
||||
replicas: {{ . }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "base.selectorLabels" . | nindent 6 }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
{{- include "base.selectorLabels" . | nindent 8 }}
|
||||
spec:
|
||||
{{- if .Values.base.image.pullSecrets }}
|
||||
imagePullSecrets:
|
||||
- name: {{ .Values.base.image.pullSecrets }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "base.serviceAccountName" . }}
|
||||
terminationGracePeriodSeconds: 120
|
||||
containers:
|
||||
- name: {{ include "base.fullname" . }}
|
||||
image: "{{ .Values.base.image.repository }}:{{ .Values.base.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.base.image.pullPolicy }}
|
||||
{{- if .Values.base.image.command }}
|
||||
command:
|
||||
{{- toYaml .Values.base.image.command | nindent 12 }}
|
||||
{{- end }}
|
||||
resources:
|
||||
{{- toYaml .Values.resources | nindent 12 }}
|
||||
{{- if .Values.base.config }}
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: {{ include "base.fullname" . }}
|
||||
{{- end }}
|
||||
{{- if .Values.base.secret }}
|
||||
- secretRef:
|
||||
name: {{ include "base.fullname" . }}
|
||||
{{- end }}
|
||||
{{- if .Values.volumes }}
|
||||
volumeMounts:
|
||||
{{- if .Values.volumes.configMaps }}
|
||||
{{- range $conf := .Values.volumes.configMaps }}
|
||||
- mountPath: {{ $conf.mountPath }}
|
||||
name: {{ $conf.name }}-volume
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if .Values.volumes }}
|
||||
volumes:
|
||||
{{- if .Values.volumes.configMaps }}
|
||||
{{- range $conf := .Values.volumes.configMaps }}
|
||||
- name: {{ $conf.name }}-volume
|
||||
configMap:
|
||||
name: {{ $conf.name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
|
@ -1,33 +0,0 @@
|
|||
{{- if .Values.autoscaling.enabled }}
|
||||
---
|
||||
apiVersion: autoscaling/v2
|
||||
kind: HorizontalPodAutoscaler
|
||||
metadata:
|
||||
name: {{ include "base.fullname" . }}
|
||||
labels:
|
||||
{{- include "base.labels" . | nindent 4 }}
|
||||
spec:
|
||||
scaleTargetRef:
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
name: {{ include "base.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 }}
|
|
@ -1,12 +0,0 @@
|
|||
{{- if .Values.base.secret -}}
|
||||
{{- $top := . -}}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: {{ include "base.fullname" . }}
|
||||
labels:
|
||||
{{- include "base.labels" . | nindent 4 }}
|
||||
stringData:
|
||||
{{- toYaml .Values.base.secret | nindent 2 -}}
|
||||
{{- end -}}
|
|
@ -1,43 +0,0 @@
|
|||
# -- Base block to define the inputs for image, secret and configmap env
|
||||
base:
|
||||
# -- Image block with all image details
|
||||
image:
|
||||
# -- Default image pull policy
|
||||
pullPolicy: "IfNotPresent"
|
||||
# -- Additional command arguments which needs to be passed
|
||||
command: []
|
||||
# -- Default image repository
|
||||
repository: nginx
|
||||
# -- Default image tag
|
||||
tag: latest
|
||||
# -- Image pull secrets for private repository authentication
|
||||
pullSecrets: ""
|
||||
# secret:
|
||||
# FOO_SECRET: BAR
|
||||
# config:
|
||||
# FOO_CONFIG: BAR
|
||||
|
||||
|
||||
# -- Autoscaling properties with target CPU and Memory details
|
||||
autoscaling:
|
||||
enabled: false
|
||||
targetCPUUtilizationPercentage: 65
|
||||
targetMemoryUtilizationPercentage: 65
|
||||
minReplicas: 10
|
||||
maxReplicas: 50
|
||||
|
||||
# -- Kubernetes resource in terms of requests and limits
|
||||
resources: {}
|
||||
|
||||
# -- Number of replicas for deployment, it will be overridden in case autoscaling is enabled
|
||||
replicaCount: 2
|
||||
|
||||
# -- Kubernetes volumes definition which needs to be mounted
|
||||
volumes:
|
||||
# -- List of configmaps with mount path and data
|
||||
# configMaps:
|
||||
# - name: web
|
||||
# mountPath: /test
|
||||
# data:
|
||||
# test.txt: |-
|
||||
# Dummy text
|
Loading…
Reference in New Issue