* fix: Correct common lib repo URL, rename exporter template
- Reverted common library repository URL in Chart.yaml to
https://bjw-s-labs.github.io/helm-charts/.
- Ensured helm dependency commands are run after adding repositories.
- Renamed exporter template from exporter-deployment.yaml to
exporter-controller.yaml to better reflect its new role with common library.
Note: Full helm lint/template validation with dependencies was not possible
in the automated environment due to issues with dependency file persistence
in the sandbox.
* fix: Integrate bjw-s/common library for exporter controller
- Corrected bjw-s/common library repository URL in Chart.yaml to the
traditional HTTPS URL and ensured dependencies are fetched.
- Renamed exporter template to exporter-controller.yaml.
- Updated exporter-controller.yaml to correctly use
`bjw-s.common.render.controllers` for rendering.
- Refined the context passed to the common library to include Values, Chart,
Release, and Capabilities, and initialized expected top-level keys
(global, defaultPodOptionsStrategy) in the Values.
- Ensured image.tag is defaulted to Chart.AppVersion in the template data
to pass common library validations.
- Helm lint and template commands now pass successfully for both
Deployment and DaemonSet configurations of the exporter.
* fix: Set dependencies.install to false by default
- Changed the default value for `dependencies.install` to `false` in values.yaml.
- Updated comments to clarify that users should explicitly enable it if they
need the chart to install a Prometheus Operator dependency.
* fix: Update CI workflow to add Helm repositories and build dependencies
* hotfix: Pass .Template to common lib for tpl context
- Updated exporter-controller.yaml to include .Template in the dict
passed to the bjw-s.common.render.controllers include.
- This is to resolve a 'cannot retrieve Template.Basepath' error
encountered with the tpl function in older Helm versions (like v3.10.0 in CI)
when the tpl context does not contain the .Template object.
---------
Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
Removes the outdated markdown files and fixes the .gitignore to ignore packaged chart files in the correct directories. This prevents them from being committed to
This involved addressing several Helm linting issues I identified in the iperf3-monitor chart.
Here's what I changed:
- I corrected a syntax error (an unexpected backslash) in the label value within `charts/iperf3-monitor/templates/exporter-deployment.yaml`.
- I resolved a missing dependency by:
- Adding the `prometheus-community` Helm repository.
- Updating the dependency name in `Chart.yaml` to `kube-prometheus-stack` when a repository URL is specified.
- Running `helm dependency update` to fetch the `kube-prometheus-stack` dependency.
- I fixed YAML parsing errors in `charts/iperf3-monitor/templates/exporter-deployment.yaml` caused by incorrect newline handling in the Helm helper templates (`charts/iperf3-monitor/templates/_helpers.tpl`). This involved:
- Ensuring the `iperf3-monitor.selectorLabels` helper template output ends with a newline.
- Adjusting whitespace control in the `iperf3-monitor.labels` helper template to preserve newlines between label entries.
- I restored the `app.kubernetes.io/component: exporter` label to the top-level metadata in `charts/iperf3-monitor/templates/exporter-deployment.yaml`.
After these modifications, `helm lint charts/iperf3-monitor` passes without any errors or warnings.