Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
annotations:
catalog.cattle.io/certified: partner
catalog.cattle.io/display-name: NetScaler CPX with Gateway Controller
catalog.cattle.io/kube-version: '>=v1.24.0-0'
catalog.cattle.io/release-name: netscaler-cpx-with-gateway-controller
apiVersion: v2
appVersion: 3.2.22
description: A Helm chart for NetScaler CPX with NetScaler Kubernetes Gateway Controller
running as sidecar.
home: https://www.cloud.com
icon: file://assets/icons/netscaler-cpx-with-gateway-controller.png
kubeVersion: '>=v1.24.0-0'
maintainers:
- email: [email protected]
name: sivakumar-citrix
- email: [email protected]
name: apoorva-05
- email: [email protected]
name: subashd
- email: [email protected]
name: priyankash-citrix
name: netscaler-cpx-with-gateway-controller
sources:
- https://github.com/netscaler/netscaler-k8s-ingress-controller
version: 1.2.0

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# NetScaler CPX with NetScaler Gateway Controller Running as Sidecar

In a [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com) cluster, you can deploy [NetScaler CPX](https://docs.netscaler.com/en-us/cpx.html) with NetScaler gateway controller as a [sidecar](https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/). The NetScaler CPX instance is used for load balancing the North-South traffic to the microservices in your cluster. And, the sidecar NetScaler gateway controller configures the NetScaler CPX.

This chart bootstraps deployment of NetScaler CPX with NetScaler Gateway Controller as sidecar.
1,033 changes: 1,033 additions & 0 deletions charts/netscaler/netscaler-cpx-with-gateway-controller/1.2.0/crds/crds.yaml

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
Thank you for installing {{ .Chart.Name }}.

Your release is named {{ .Release.Name }}.


To learn more about the release, try:

$ helm status {{ .Release.Name }}
$ helm get {{ .Release.Name }}


To delete :
helm delete {{ .Release.Name }}

Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
{{- define "netscaler-cpx-gateway-controller.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 "netscaler-cpx-gateway-controller.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 -}}

{{- define "cpxservice.fullname" -}}
{{- $name := default .Chart.Name "cpx-service" .Values.nameOverride -}}
{{- if contains $name .Release.Name -}}
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{- end -}}

{{- define "cpxconfigmap.fullname" -}}
{{- $name := default .Chart.Name "cpx-nsgwc-configmap" .Values.nameOverride -}}
{{- if contains $name .Release.Name -}}
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{- end -}}

{{- define "bootupconfigmap.fullname" -}}
{{- $name := default .Chart.Name "cpx-bootup-configmap" .Values.nameOverride -}}
{{- if contains $name .Release.Name -}}
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{- end -}}

{{- define "cpxservicemonitorlabel" -}}
{{- $name := default .Chart.Name "netscaler-adc-cpx-svcmon" .Values.nameOverride -}}
{{- if contains $name .Release.Name -}}
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{- end -}}

{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "netscaler-cpx-gateway-controller.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
{{- end -}}

{{/*
Create the name of the service account to use
*/}}
{{- define "netscaler-cpx-gateway-controller.serviceAccountName" -}}
{{- if .Values.serviceAccount.create -}}
{{ default (include "netscaler-cpx-gateway-controller.fullname" .) .Values.serviceAccount.name | trunc 253 }}
{{- else -}}
{{ default "default" .Values.serviceAccount.name | trunc 253 }}
{{- end -}}
{{- end -}}
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "cpxconfigmap.fullname" . }}
namespace: {{ .Release.Namespace }}
data:
LOGLEVEL: {{ .Values.gatewayController.logLevel | quote | lower }}
JSONLOG: {{ .Values.gatewayController.jsonLog | quote | lower }}
{{- if eq (upper .Values.netscalerCpx.nsProtocol) "HTTPS" }}
NS_PROTOCOL: "https"
NS_PORT: "443"
{{- else }}
NS_PROTOCOL: "http"
NS_PORT: "80"
{{- end }}
{{- if ne (upper .Values.netscalerCpx.nsHTTP2ServerSide) "OFF" }}
NS_HTTP2_SERVER_SIDE: {{ .Values.netscalerCpx.nsHTTP2ServerSide | quote }}
{{- end }}
{{- if ne (toString .Values.netscalerCpx.nsCookieVersion) "0" }}
NS_COOKIE_VERSION: {{ .Values.netscalerCpx.nsCookieVersion | quote }}
{{- end }}
{{- if .Values.netscalerCpx.nsDnsNameserver }}
NS_DNS_NAMESERVER: {{ .Values.netscalerCpx.nsDnsNameserver }}
{{- end }}

{{- if .Values.netscalerCpx.nsLbHashAlgo.required }}
NS_LB_HASH_ALGO: |
hashFingers: {{ .Values.netscalerCpx.nsLbHashAlgo.hashFingers }}
hashAlgorithm: {{ .Values.netscalerCpx.nsLbHashAlgo.hashAlgorithm | quote }}
{{- end }}

---

apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "bootupconfigmap.fullname" . }}
namespace: {{ .Release.Namespace }}
data:
cpx.conf: |
#NetScaler commands
{{- .Values.netscalerCpx.commands | nindent 6 -}}
#Shell commands
{{- .Values.netscalerCpx.shellCommands | nindent 6 -}}
# end of file
Loading