Skip to content
Merged
64 changes: 50 additions & 14 deletions .github/workflows/bootzooka-helm-ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,30 @@ jobs:
with:
fetch-depth: 0

- name: Run chart-testing (lint)
id: ct-lint
uses: helm/[email protected]
- name: Set up Helm
uses: azure/[email protected]
with:
version: v3.17.1

- uses: actions/[email protected]
with:
command: lint
config: .github/helm-ct.yml
python-version: "3.x"
check-latest: true

- name: Set up chart-testing
uses: helm/[email protected]

- name: Run chart-testing (list-changed)
id: list-changed
run: |
changed=$(ct list-changed --config .github/helm-ct.yml --target-branch ${{ github.event.repository.default_branch }})
if [[ -n "$changed" ]]; then
echo "changed=true" >> "$GITHUB_OUTPUT"
fi

- name: Run chart-testing (lint)
if: steps.list-changed.outputs.changed == 'true'
run: ct lint --config .github/helm-ct.yml --target-branch ${{ github.event.repository.default_branch }}

install-test-chart:
needs:
Expand All @@ -38,9 +56,9 @@ jobs:
strategy:
matrix:
k8s:
- v1.20.7
- v1.21.2
- v1.22.4
- v1.33.2
- v1.32.5
- v1.31.9
steps:
- name: Check-out repository
id: repo-checkout
Expand All @@ -50,17 +68,35 @@ jobs:

- name: Create kind ${{ matrix.k8s }} cluster
id: kind-cluster-setup
uses: helm/kind-action@v1.2.0
uses: helm/kind-action@v1.12.0
with:
node_image: kindest/node:${{ matrix.k8s }}
wait: "120s"

- name: Run chart-testing (install)
id: ct-install
uses: helm/[email protected]
- name: Set up Helm
uses: azure/[email protected]
with:
version: v3.17.1

- uses: actions/[email protected]
with:
command: install
config: .github/helm-ct.yml
python-version: "3.x"
check-latest: true

- name: Set up chart-testing
uses: helm/[email protected]

- name: Run chart-testing (list-changed)
id: list-changed
run: |
changed=$(ct list-changed --config .github/helm-ct.yml --target-branch ${{ github.event.repository.default_branch }})
if [[ -n "$changed" ]]; then
echo "changed=true" >> "$GITHUB_OUTPUT"
fi

- name: Run chart-testing (install)
if: steps.list-changed.outputs.changed == 'true'
run: ct install --config .github/helm-ct.yml --target-branch ${{ github.event.repository.default_branch }}

