Skip to content

Commit

Permalink
feat(helm-chart): split documentation from value files (#876)
Browse files Browse the repository at this point in the history
Co-authored-by: Moritz Wiesinger <moritz.wiesinger@dynatrace.com>
  • Loading branch information
thisthat and mowies committed Feb 21, 2023
1 parent 5b68118 commit c366739
Show file tree
Hide file tree
Showing 7 changed files with 28 additions and 14 deletions.
11 changes: 8 additions & 3 deletions .github/scripts/generate-helm-docs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,15 @@
# Dependencies:
# Node >=16

# renovate: datasource=github-releases depName=bitnami-labs/readme-generator-for-helm
GENERATOR_VERSION="2.5.0"

echo "Checking if readme generator is installed already..."
if [[ $(npm list -g | grep -c 'readme-generator-for-helm') -eq 0 ]]; then
echo "Readme Generator not installed, installing now..."
if [[ $(npm list -g | grep -c "readme-generator-for-helm@${GENERATOR_VERSION}") -eq 0 ]]; then
echo "Readme Generator v${GENERATOR_VERSION} not installed, installing now..."
git clone https://github.com/bitnami-labs/readme-generator-for-helm.git
cd ./readme-generator-for-helm || exit
git checkout ${GENERATOR_VERSION}
npm ci
cd ..
npm install -g ./readme-generator-for-helm
Expand All @@ -21,6 +25,7 @@ else
fi

echo "Generating readme now..."
readme-generator --values=./helm/chart/values.yaml --readme=./helm/chart/README.md
cat ./helm/chart/values.yaml ./helm/chart/doc.yaml > ./helm/chart/rendered.yaml
readme-generator --values=./helm/chart/rendered.yaml --readme=./helm/chart/README.md

# Please be aware, the readme file needs to exist and needs to have a Parameters section, as only this section will be re-generated
5 changes: 3 additions & 2 deletions .github/workflows/validate-helm-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,12 +36,13 @@ jobs:
run: |
cd ./helm/chart/
cp ./README.md ./README-old.md
readme-generator --values=./values.yaml --readme=./README.md
cat ./values.yaml ./doc.yaml > ./rendered.yaml
readme-generator --values=./rendered.yaml --readme=./README.md
if ! cmp --quiet ./README-old.md ./README.md; then
echo "The Helm values have changes that are not reflected in the readme. Please use ./.github/scripts/generate-helm-docs.sh to re-generate the docs."
echo ""
echo "=========== Diff ==========="
diff ./README-old.md ./README.md
diff -u ./README-old.md ./README.md
exit 1
else
echo ""
Expand Down
1 change: 1 addition & 0 deletions helm/.gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
*.tgz
chart/rendered.yaml
chart/templates/rendered.yaml
chart/templates/crds.yaml
chart/crds/*.yaml
13 changes: 8 additions & 5 deletions helm/chart/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,13 @@ checks

### OpenTelemetry

| Name | Description | Value |
| ---------------------------- | ---------------------------------------------------- | --------------------- |
| `otelCollector.url` | Sets the URL for the open telemetry collector | `otel-collector:4317` |
| `deployment.imagePullPolicy` | Sets the image pull policy for kubernetes deployment | `Always` |
| Name | Description | Value |
| ------------------- | --------------------------------------------- | --------------------- |
| `otelCollector.url` | Sets the URL for the open telemetry collector | `otel-collector:4317` |

### General

| Name | Description | Value |
| ---------------------------- | ---------------------------------------------------- | -------- |
| `deployment.imagePullPolicy` | Sets the image pull policy for kubernetes deployment | `Always` |

<!-- markdownlint-enable MD012 -->
6 changes: 6 additions & 0 deletions helm/chart/doc.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
## @section OpenTelemetry
## @param otelCollector.url Sets the URL for the open telemetry collector

## @section General
## @param deployment.imagePullPolicy Sets the image pull policy for kubernetes deployment

3 changes: 0 additions & 3 deletions helm/chart/values.yaml
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
## @section OpenTelemetry
otelCollector:
## @param otelCollector.url Sets the URL for the open telemetry collector
url: "otel-collector:4317"

deployment:
## @param deployment.imagePullPolicy Sets the image pull policy for kubernetes deployment
imagePullPolicy: Always
3 changes: 2 additions & 1 deletion renovate.json
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,8 @@
"fileMatch": [
"(^|\\/)Makefile$",
"(^|\\/)Dockerfile",
"(^|\\/).*\\.ya?ml$"
"(^|\\/).*\\.ya?ml$",
"(^|\\/).*\\.sh$"
],
"matchStrings": [
"# renovate: datasource=(?<datasource>.+?) depName=(?<depName>.+?)\\s.*?_VERSION ?(\\??=|\\: ?) ?\\\"?(?<currentValue>.+?)?\\\"?\\s"
Expand Down

0 comments on commit c366739

Please sign in to comment.