added documentation fo the helm chart

This commit is contained in:
Sebastian Sdorra
2020-05-26 16:46:31 +02:00
parent 8a0505f4dd
commit d7f9bd07ae
5 changed files with 154 additions and 5 deletions

View File

@@ -0,0 +1,50 @@
---
title: Helm/Kubernetes
subtitle: Install scm-manager on kubernetes with helm
displayToc: true
---
To install SCM-Manager on Kubernetes we offer a [Helm](https://helm.sh) chart.
The chart is only tested with v3 of helm.
## Quickstart
```bash
helm repo add scm-manager https://packages.scm-manager.org/repository/helm-v2-releases/
helm repo update
helm install scm-manager scm-manager/scm-manager
```
## Configuration
If you want to customize the installation you can use a values files e.g.:
```bash
helm install scm-manager scm-manager/scm-manager --values=custom.yml
```
The following table list the configurable parameters of the SCM-Manager chart and their default values.
## Chart Values
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | Affinity settings |
| fullnameOverride | string | `""` | Override the full resource names |
| image.pullPolicy | string | `"IfNotPresent"` | SCM-Manager image pull policy |
| image.repository | string | `"scmmanager/scm-manager"` | Name of SCM-Manager image |
| image.tag | string | `"version-off Chart"` | Tag of SCM-Manager image |
| ingress.annotations | object | `{}` | Ingress annotations |
| ingress.enabled | bool | `false` | Enables ingress |
| ingress.hosts | list | `["scm-manager.local"]` | Ingress hosts |
| ingress.path | string | `"/"` | Ingress path |
| ingress.tls | list | `[]` | Ingress TLS configuration |
| nameOverride | string | `""` | Override the resource name prefix |
| nodeSelector | object | `{}` | Node labels for pod assignment |
| persistence.accessMode | string | `"ReadWriteOnce"` | The PVC access mode |
| persistence.enabled | bool | `true` | Enable the use of a PVC for SCM-Manager home |
| persistence.size | string | `"40Gi"` | The size of the PVC |
| resources | object | `{}` | Resources allocation (Requests and Limits) |
| service.port | int | `80` | k8s service port |
| service.type | string | `"LoadBalancer"` | k8s service type |
| tolerations | list | `[]` | Toleration labels for pod assignment |

View File

@@ -8,6 +8,6 @@ partiallyActive: true
* [Red Hat/CentOS/Fedora](redhat/)
* [Linux General](linux/)
* [Docker](docker/)
* Kubernetes
* [Helm/Kubernetes](helm/)
* Mac OS X
* Windows

View File

@@ -22,32 +22,42 @@
# SOFTWARE.
#
# Default values for scm-manager.
# Default values for SCM-Manager.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
# replicaCount: 1
image:
# image.repository -- Name of SCM-Manager image
repository: ${docker.repository}
# image.tag -- Tag of SCM-Manager image
tag: ${docker.tag}
pullPolicy: Always
# image.pullPolicy -- SCM-Manager image pull policy
pullPolicy: IfNotPresent
# nameOverride -- Override the resource name prefix
nameOverride: ""
# fullnameOverride -- Override the full resource names
fullnameOverride: ""
service:
# service.type -- k8s service type
type: LoadBalancer
# service.port -- k8s service port
port: 80
ingress:
# ingress.enabled -- Enables ingress
enabled: false
# ingress.annotations -- Ingress annotations
annotations: {}
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
# ingress.path -- Ingress path
path: /
# ingress.hosts -- Ingress hosts
hosts:
- scm-manager.local
# ingress.tls -- Ingress TLS configuration
tls: []
# - secretName: scm-manager-tls
# hosts:
@@ -57,6 +67,7 @@ ingress:
## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
##
persistence:
# persistence.enabled -- Enable the use of a PVC for SCM-Manager home
enabled: true
## ghost data Persistent Volume Storage Class
## If defined, storageClassName: <storageClass>
@@ -66,9 +77,12 @@ persistence:
## GKE, AWS & OpenStack)
##
# storageClass: "-"
# persistence.accessMode -- The PVC access mode
accessMode: ReadWriteOnce
# persistence.size -- The size of the PVC
size: 40Gi
# resources -- Resources allocation (Requests and Limits)
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
@@ -81,8 +95,11 @@ resources: {}
# cpu: 50m
# memory: 256Mi
# nodeSelector -- Node labels for pod assignment
nodeSelector: {}
# tolerations -- Toleration labels for pod assignment
tolerations: []
# affinity -- Affinity settings
affinity: {}

View File

@@ -0,0 +1,54 @@
#!/bin/bash
#
# MIT License
#
# Copyright (c) 2020-present Cloudogu GmbH and Contributors
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
set -euo pipefail
IFS=$'\n\t'
if helm-docs --version > /dev/null 2>&1; then
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
MODULE_DIR="$( cd "${SCRIPT_DIR}/../../../" >/dev/null 2>&1 && pwd )"
CHARTDIR="${MODULE_DIR}/target/chart"
if [ ! -d "${CHARTDIR}" ]; then
echo "chart directory ${CHARTDIR} does not exists"
echo "please run maven package before"
echo "https://github.com/norwoodj/helm-docs"
exit 1
fi
cd "${CHARTDIR}"
PAGE="docs/en/installation/helm.md"
echo helm-docs --template-file="${MODULE_DIR}/src/main/docs/helm.md.gotmpl" --output-file="${MODULE_DIR}/../../${PAGE}"
helm-docs --template-file="../../src/main/docs/helm.md.gotmpl" --output-file="../../../../${PAGE}"
echo "The helm documentation was successfully generated"
echo "Please check the results at ${PAGE}"
echo "And don't forget to commit ;)"
else
echo "helm-docs not found"
echo "please install helm-docs, before running this script"
echo "https://github.com/norwoodj/helm-docs"
exit 1
fi

View File

@@ -0,0 +1,28 @@
---
title: Helm/Kubernetes
subtitle: Install scm-manager on kubernetes with helm
displayToc: true
---
To install SCM-Manager on Kubernetes we offer a [Helm](https://helm.sh) chart.
The chart is only tested with v3 of helm.
## Quickstart
```bash
helm repo add scm-manager https://packages.scm-manager.org/repository/helm-v2-releases/
helm repo update
helm install scm-manager scm-manager/scm-manager
```
## Configuration
If you want to customize the installation you can use a values files e.g.:
```bash
helm install scm-manager scm-manager/scm-manager --values=custom.yml
```
The following table list the configurable parameters of the SCM-Manager chart and their default values.
{{ template "chart.valuesSection" . }}