[stable/jasperreports] Add service.type to values.yaml (#9399)

* [stable/jasperreports] Add service.type to values.yaml

Signed-off-by: Javier J. Salmeron Garcia <jsalmeron@bitnami.com>

* Fix notes.txt

Signed-off-by: Javier J. Salmeron Garcia <jsalmeron@bitnami.com>
This commit is contained in:
Javier J. Salmerón-García
2018-11-20 09:04:51 -08:00
committed by k8s-ci-robot
parent b619a46b6f
commit c8f219c9e4
5 changed files with 37 additions and 13 deletions
+1 -1
View File
@@ -1,5 +1,5 @@
name: jasperreports
version: 3.1.1
version: 4.0.0
appVersion: 7.1.0
description: The JasperReports server can be used as a stand-alone or embedded reporting
and BI server that offers web-based reporting, analytic tools and visualization,
+4 -1
View File
@@ -75,7 +75,10 @@ The following table lists the configurable parameters of the JasperReports chart
| `mariadb.db.user` | Database user to create | `bn_jasperreports` |
| `mariadb.db.password` | Password for the database | `nil` |
| `mariadb.rootUser.password` | MariaDB admin password | `nil` |
| `serviceType` | Kubernetes Service type | `LoadBalancer` |
| `service.type` | Kubernetes Service type | `LoadBalancer` |
| `service.externalTrafficPolicy` | Enable client source IP preservation | `Cluster` |
| `service.port` | Service HTTP port | `80` |
| `service.nodePorts.http` | Kubernetes http node port | `""` |
| `persistence.enabled` | Enable persistence using PVC | `true` |
| `persistence.storageClass` | PVC Storage Class for JasperReports volume | `nil` (uses alpha storage annotation) |
| `persistence.accessMode` | PVC Access Mode for JasperReports volume | `ReadWriteOnce` |
+8 -6
View File
@@ -3,24 +3,26 @@
1. Get the JasperReports URL by running:
{{- if contains "NodePort" .Values.serviceType }}
{{- if contains "NodePort" .Values.service.type }}
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ template "jasperreports.fullname" . }})
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
echo "JasperReports URL: http://$NODE_IP:$NODE_PORT/"
{{- else if contains "LoadBalancer" .Values.serviceType }}
{{- else if contains "LoadBalancer" .Values.service.type }}
** Please ensure an external IP is associated to the {{ template "jasperreports.fullname" . }} service before proceeding **
** Watch the status using: kubectl get svc --namespace {{ .Release.Namespace }} -w {{ template "jasperreports.fullname" . }} **
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ template "jasperreports.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}")
echo "JasperReports URL: http://$SERVICE_IP/jasperserver/"
{{- else if contains "ClusterIP" .Values.serviceType }}
{{- $port:=.Values.service.port | toString }}
echo "JasperReports URL: http://$SERVICE_IP{{- if ne $port "80" }}:{{ .Values.service.port }}{{ end }}/jasperserver/"
{{- else if contains "ClusterIP" .Values.service.type }}
echo "JasperReports URL: http://127.0.0.1:8080/jasperserver/"
kubectl port-forward --namespace {{ .Release.Namespace }} svc/{{ template "jasperreports.fullname" . }} 8080:8080
kubectl port-forward --namespace {{ .Release.Namespace }} svc/{{ template "jasperreports.fullname" . }} 8080:{{ .Values.service.port }}
{{- end }}
@@ -41,6 +43,6 @@ host. To configure JasperReports to use and external database host:
1. Complete your JasperReports deployment by running:
helm upgrade {{ .Release.Name }} --set serviceType={{ .Values.serviceType }},mariadb.enabled=false,externalDatabase.host=YOUR_EXTERNAL_DATABASE_HOST stable/jasperreports
helm upgrade {{ .Release.Name }} --set service.type={{ .Values.service.type }},mariadb.enabled=false,externalDatabase.host=YOUR_EXTERNAL_DATABASE_HOST stable/jasperreports
{{- end }}
+10 -4
View File
@@ -8,10 +8,16 @@ metadata:
release: "{{ .Release.Name }}"
heritage: "{{ .Release.Service }}"
spec:
type: {{ .Values.serviceType }}
type: {{ .Values.service.type }}
{{- if (or (eq .Values.service.type "LoadBalancer") (eq .Values.service.type "NodePort")) }}
externalTrafficPolicy: {{ .Values.service.externalTrafficPolicy | quote }}
{{- end }}
ports:
- name: http
port: 80
targetPort: http
- name: http
port: {{ .Values.service.port }}
targetPort: http
{{- if (and (eq .Values.service.type "NodePort") (not (empty .Values.service.nodePorts.http)))}}
nodePort: {{ .Values.service.nodePorts.http }}
{{- end }}
selector:
app: {{ template "jasperreports.fullname" . }}
+14 -1
View File
@@ -121,7 +121,20 @@ mariadb:
## Kubernetes configuration
## For minikube, set this to NodePort, elsewhere use LoadBalancer
##
serviceType: LoadBalancer
service:
type: LoadBalancer
# HTTP Port
port: 80
##
## nodePorts:
## http: <to set explicitly, choose port between 30000-32767>
## https: <to set explicitly, choose port between 30000-32767>
nodePorts:
http: ""
## Enable client source IP preservation
## ref http://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip
##
externalTrafficPolicy: Cluster
## Enable persistence using Persistent Volume Claims
## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/