mirror of
https://github.com/bitnami/charts.git
synced 2026-03-16 06:47:30 +08:00
[bitnami/kubeapps] add Kubeapps chart
This commit is contained in:
1
bitnami/kubeapps/.gitignore
vendored
Normal file
1
bitnami/kubeapps/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
charts/*.tgz
|
||||||
21
bitnami/kubeapps/.helmignore
Normal file
21
bitnami/kubeapps/.helmignore
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
# 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
|
||||||
|
*~
|
||||||
|
# Various IDEs
|
||||||
|
.project
|
||||||
|
.idea/
|
||||||
|
*.tmproj
|
||||||
19
bitnami/kubeapps/Chart.yaml
Normal file
19
bitnami/kubeapps/Chart.yaml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
name: kubeapps
|
||||||
|
version: 0.1.0
|
||||||
|
appVersion: 1.0.0.alpha.4
|
||||||
|
description: Kubeapps is a dashboard for your Kubernetes cluster that makes it easy to deploy and manage applications in your cluster using Helm
|
||||||
|
icon: https://raw.githubusercontent.com/kubeapps/kubeapps/master/docs/img/logo.png
|
||||||
|
keywords:
|
||||||
|
- helm
|
||||||
|
- dashboard
|
||||||
|
- service catalog
|
||||||
|
- deployment
|
||||||
|
home: https://kubeapps.com
|
||||||
|
sources:
|
||||||
|
- https://github.com/kubeapps/kubeapps
|
||||||
|
maintainers:
|
||||||
|
- name: bitnami-bot
|
||||||
|
email: containers@bitnami.com
|
||||||
|
- name: prydonius
|
||||||
|
email: adnan@bitnami.com
|
||||||
142
bitnami/kubeapps/README.md
Normal file
142
bitnami/kubeapps/README.md
Normal file
@@ -0,0 +1,142 @@
|
|||||||
|
# <img src="https://github.com/kubeapps/kubeapps/raw/master/docs/img/logo.png" width="40" align="left"> Kubeapps
|
||||||
|
|
||||||
|
[](https://travis-ci.org/kubeapps/kubeapps)
|
||||||
|
|
||||||
|
[Kubeapps](https://kubeapps.com) is a web-based UI for deploying and managing applications in Kubernetes clusters. Kubeapps allows you to:
|
||||||
|
|
||||||
|
- Browse and deploy [Helm](https://github.com/helm/helm) charts from chart repositories
|
||||||
|
- Inspect, upgrade and delete Helm-based applications installed in the cluster
|
||||||
|
- Add custom and private chart repositories (supports [ChartMuseum](https://github.com/helm/chartmuseum) and [JFrog Artifactory](https://www.jfrog.com/confluence/display/RTF/Helm+Chart+Repositories))
|
||||||
|
- Browse and provision external services from the [Service Catalog](https://github.com/kubernetes-incubator/service-catalog) and available Service Brokers
|
||||||
|
- Connect Helm-based applications to external services with Service Catalog Bindings
|
||||||
|
- Secure authentication and authorization based on Kubernetes [Role-Based Access Control](docs/user/access-control.md)
|
||||||
|
|
||||||
|
## TL;DR;
|
||||||
|
|
||||||
|
```bash
|
||||||
|
helm repo add bitnami https://charts.bitnami.com/bitnami
|
||||||
|
helm install --name kubeapps --namespace kubeapps bitnami/kubeapps
|
||||||
|
```
|
||||||
|
|
||||||
|
## Introduction
|
||||||
|
|
||||||
|
This chart bootstraps a [Kubeapps](https://kubeapps.com) deployment on a [Kubernetes](http://kubernetes.io) cluster using the [Helm](https://helm.sh) package manager.
|
||||||
|
|
||||||
|
It also packages the [Bitnami MongoDB chart](https://github.com/helm/charts/tree/master/stable/mongodb) which is required for bootstrapping a MongoDB deployment for the database requirements of the Kubeapps application.
|
||||||
|
|
||||||
|
## Prerequisites
|
||||||
|
|
||||||
|
- Kubernetes 1.8+ (tested with Azure Kubernetes Service, Google Kubernetes Engine, minikube and Docker for Desktop Kubernetes)
|
||||||
|
- Helm 2.9.1+
|
||||||
|
- PV provisioner support in the underlying infrastructure
|
||||||
|
- Administrative access to the cluster to create and update RBAC ClusterRoles
|
||||||
|
|
||||||
|
## Installing the Chart
|
||||||
|
|
||||||
|
To install the chart with the release name `kubeapps`:
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ helm repo add bitnami https://charts.bitnami.com/bitnami
|
||||||
|
$ helm install --name kubeapps --namespace kubeapps bitnami/kubeapps
|
||||||
|
```
|
||||||
|
|
||||||
|
The command deploys Kubeapps on the Kubernetes cluster in the `kubeapps` namespace. The [configuration](#configuration) section lists the parameters that can be configured during installation.
|
||||||
|
|
||||||
|
> **Tip**: List all releases using `helm list`
|
||||||
|
|
||||||
|
## Upgrading Kubeapps
|
||||||
|
|
||||||
|
To upgrade Kubeapps, first ensure you have the updated your local chart repository cache:
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ helm repo update
|
||||||
|
```
|
||||||
|
|
||||||
|
Now upgrade Kubeapps:
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ export RELEASE_NAME=kubeapps
|
||||||
|
$ export NAMESPACE=kubeapps
|
||||||
|
$ export MONGODB_ROOT_PASSWORD=$(kubectl get secret --namespace $NAMESPACE $RELEASE_NAME-mongodb -o jsonpath="{.data.mongodb-root-password}" | base64 --decode)
|
||||||
|
$ helm upgrade $RELEASE_NAME bitnami/kubeapps --set mongodb.mongodbRootPassword=$MONGODB_ROOT_PASSWORD
|
||||||
|
```
|
||||||
|
|
||||||
|
The above commands ensure the MongoDB password is set to the existing password and not regenerated by the chart.
|
||||||
|
|
||||||
|
## Uninstalling Kubeapps
|
||||||
|
|
||||||
|
To uninstall/delete the `kubeapps` deployment:
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ helm delete --purge kubeapps
|
||||||
|
```
|
||||||
|
|
||||||
|
The command removes all the Kubernetes components associated with the chart and deletes the release.
|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
|
||||||
|
For a full list of configuration parameters of the Kubeapps chart, see the [values.yaml](values.yaml) file.
|
||||||
|
|
||||||
|
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ helm install --name kubeapps --namespace kubeapps \
|
||||||
|
--set chartsvc.service.port=9090 \
|
||||||
|
bitnami/kubeapps
|
||||||
|
```
|
||||||
|
|
||||||
|
The above command sets the port for the chartsvc Service to 9090.
|
||||||
|
|
||||||
|
Alternatively, a YAML file that specifies the values for parameters can be provided while installing the chart. For example,
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ helm install --name kubeapps --namespace kubeapps -f custom-values.yaml bitnami/kubeapps
|
||||||
|
```
|
||||||
|
|
||||||
|
### Configuring Initial Repositories
|
||||||
|
|
||||||
|
By default, Kubeapps will track the [community Helm charts](https://github.com/helm/charts) and the [Kubernetes Service Catalog charts](https://github.com/kubernetes-incubator/service-catalog). To change these defaults, override the `apprepository.initialRepos` object:
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ cat > custom-values.yaml <<EOF
|
||||||
|
apprepository:
|
||||||
|
initialRepos:
|
||||||
|
- name: example
|
||||||
|
url: https://charts.example.com
|
||||||
|
EOF
|
||||||
|
$ helm install --name kubeapps --namespace kubeapps bitnami/kubeapps -f custom-values.yaml
|
||||||
|
```
|
||||||
|
|
||||||
|
### Exposing Externally
|
||||||
|
|
||||||
|
#### LoadBalancer Service
|
||||||
|
|
||||||
|
The simplest way to expose the Kubeapps Dashboard is to assign a LoadBalancer type to the Kubeapps frontend Service. For example:
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ helm install --name kubeapps --namespace kubeapps bitnami/kubeapps --set frontend.service.type=LoadBalancer
|
||||||
|
```
|
||||||
|
|
||||||
|
Wait for your cluster to assign a LoadBalancer IP or Hostname to the `kubeapps` Service and access it on that address:
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ kubectl get services --namespace kubeapps --watch
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Ingress
|
||||||
|
|
||||||
|
This chart provides support for ingress resources. If you have an ingress controller installed on your cluster, such as [nginx-ingress](https://hub.kubeapps.com/charts/stable/nginx-ingress) or [traefik](https://hub.kubeapps.com/charts/stable/traefik) you can utilize the ingress controller to expose Kubeapps.
|
||||||
|
|
||||||
|
To enable ingress integration, please set `ingress.enabled` to `true`
|
||||||
|
|
||||||
|
##### Hosts
|
||||||
|
|
||||||
|
Most likely you will only want to have one hostname that maps to this Kubeapps installation, however, it is possible to have more than one host. To facilitate this, the `ingress.hosts` object is an array.
|
||||||
|
|
||||||
|
##### Annotations
|
||||||
|
|
||||||
|
For annotations, please see [this document](https://github.com/kubernetes/ingress-nginx/blob/master/docs/annotations.md). Not all annotations are supported by all ingress controllers, but this document does a good job of indicating which annotation is supported by many popular ingress controllers. Annotations can be set using `ingress.annotations`.
|
||||||
|
|
||||||
|
##### TLS
|
||||||
|
|
||||||
|
TLS can be configured using the `ingress.tls` object in the same format that the Kubernetes Ingress requests. Please see [this example](https://github.com/kubernetes/contrib/tree/master/ingress/controllers/nginx/examples/tls) for more information.
|
||||||
6
bitnami/kubeapps/requirements.lock
Normal file
6
bitnami/kubeapps/requirements.lock
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
dependencies:
|
||||||
|
- name: mongodb
|
||||||
|
repository: https://kubernetes-charts.storage.googleapis.com
|
||||||
|
version: 4.0.4
|
||||||
|
digest: sha256:415440e73af7d4b02a10a15f28bb2fc095cbdffdc2e1676d76e0f0eaa1632d50
|
||||||
|
generated: 2018-08-01T11:50:24.777058724-07:00
|
||||||
4
bitnami/kubeapps/requirements.yaml
Normal file
4
bitnami/kubeapps/requirements.yaml
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
dependencies:
|
||||||
|
- name: mongodb
|
||||||
|
version: ">= 0"
|
||||||
|
repository: https://kubernetes-charts.storage.googleapis.com
|
||||||
19
bitnami/kubeapps/templates/NOTES.txt
Normal file
19
bitnami/kubeapps/templates/NOTES.txt
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
1. Get the application URL by running these commands:
|
||||||
|
{{- if .Values.ingress.enabled }}
|
||||||
|
{{- range .Values.ingress.hosts }}
|
||||||
|
echo http{{ if $.Values.ingress.tls }}s{{ end }}://{{ . }}{{ $.Values.ingress.path }}
|
||||||
|
{{- end }}
|
||||||
|
{{- else if contains "NodePort" .Values.frontend.service.type }}
|
||||||
|
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ template "kubeapps.fullname" . }})
|
||||||
|
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
|
||||||
|
echo http://$NODE_IP:$NODE_PORT
|
||||||
|
{{- else if contains "LoadBalancer" .Values.frontend.service.type }}
|
||||||
|
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
|
||||||
|
You can watch the status by running 'kubectl get svc -w {{ template "kubeapps.fullname" . }}'
|
||||||
|
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ template "kubeapps.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
|
||||||
|
echo http://$SERVICE_IP:{{ .Values.frontend.service.port }}
|
||||||
|
{{- else if contains "ClusterIP" .Values.frontend.service.type }}
|
||||||
|
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app={{ template "kubeapps.fullname" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
|
||||||
|
echo "Visit http://127.0.0.1:8080 to use your application"
|
||||||
|
kubectl port-forward --namespace {{ .Release.Namespace }} $POD_NAME 8080:8080
|
||||||
|
{{- end }}
|
||||||
97
bitnami/kubeapps/templates/_helpers.tpl
Normal file
97
bitnami/kubeapps/templates/_helpers.tpl
Normal file
@@ -0,0 +1,97 @@
|
|||||||
|
{{/* vim: set filetype=mustache: */}}
|
||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "kubeapps.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 "kubeapps.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 -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Render image reference
|
||||||
|
*/}}
|
||||||
|
{{- define "kubeapps.image" -}}
|
||||||
|
{{ .registry }}/{{ .repository }}:{{ .tag }}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create a default fully qualified app name for MongoDB dependency.
|
||||||
|
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||||
|
*/}}
|
||||||
|
{{- define "kubeapps.mongodb.fullname" -}}
|
||||||
|
{{- $name := default "mongodb" .Values.mongodb.nameOverride -}}
|
||||||
|
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create chart name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "kubeapps.chart" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create name for the apprepository-controller based on the fullname
|
||||||
|
*/}}
|
||||||
|
{{- define "kubeapps.apprepository.fullname" -}}
|
||||||
|
{{ template "kubeapps.fullname" . }}-apprepository-controller
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create name for the apprepository bootstrap job
|
||||||
|
*/}}
|
||||||
|
{{- define "kubeapps.apprepository-jobs-bootstrap.fullname" -}}
|
||||||
|
{{ template "kubeapps.fullname" . }}-apprepository-jobs-bootstrap
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create name for the chartsvc based on the fullname
|
||||||
|
*/}}
|
||||||
|
{{- define "kubeapps.chartsvc.fullname" -}}
|
||||||
|
{{ template "kubeapps.fullname" . }}-chartsvc
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create name for the dashboard based on the fullname
|
||||||
|
*/}}
|
||||||
|
{{- define "kubeapps.dashboard.fullname" -}}
|
||||||
|
{{ template "kubeapps.fullname" . }}-dashboard
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create name for the dashboard config based on the fullname
|
||||||
|
*/}}
|
||||||
|
{{- define "kubeapps.dashboard-config.fullname" -}}
|
||||||
|
{{ template "kubeapps.fullname" . }}-dashboard-config
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create name for the frontend config based on the fullname
|
||||||
|
*/}}
|
||||||
|
{{- define "kubeapps.frontend-config.fullname" -}}
|
||||||
|
{{ template "kubeapps.fullname" . }}-frontend-config
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create name for the tiller-proxy based on the fullname
|
||||||
|
*/}}
|
||||||
|
{{- define "kubeapps.tiller-proxy.fullname" -}}
|
||||||
|
{{ template "kubeapps.fullname" . }}-tiller-proxy
|
||||||
|
{{- end -}}
|
||||||
17
bitnami/kubeapps/templates/apprepository-crd.yaml
Normal file
17
bitnami/kubeapps/templates/apprepository-crd.yaml
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
apiVersion: apiextensions.k8s.io/v1beta1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: apprepositories.kubeapps.com
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
spec:
|
||||||
|
group: kubeapps.com
|
||||||
|
names:
|
||||||
|
kind: AppRepository
|
||||||
|
plural: apprepositories
|
||||||
|
shortNames:
|
||||||
|
- apprepos
|
||||||
|
version: v1alpha1
|
||||||
47
bitnami/kubeapps/templates/apprepository-deployment.yaml
Normal file
47
bitnami/kubeapps/templates/apprepository-deployment.yaml
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
apiVersion: apps/v1beta2
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
serviceAccountName: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
containers:
|
||||||
|
- name: controller
|
||||||
|
image: {{ template "kubeapps.image" .Values.apprepository.image }}
|
||||||
|
command:
|
||||||
|
- /apprepository-controller
|
||||||
|
args:
|
||||||
|
- --logtostderr
|
||||||
|
- --repo-sync-image={{ template "kubeapps.image" .Values.apprepository.syncImage }}
|
||||||
|
- --namespace={{ .Release.Namespace }}
|
||||||
|
- --mongo-url={{ template "kubeapps.mongodb.fullname" . }}
|
||||||
|
- --mongo-secret-name={{ template "kubeapps.mongodb.fullname" . }}
|
||||||
|
resources:
|
||||||
|
{{ toYaml .Values.apprepository.resources | indent 12 }}
|
||||||
|
{{- with .Values.apprepository.nodeSelector }}
|
||||||
|
nodeSelector:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.apprepository.affinity }}
|
||||||
|
affinity:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.apprepository.tolerations }}
|
||||||
|
tolerations:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.apprepository-jobs-bootstrap.fullname" . }}
|
||||||
|
annotations:
|
||||||
|
helm.sh/hook: post-install
|
||||||
|
helm.sh/hook-delete-policy: hook-succeeded
|
||||||
|
helm.sh/hook-weight: "-10"
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.apprepository-jobs-bootstrap.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
data:
|
||||||
|
apprepositories.yaml: |-
|
||||||
|
{{- range .Values.apprepository.initialRepos }}
|
||||||
|
apiVersion: kubeapps.com/v1alpha1
|
||||||
|
kind: AppRepository
|
||||||
|
metadata:
|
||||||
|
name: {{ .name }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.apprepository.fullname" $ }}
|
||||||
|
chart: {{ template "kubeapps.chart" $ }}
|
||||||
|
release: {{ $.Release.Name }}
|
||||||
|
heritage: {{ $.Release.Service }}
|
||||||
|
spec:
|
||||||
|
type: helm
|
||||||
|
url: {{ .url }}
|
||||||
|
---
|
||||||
|
{{ end -}}
|
||||||
@@ -0,0 +1,44 @@
|
|||||||
|
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.apprepository-jobs-bootstrap.fullname" . }}
|
||||||
|
annotations:
|
||||||
|
helm.sh/hook: post-install
|
||||||
|
helm.sh/hook-delete-policy: hook-succeeded
|
||||||
|
helm.sh/hook-weight: "-10"
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.apprepository-jobs-bootstrap.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- kubeapps.com
|
||||||
|
resources:
|
||||||
|
- apprepositories
|
||||||
|
verbs:
|
||||||
|
- get
|
||||||
|
- create
|
||||||
|
- delete
|
||||||
|
---
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||||
|
kind: RoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.apprepository-jobs-bootstrap.fullname" . }}
|
||||||
|
annotations:
|
||||||
|
helm.sh/hook: post-install
|
||||||
|
helm.sh/hook-delete-policy: hook-succeeded
|
||||||
|
helm.sh/hook-weight: "-10"
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.apprepository-jobs-bootstrap.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: Role
|
||||||
|
name: {{ template "kubeapps.apprepository-jobs-bootstrap.fullname" . }}
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kubeapps.apprepository-jobs-bootstrap.fullname" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: ServiceAccount
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.apprepository-jobs-bootstrap.fullname" . }}
|
||||||
|
annotations:
|
||||||
|
helm.sh/hook: post-install
|
||||||
|
helm.sh/hook-delete-policy: hook-succeeded
|
||||||
|
helm.sh/hook-weight: "-10"
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.apprepository-jobs-bootstrap.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
50
bitnami/kubeapps/templates/apprepository-jobs-bootstrap.yaml
Normal file
50
bitnami/kubeapps/templates/apprepository-jobs-bootstrap.yaml
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
apiVersion: batch/v1
|
||||||
|
kind: Job
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.apprepository-jobs-bootstrap.fullname" . }}
|
||||||
|
annotations:
|
||||||
|
helm.sh/hook: post-install
|
||||||
|
helm.sh/hook-delete-policy: hook-succeeded
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.apprepository-jobs-bootstrap.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
spec:
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.apprepository-jobs-bootstrap.fullname" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: kubectl
|
||||||
|
image: {{ template "kubeapps.image" .Values.apprepository.jobsImage }}
|
||||||
|
command:
|
||||||
|
- kubectl
|
||||||
|
- apply
|
||||||
|
- -f
|
||||||
|
- /tmp/apprepositories/apprepositories.yaml
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /tmp/apprepositories
|
||||||
|
name: apprepositories-config
|
||||||
|
resources:
|
||||||
|
{{ toYaml .Values.apprepository.resources | indent 12 }}
|
||||||
|
volumes:
|
||||||
|
- name: apprepositories-config
|
||||||
|
configMap:
|
||||||
|
name: {{ template "kubeapps.apprepository-jobs-bootstrap.fullname" . }}
|
||||||
|
restartPolicy: OnFailure
|
||||||
|
serviceAccountName: {{ template "kubeapps.apprepository-jobs-bootstrap.fullname" . }}
|
||||||
|
{{- with .Values.apprepository.nodeSelector }}
|
||||||
|
nodeSelector:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.apprepository.affinity }}
|
||||||
|
affinity:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.apprepository.tolerations }}
|
||||||
|
tolerations:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
99
bitnami/kubeapps/templates/apprepository-rbac.yaml
Normal file
99
bitnami/kubeapps/templates/apprepository-rbac.yaml
Normal file
@@ -0,0 +1,99 @@
|
|||||||
|
# Need a cluster role because client-go v5.0.1 does not support namespaced
|
||||||
|
# informers
|
||||||
|
# TODO: remove when we update to client-go v6.0.0
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- batch
|
||||||
|
resources:
|
||||||
|
- cronjobs
|
||||||
|
verbs:
|
||||||
|
- get
|
||||||
|
- list
|
||||||
|
- watch
|
||||||
|
---
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
---
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- ""
|
||||||
|
resources:
|
||||||
|
- events
|
||||||
|
verbs:
|
||||||
|
- create
|
||||||
|
- apiGroups:
|
||||||
|
- batch
|
||||||
|
resources:
|
||||||
|
- cronjobs
|
||||||
|
verbs:
|
||||||
|
- create
|
||||||
|
- get
|
||||||
|
- list
|
||||||
|
- update
|
||||||
|
- watch
|
||||||
|
- apiGroups:
|
||||||
|
- batch
|
||||||
|
resources:
|
||||||
|
- jobs
|
||||||
|
verbs:
|
||||||
|
- create
|
||||||
|
- apiGroups:
|
||||||
|
- kubeapps.com
|
||||||
|
resources:
|
||||||
|
- apprepositories
|
||||||
|
verbs:
|
||||||
|
- get
|
||||||
|
- list
|
||||||
|
- update
|
||||||
|
- watch
|
||||||
|
---
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||||
|
kind: RoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: Role
|
||||||
|
name: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: ServiceAccount
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
52
bitnami/kubeapps/templates/chartsvc-deployment.yaml
Normal file
52
bitnami/kubeapps/templates/chartsvc-deployment.yaml
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
apiVersion: apps/v1beta2
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.chartsvc.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.chartsvc.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: {{ template "kubeapps.chartsvc.fullname" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.chartsvc.fullname" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: chartsvc
|
||||||
|
image: {{ template "kubeapps.image" .Values.chartsvc.image }}
|
||||||
|
command:
|
||||||
|
- /chartsvc
|
||||||
|
args:
|
||||||
|
- --mongo-user=root
|
||||||
|
- --mongo-url={{ template "kubeapps.mongodb.fullname" . }}
|
||||||
|
env:
|
||||||
|
- name: MONGO_PASSWORD
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: {{ template "kubeapps.mongodb.fullname" . }}
|
||||||
|
key: mongodb-root-password
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
containerPort: {{ .Values.chartsvc.service.port }}
|
||||||
|
resources:
|
||||||
|
{{ toYaml .Values.chartsvc.resources | indent 12 }}
|
||||||
|
{{- with .Values.chartsvc.nodeSelector }}
|
||||||
|
nodeSelector:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.chartsvc.affinity }}
|
||||||
|
affinity:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.chartsvc.tolerations }}
|
||||||
|
tolerations:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
19
bitnami/kubeapps/templates/chartsvc-service.yaml
Normal file
19
bitnami/kubeapps/templates/chartsvc-service.yaml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.chartsvc.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.name" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
spec:
|
||||||
|
type: ClusterIP
|
||||||
|
ports:
|
||||||
|
- port: {{ .Values.chartsvc.service.port }}
|
||||||
|
targetPort: http
|
||||||
|
protocol: TCP
|
||||||
|
name: http
|
||||||
|
selector:
|
||||||
|
app: {{ template "kubeapps.chartsvc.fullname" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
26
bitnami/kubeapps/templates/dashboard-config.yaml
Normal file
26
bitnami/kubeapps/templates/dashboard-config.yaml
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.dashboard-config.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.dashboard-config.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
data:
|
||||||
|
vhost.conf: |-
|
||||||
|
server {
|
||||||
|
listen 8080;
|
||||||
|
server_name _;
|
||||||
|
|
||||||
|
gzip on;
|
||||||
|
gzip_static on;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
try_files $uri /index.html;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
config.json: |-
|
||||||
|
{
|
||||||
|
"namespace": "{{ .Release.Namespace }}"
|
||||||
|
}
|
||||||
66
bitnami/kubeapps/templates/dashboard-deployment.yaml
Normal file
66
bitnami/kubeapps/templates/dashboard-deployment.yaml
Normal file
@@ -0,0 +1,66 @@
|
|||||||
|
apiVersion: apps/v1beta2
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.dashboard.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.dashboard.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: {{ template "kubeapps.dashboard.fullname" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
checksum/config: {{ include (print $.Template.BasePath "/dashboard-config.yaml") . | sha256sum }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.dashboard.fullname" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: dashboard
|
||||||
|
image: {{ template "kubeapps.image" .Values.dashboard.image }}
|
||||||
|
livenessProbe:
|
||||||
|
{{ toYaml .Values.dashboard.livenessProbe | indent 10 }}
|
||||||
|
readinessProbe:
|
||||||
|
{{ toYaml .Values.dashboard.readinessProbe | indent 10 }}
|
||||||
|
volumeMounts:
|
||||||
|
- name: vhost
|
||||||
|
mountPath: /opt/bitnami/nginx/conf/vhosts
|
||||||
|
- name: config
|
||||||
|
mountPath: /app/config.json
|
||||||
|
subPath: config.json
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
containerPort: 8080
|
||||||
|
resources:
|
||||||
|
{{ toYaml .Values.dashboard.resources | indent 12 }}
|
||||||
|
volumes:
|
||||||
|
- name: vhost
|
||||||
|
configMap:
|
||||||
|
name: {{ template "kubeapps.dashboard-config.fullname" . }}
|
||||||
|
items:
|
||||||
|
- key: vhost.conf
|
||||||
|
path: vhost.conf
|
||||||
|
- name: config
|
||||||
|
configMap:
|
||||||
|
name: {{ template "kubeapps.dashboard-config.fullname" . }}
|
||||||
|
items:
|
||||||
|
- key: config.json
|
||||||
|
path: config.json
|
||||||
|
{{- with .Values.dashboard.nodeSelector }}
|
||||||
|
nodeSelector:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.dashboard.affinity }}
|
||||||
|
affinity:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.dashboard.tolerations }}
|
||||||
|
tolerations:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
19
bitnami/kubeapps/templates/dashboard-service.yaml
Normal file
19
bitnami/kubeapps/templates/dashboard-service.yaml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.dashboard.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.name" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
spec:
|
||||||
|
type: ClusterIP
|
||||||
|
ports:
|
||||||
|
- port: {{ .Values.dashboard.service.port }}
|
||||||
|
targetPort: http
|
||||||
|
protocol: TCP
|
||||||
|
name: http
|
||||||
|
selector:
|
||||||
|
app: {{ template "kubeapps.dashboard.fullname" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
38
bitnami/kubeapps/templates/ingress.yaml
Normal file
38
bitnami/kubeapps/templates/ingress.yaml
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
{{- if .Values.ingress.enabled -}}
|
||||||
|
{{- $fullName := include "kubeapps.fullname" . -}}
|
||||||
|
{{- $ingressPath := .Values.ingress.path -}}
|
||||||
|
apiVersion: extensions/v1beta1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: {{ $fullName }}
|
||||||
|
labels:
|
||||||
|
app: {{ include "kubeapps.name" . }}
|
||||||
|
chart: {{ include "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
{{- with .Values.ingress.annotations }}
|
||||||
|
annotations:
|
||||||
|
{{ toYaml . | indent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
{{- if .Values.ingress.tls }}
|
||||||
|
tls:
|
||||||
|
{{- range .Values.ingress.tls }}
|
||||||
|
- hosts:
|
||||||
|
{{- range .hosts }}
|
||||||
|
- {{ . | quote }}
|
||||||
|
{{- end }}
|
||||||
|
secretName: {{ .secretName }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
rules:
|
||||||
|
{{- range .Values.ingress.hosts }}
|
||||||
|
- host: {{ . | quote }}
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: {{ $ingressPath }}
|
||||||
|
backend:
|
||||||
|
serviceName: {{ $fullName }}
|
||||||
|
servicePort: http
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
58
bitnami/kubeapps/templates/kubeapps-frontend-config.yaml
Normal file
58
bitnami/kubeapps/templates/kubeapps-frontend-config.yaml
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.frontend-config.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.frontend-config.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
data:
|
||||||
|
vhost.conf: |-
|
||||||
|
# Retain the default nginx handling of requests without a "Connection" header
|
||||||
|
map $http_upgrade $connection_upgrade {
|
||||||
|
default upgrade;
|
||||||
|
'' close;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Allow websocket connections
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header Connection $connection_upgrade;
|
||||||
|
|
||||||
|
server {
|
||||||
|
listen 8080;
|
||||||
|
server_name _;
|
||||||
|
|
||||||
|
location /healthz {
|
||||||
|
access_log off;
|
||||||
|
default_type text/plain;
|
||||||
|
return 200 "healthy\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
location /api/kube {
|
||||||
|
rewrite /api/kube/(.*) /$1 break;
|
||||||
|
rewrite /api/kube / break;
|
||||||
|
proxy_pass https://kubernetes.default;
|
||||||
|
# Disable buffering for log streaming
|
||||||
|
proxy_buffering off;
|
||||||
|
# Hide Www-Authenticate to prevent it triggering a basic auth prompt in
|
||||||
|
# the browser with some clusters
|
||||||
|
proxy_hide_header Www-Authenticate;
|
||||||
|
}
|
||||||
|
|
||||||
|
location /api/chartsvc {
|
||||||
|
rewrite /api/chartsvc/(.*) /$1 break;
|
||||||
|
rewrite /api/chartsvc / break;
|
||||||
|
proxy_pass http://{{ template "kubeapps.chartsvc.fullname" . }}:{{ .Values.chartsvc.service.port }};
|
||||||
|
}
|
||||||
|
|
||||||
|
location /api/tiller-deploy {
|
||||||
|
rewrite /api/tiller-deploy/(.*) /$1 break;
|
||||||
|
rewrite /api/tiller-deploy / break;
|
||||||
|
proxy_pass http://{{ template "kubeapps.tiller-proxy.fullname" . }}:{{ .Values.tillerProxy.service.port }};
|
||||||
|
}
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_pass http://{{ template "kubeapps.dashboard.fullname" . }}:{{ .Values.dashboard.service.port }};
|
||||||
|
}
|
||||||
|
}
|
||||||
54
bitnami/kubeapps/templates/kubeapps-frontend-deployment.yaml
Normal file
54
bitnami/kubeapps/templates/kubeapps-frontend-deployment.yaml
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
apiVersion: apps/v1beta2
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: {{ template "kubeapps.fullname" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
checksum/config: {{ include (print $.Template.BasePath "/kubeapps-frontend-config.yaml") . | sha256sum }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.fullname" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: nginx
|
||||||
|
image: {{ template "kubeapps.image" .Values.frontend.image }}
|
||||||
|
livenessProbe:
|
||||||
|
{{ toYaml .Values.frontend.livenessProbe | indent 10 }}
|
||||||
|
readinessProbe:
|
||||||
|
{{ toYaml .Values.frontend.readinessProbe | indent 10 }}
|
||||||
|
volumeMounts:
|
||||||
|
- name: vhost
|
||||||
|
mountPath: /opt/bitnami/nginx/conf/vhosts
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
containerPort: 8080
|
||||||
|
resources:
|
||||||
|
{{ toYaml .Values.frontend.resources | indent 12 }}
|
||||||
|
volumes:
|
||||||
|
- name: vhost
|
||||||
|
configMap:
|
||||||
|
name: {{ template "kubeapps.frontend-config.fullname" . }}
|
||||||
|
{{- with .Values.frontend.nodeSelector }}
|
||||||
|
nodeSelector:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.frontend.affinity }}
|
||||||
|
affinity:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.frontend.tolerations }}
|
||||||
|
tolerations:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
19
bitnami/kubeapps/templates/kubeapps-frontend-service.yaml
Normal file
19
bitnami/kubeapps/templates/kubeapps-frontend-service.yaml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.name" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
spec:
|
||||||
|
type: {{ .Values.frontend.service.type }}
|
||||||
|
ports:
|
||||||
|
- port: {{ .Values.frontend.service.port }}
|
||||||
|
targetPort: http
|
||||||
|
protocol: TCP
|
||||||
|
name: http
|
||||||
|
selector:
|
||||||
|
app: {{ template "kubeapps.fullname" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
63
bitnami/kubeapps/templates/tiller-proxy-deployment.yaml
Normal file
63
bitnami/kubeapps/templates/tiller-proxy-deployment.yaml
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
apiVersion: apps/v1beta2
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.tiller-proxy.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.tiller-proxy.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: {{ template "kubeapps.tiller-proxy.fullname" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.tiller-proxy.fullname" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: proxy
|
||||||
|
image: {{ template "kubeapps.image" .Values.tillerProxy.image }}
|
||||||
|
command:
|
||||||
|
- /proxy
|
||||||
|
args:
|
||||||
|
- --host={{ .Values.tillerProxy.host }}
|
||||||
|
{{- if .Values.tillerProxy.tls }}
|
||||||
|
- --tls
|
||||||
|
{{- if .Values.tillerProxy.tls.verify }}
|
||||||
|
- --tls-verify
|
||||||
|
{{- end }}
|
||||||
|
env:
|
||||||
|
- name: HELM_HOME
|
||||||
|
value: /etc/certs
|
||||||
|
volumeMounts:
|
||||||
|
- name: tiller-certs
|
||||||
|
mountPath: /etc/certs
|
||||||
|
{{- end }}
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
containerPort: {{ .Values.chartsvc.service.port }}
|
||||||
|
resources:
|
||||||
|
{{ toYaml .Values.tillerProxy.resources | indent 12 }}
|
||||||
|
{{- if .Values.tillerProxy.tls }}
|
||||||
|
volumes:
|
||||||
|
- name: tiller-certs
|
||||||
|
secret:
|
||||||
|
secretName: {{ template "kubeapps.tiller-proxy.fullname" . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.tillerProxy.nodeSelector }}
|
||||||
|
nodeSelector:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.tillerProxy.affinity }}
|
||||||
|
affinity:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.tillerProxy.tolerations }}
|
||||||
|
tolerations:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
18
bitnami/kubeapps/templates/tiller-proxy-secret.yaml
Normal file
18
bitnami/kubeapps/templates/tiller-proxy-secret.yaml
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
{{- if .Values.tillerProxy.tls -}}
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.tiller-proxy.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.tiller-proxy.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
data:
|
||||||
|
ca.crt: |-
|
||||||
|
{{ .Values.tillerProxy.tls.ca | b64enc | indent 4 }}
|
||||||
|
tls.crt: |-
|
||||||
|
{{ .Values.tillerProxy.tls.cert | b64enc | indent 4 }}
|
||||||
|
tls.key: |-
|
||||||
|
{{ .Values.tillerProxy.tls.key | b64enc | indent 4 }}
|
||||||
|
{{- end -}}
|
||||||
19
bitnami/kubeapps/templates/tiller-proxy-service.yaml
Normal file
19
bitnami/kubeapps/templates/tiller-proxy-service.yaml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.tiller-proxy.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.name" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
spec:
|
||||||
|
type: ClusterIP
|
||||||
|
ports:
|
||||||
|
- port: {{ .Values.tillerProxy.service.port }}
|
||||||
|
targetPort: http
|
||||||
|
protocol: TCP
|
||||||
|
name: http
|
||||||
|
selector:
|
||||||
|
app: {{ template "kubeapps.tiller-proxy.fullname" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
152
bitnami/kubeapps/templates/user-rbac.yaml
Normal file
152
bitnami/kubeapps/templates/user-rbac.yaml
Normal file
@@ -0,0 +1,152 @@
|
|||||||
|
# Preset Roles and ClusterRoles that can be bound to users for use with Kubeapps
|
||||||
|
# See https://github.com/kubeapps/kubeapps/blob/master/docs/user/access-control.md
|
||||||
|
|
||||||
|
{{- define "kubeapps.user-rbac.labels" -}}
|
||||||
|
labels:
|
||||||
|
app: {{ template "kubeapps.fullname" . }}
|
||||||
|
chart: {{ template "kubeapps.chart" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
# kubeapps-applications-read
|
||||||
|
# Gives read-only access to all the elements within a Namespace.
|
||||||
|
# Usage:
|
||||||
|
# Apply kubeapps-applications-read clusterrole to user/serviceaccount in the desired namespace
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: kubeapps-applications-read
|
||||||
|
{{ template "kubeapps.user-rbac.labels" . }}
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- "*"
|
||||||
|
resources:
|
||||||
|
- "*"
|
||||||
|
verbs:
|
||||||
|
- list
|
||||||
|
- get
|
||||||
|
- watch
|
||||||
|
---
|
||||||
|
# kubeapps-service-catalog-read
|
||||||
|
# Gives read-only access to Service Instances and Bindings within a Namespace in Kubeapps.
|
||||||
|
# Usage:
|
||||||
|
# Apply kubeapps-service-catalog-read clusterrole to user/serviceaccount in the desired namespace
|
||||||
|
# AND apply kubeapps-service-catalog-browse to user/serviceaccount in all namespaces.
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: kubeapps-service-catalog-browse
|
||||||
|
{{ template "kubeapps.user-rbac.labels" . }}
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- servicecatalog.k8s.io
|
||||||
|
resources:
|
||||||
|
- clusterservicebrokers
|
||||||
|
- clusterserviceclasses
|
||||||
|
- clusterserviceplans
|
||||||
|
verbs:
|
||||||
|
- list
|
||||||
|
---
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: kubeapps-service-catalog-read
|
||||||
|
{{ template "kubeapps.user-rbac.labels" . }}
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- servicecatalog.k8s.io
|
||||||
|
resources:
|
||||||
|
- serviceinstances
|
||||||
|
- servicebindings
|
||||||
|
verbs:
|
||||||
|
- list
|
||||||
|
- get
|
||||||
|
# Allows viewing Service Binding credentials.
|
||||||
|
- apiGroups:
|
||||||
|
- ""
|
||||||
|
resources:
|
||||||
|
- secrets
|
||||||
|
verbs:
|
||||||
|
- get
|
||||||
|
---
|
||||||
|
# kubeapps-service-catalog-write
|
||||||
|
# Gives write access to Service Instances and Bindings within a Namespace in Kubeapps.
|
||||||
|
# Usage:
|
||||||
|
# Apply kubeapps-service-catalog-write clusterrole to user/serviceaccount in the desired namespace.
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: kubeapps-service-catalog-write
|
||||||
|
{{ template "kubeapps.user-rbac.labels" . }}
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- servicecatalog.k8s.io
|
||||||
|
resources:
|
||||||
|
- serviceinstances
|
||||||
|
- servicebindings
|
||||||
|
verbs:
|
||||||
|
- create
|
||||||
|
- delete
|
||||||
|
---
|
||||||
|
# kubeapps-service-catalog-admin
|
||||||
|
# Gives admin access for the Service Broker configuration page in Kubeapps.
|
||||||
|
# Usage:
|
||||||
|
# Apply kubeapps-service-catalog-admin clusterrole to user/serviceaccount in all namespaces.
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: kubeapps-service-catalog-admin
|
||||||
|
{{ template "kubeapps.user-rbac.labels" . }}
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- servicecatalog.k8s.io
|
||||||
|
resources:
|
||||||
|
- clusterservicebrokers
|
||||||
|
verbs:
|
||||||
|
- patch
|
||||||
|
---
|
||||||
|
# kubeapps-repositories-read
|
||||||
|
# Gives read-only access to App Repositories in Kubeapps.
|
||||||
|
# Usage:
|
||||||
|
# Apply kubeapps-repositories-read role to user/serviceaccount in the kubeapps namespace.
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: kubeapps-repositories-read
|
||||||
|
{{ template "kubeapps.user-rbac.labels" . }}
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- kubeapps.com
|
||||||
|
resources:
|
||||||
|
- apprepositories
|
||||||
|
verbs:
|
||||||
|
- list
|
||||||
|
- get
|
||||||
|
---
|
||||||
|
# kubeapps-repositories-write
|
||||||
|
# Gives write access to App Repositories in Kubeapps.
|
||||||
|
# Usage:
|
||||||
|
# Apply kubeapps-repositories-write role to user/serviceaccount in the kubeapps namespace.
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: kubeapps-repositories-write
|
||||||
|
{{ template "kubeapps.user-rbac.labels" . }}
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- kubeapps.com
|
||||||
|
resources:
|
||||||
|
- apprepositories
|
||||||
|
verbs:
|
||||||
|
- get
|
||||||
|
- create
|
||||||
|
- update
|
||||||
|
- delete
|
||||||
|
# Allows creating secrets for storing repository credentials
|
||||||
|
- apiGroups:
|
||||||
|
- ""
|
||||||
|
resources:
|
||||||
|
- secrets
|
||||||
|
verbs:
|
||||||
|
- create
|
||||||
172
bitnami/kubeapps/values.yaml
Normal file
172
bitnami/kubeapps/values.yaml
Normal file
@@ -0,0 +1,172 @@
|
|||||||
|
# Default values for kubeapps.
|
||||||
|
# This is a YAML-formatted file.
|
||||||
|
# Declare variables to be passed into your templates.
|
||||||
|
apprepository:
|
||||||
|
image:
|
||||||
|
registry: docker.io
|
||||||
|
repository: kubeapps/apprepository-controller
|
||||||
|
tag: latest
|
||||||
|
# Image used to perform chart repository syncs
|
||||||
|
syncImage:
|
||||||
|
registry: docker.io
|
||||||
|
repository: kubeapps/chart-repo
|
||||||
|
tag: latest
|
||||||
|
# This image is used in a Helm post-install hook to bootstrap the initialRepos below
|
||||||
|
jobsImage:
|
||||||
|
registry: docker.io
|
||||||
|
repository: lachlanevenson/k8s-kubectl
|
||||||
|
tag: v1.9.9
|
||||||
|
initialRepos:
|
||||||
|
- name: stable
|
||||||
|
url: https://kubernetes-charts.storage.googleapis.com
|
||||||
|
- name: incubator
|
||||||
|
url: https://kubernetes-charts-incubator.storage.googleapis.com
|
||||||
|
- name: svc-cat
|
||||||
|
url: https://svc-catalog-charts.storage.googleapis.com
|
||||||
|
resources: {}
|
||||||
|
# limits:
|
||||||
|
# cpu: 100m
|
||||||
|
# memory: 128Mi
|
||||||
|
# requests:
|
||||||
|
# cpu: 100m
|
||||||
|
# memory: 128Mi
|
||||||
|
nodeSelector: {}
|
||||||
|
tolerations: []
|
||||||
|
affinity: {}
|
||||||
|
|
||||||
|
chartsvc:
|
||||||
|
image:
|
||||||
|
registry: docker.io
|
||||||
|
repository: kubeapps/chartsvc
|
||||||
|
tag: latest
|
||||||
|
service:
|
||||||
|
port: 8080
|
||||||
|
resources: {}
|
||||||
|
# limits:
|
||||||
|
# cpu: 100m
|
||||||
|
# memory: 128Mi
|
||||||
|
# requests:
|
||||||
|
# cpu: 100m
|
||||||
|
# memory: 128Mi
|
||||||
|
nodeSelector: {}
|
||||||
|
tolerations: []
|
||||||
|
affinity: {}
|
||||||
|
|
||||||
|
dashboard:
|
||||||
|
image:
|
||||||
|
registry: docker.io
|
||||||
|
repository: kubeapps/dashboard
|
||||||
|
tag: latest
|
||||||
|
service:
|
||||||
|
port: 8080
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /
|
||||||
|
port: 8080
|
||||||
|
initialDelaySeconds: 60
|
||||||
|
timeoutSeconds: 5
|
||||||
|
readinessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /
|
||||||
|
port: 8080
|
||||||
|
initialDelaySeconds: 0
|
||||||
|
timeoutSeconds: 5
|
||||||
|
resources: {}
|
||||||
|
# limits:
|
||||||
|
# cpu: 100m
|
||||||
|
# memory: 128Mi
|
||||||
|
# requests:
|
||||||
|
# cpu: 100m
|
||||||
|
# memory: 128Mi
|
||||||
|
nodeSelector: {}
|
||||||
|
tolerations: []
|
||||||
|
affinity: {}
|
||||||
|
|
||||||
|
frontend:
|
||||||
|
image:
|
||||||
|
registry: docker.io
|
||||||
|
repository: bitnami/nginx
|
||||||
|
tag: 1.14.0-r27
|
||||||
|
service:
|
||||||
|
port: 80
|
||||||
|
type: ClusterIP
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /healthz
|
||||||
|
port: 8080
|
||||||
|
initialDelaySeconds: 60
|
||||||
|
timeoutSeconds: 5
|
||||||
|
readinessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /
|
||||||
|
port: 8080
|
||||||
|
initialDelaySeconds: 0
|
||||||
|
timeoutSeconds: 5
|
||||||
|
resources: {}
|
||||||
|
# limits:
|
||||||
|
# cpu: 100m
|
||||||
|
# memory: 128Mi
|
||||||
|
# requests:
|
||||||
|
# cpu: 100m
|
||||||
|
# memory: 128Mi
|
||||||
|
nodeSelector: {}
|
||||||
|
tolerations: []
|
||||||
|
affinity: {}
|
||||||
|
|
||||||
|
tillerProxy:
|
||||||
|
image:
|
||||||
|
registry: docker.io
|
||||||
|
repository: kubeapps/tiller-proxy
|
||||||
|
tag: latest
|
||||||
|
service:
|
||||||
|
port: 8080
|
||||||
|
host: tiller-deploy.kube-system:44134
|
||||||
|
tls: {}
|
||||||
|
# ca:
|
||||||
|
# cert:
|
||||||
|
# key:
|
||||||
|
# verify: false
|
||||||
|
resources: {}
|
||||||
|
# limits:
|
||||||
|
# cpu: 100m
|
||||||
|
# memory: 128Mi
|
||||||
|
# requests:
|
||||||
|
# cpu: 100m
|
||||||
|
# memory: 128Mi
|
||||||
|
nodeSelector: {}
|
||||||
|
tolerations: []
|
||||||
|
affinity: {}
|
||||||
|
|
||||||
|
ingress:
|
||||||
|
enabled: false
|
||||||
|
# annotations: {}
|
||||||
|
path: /
|
||||||
|
hosts:
|
||||||
|
- kubeapps.local
|
||||||
|
tls: []
|
||||||
|
# - secretName: chart-example-tls
|
||||||
|
# hosts:
|
||||||
|
# - chart-example.local
|
||||||
|
|
||||||
|
mongodb:
|
||||||
|
# Kubeapps uses MongoDB as a cache and persistence is not required
|
||||||
|
persistence:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
resources: {}
|
||||||
|
# We usually recommend not to specify default resources and to leave this as a conscious
|
||||||
|
# choice for the user. This also increases chances charts run on environments with little
|
||||||
|
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
||||||
|
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
||||||
|
# limits:
|
||||||
|
# cpu: 100m
|
||||||
|
# memory: 128Mi
|
||||||
|
# requests:
|
||||||
|
# cpu: 100m
|
||||||
|
# memory: 128Mi
|
||||||
|
|
||||||
|
nodeSelector: {}
|
||||||
|
|
||||||
|
tolerations: []
|
||||||
|
|
||||||
|
affinity: {}
|
||||||
Reference in New Issue
Block a user