validate-chart-docs:
needs:
Expand Down
2 changes: 1 addition & 1 deletion helm/bootzooka/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ maintainers:
icon: https://raw.githubusercontent.com/softwaremill/bootzooka/master/banner.png
dependencies:
- name: postgresql
version: ^9
version: ^16
repository: https://charts.bitnami.com/bitnami
condition: postgresql.enabled
annotations:
Expand Down
17 changes: 11 additions & 6 deletions helm/bootzooka/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,11 @@ The following table lists the configurable parameters of the chart and the defau
| bootzooka.ingress.tls_enabled | bool | `false` | |
| bootzooka.nameOverride | string | `""` | |
| bootzooka.nodeSelector | object | `{}` | |
| bootzooka.otel.enabled | bool | `false` | |
| bootzooka.otel.endpoint | string | `""` | |
| bootzooka.otel.metric_export_interval | string | `"60s"` | |
| bootzooka.otel.protocol | string | `""` | |
| bootzooka.otel.service_name | string | `"bootzooka"` | |
| bootzooka.replicaCount | int | `1` | |
| bootzooka.reset_password_url | string | `"https://bootzooka.example.com/password-reset?code=%s"` | |
| bootzooka.resources | object | `{}` | |
Expand All @@ -65,17 +70,17 @@ The following table lists the configurable parameters of the chart and the defau
| bootzooka.smtp.ssl_ver | string | `"false"` | |
| bootzooka.smtp.username | string | `"server.example.com"` | |
| bootzooka.sql.host | string | `"{{ .Values.postgresql.fullnameOverride }}"` | Value will be taken from 'postgresql.fullnameOverride' setting |
| bootzooka.sql.name | string | `"{{ .Values.postgresql.postgresqlDatabase }}"` | Value will be taken from 'postgresql.postgresqlDatabase' setting |
| bootzooka.sql.password | string | `"{{ .Values.postgresql.postgresqlPassword }}"` | Value will be taken from 'postgresql.postgresqlPassword' setting |
| bootzooka.sql.name | string | `"{{ .Values.postgresql.auth.database }}"` | Value will be taken from 'postgresql.postgresqlDatabase' setting |
| bootzooka.sql.password | string | `"{{ .Values.postgresql.auth.password }}"` | Value will be taken from 'postgresql.postgresqlPassword' setting |
| bootzooka.sql.port | string | `"{{ .Values.postgresql.service.port }}"` | Value will be taken from 'postgresql.service.port' setting |
| bootzooka.sql.username | string | `"{{ .Values.postgresql.postgresqlUsername }}"` | Value will be taken from 'postgresql.postgresqlUsername' setting |
| bootzooka.sql.username | string | `"{{ .Values.postgresql.auth.username }}"` | Value will be taken from 'postgresql.postgresqlUsername' setting |
| bootzooka.tolerations | list | `[]` | |
| postgresql.auth.database | string | `"bootzooka"` | Database name for Bootzooka |
| postgresql.auth.password | string | `"bootzooka"` | Password for PostgreSQL user |
| postgresql.auth.username | string | `"postgres"` | Username for PostgreSQL user |
| postgresql.connectionTest.image.pullPolicy | string | `"IfNotPresent"` | |
| postgresql.connectionTest.image.repository | string | `"bitnami/postgresql"` | |
| postgresql.connectionTest.image.tag | int | `11` | |
| postgresql.enabled | bool | `true` | Disable if you already have PostgreSQL running in cluster where Bootzooka chart is being deployed |
| postgresql.fullnameOverride | string | `"bootzooka-pgsql-postgresql"` | |
| postgresql.postgresqlDatabase | string | `"bootzooka"` | |
| postgresql.postgresqlPassword | string | `"bootzooka"` | |
| postgresql.postgresqlUsername | string | `"postgres"` | |
| postgresql.service.port | int | `5432` | |
5 changes: 5 additions & 0 deletions helm/bootzooka/templates/configmap.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,8 @@ data:
SQL_DBNAME: "{{ tpl .Values.bootzooka.sql.name . }}"
SQL_HOST: "{{ tpl .Values.bootzooka.sql.host . }}"
SQL_PORT: "{{ tpl .Values.bootzooka.sql.port . }}"
OTEL_SDK_DISABLED: "{{ not .Values.bootzooka.otel.enabled }}"
OTEL_EXPORTER_OTLP_ENDPOINT: "{{ .Values.bootzooka.otel.endpoint }}"
OTEL_EXPORTER_OTLP_PROTOCOL: "{{ .Values.bootzooka.otel.protocol }}"
OTEL_SERVICE_NAME: "{{ .Values.bootzooka.otel.service_name }}"
OTEL_METRIC_EXPORT_INTERVAL: "{{ .Values.bootzooka.otel.metric_export_interval }}"
23 changes: 17 additions & 6 deletions helm/bootzooka/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,13 @@ postgresql:
# -- Disable if you already have PostgreSQL running in cluster where Bootzooka chart is being deployed
enabled: true
fullnameOverride: "bootzooka-pgsql-postgresql"
postgresqlUsername: "postgres"
postgresqlPassword: "bootzooka"
postgresqlDatabase: "bootzooka"
auth:
# -- Username for PostgreSQL user
username: "postgres"
# -- Password for PostgreSQL user
password: "bootzooka" # Change this
# -- Database name for Bootzooka
database: "bootzooka"
service:
port: 5432
connectionTest:
Expand All @@ -24,11 +28,11 @@ bootzooka:
# -- Value will be taken from 'postgresql.service.port' setting
port: '{{ .Values.postgresql.service.port }}'
# -- Value will be taken from 'postgresql.postgresqlUsername' setting
username: '{{ .Values.postgresql.postgresqlUsername }}'
username: '{{ .Values.postgresql.auth.username }}'
# -- Value will be taken from 'postgresql.postgresqlDatabase' setting
name: '{{ .Values.postgresql.postgresqlDatabase }}'
name: '{{ .Values.postgresql.auth.database }}'
# -- Value will be taken from 'postgresql.postgresqlPassword' setting
password: '{{ .Values.postgresql.postgresqlPassword }}'
password: '{{ .Values.postgresql.auth.password }}'
smtp:
enabled: true
host: "server.example.com"
Expand All @@ -39,6 +43,13 @@ bootzooka:
from: "[email protected]"
password: "bootzooka"

otel:
enabled: false
endpoint: ""
protocol: ""
service_name: "bootzooka"
metric_export_interval: "60s"

image:
repository: softwaremill/bootzooka
tag: latest
Expand Down