Comments (4)
I started an attempt at implementing helm's 3 best practices regarding namespace management as laid out by one helm's core maintainer in this comment
However after trying to apply the namespace-less recommendation I encoutered at 2 issues which made me doubt that the official best practice was sound
I am considering using defaulting instead of fully removing the namespace mentions
{{ .Values.namespace | default .Release.Namespace }}
This would make the default behaviour align with the recommendations while allowing users to pin the namespace through value
I wonder if people in the team have an opinion ...
from pulsar-helm-chart.
This issue is not about usage of namespace refs in rbac manifests or other kinds.. This issue is about managing kind: namespace
, i.e. create, update, delete e.t.c with HELM chart.
I reported same issue for other pulsar chart: streamnative/charts#140
from pulsar-helm-chart.
I am confused, in your initial issue you provided the following reproduction steps:
kubectl create ns pulsartest
helm upgrade --install pulsar -n pulsartest apache/pulsar
Error: namespaces "pulsar" not found
the chart does not try to create/update/delete the namespace and the chart will succeed if you configure it correclty (pass --set namespace=pulsartest
) still without creating/updating/deleting a namespace.So you are forced to repeat the namespace information which is suboptimal.
The helm's best practice indicate that to avoid this repetition chart maintainers are not supposed to embbed namespace definitions in their templates.
The problem is that making the chart follow the official helm conventions ( which is easy) will fail in some common helm/k8s workflows because of the rbac/FQDN issues i mention in the referenced comment.
In the stream native chart they had already applied the other alternative I mentioned :
I am considering using defaulting instead of fully removing the namespace mentions
{{ .Values.namespace | default .Release.Namespace }}
They had left a default value in the values file which required you to pass --set namespace=null
to get the desired behavior. The fix they applied to your issue was to remove the default value and align the documentation.
I'm hoping one of the maintainers for the apache chart will comment on what they would consider the correct option for their chart :D
from pulsar-helm-chart.
Hey, thank you for follow up.
Here I see chart is managing NS and in fact will try to create/delete it: https://github.com/apache/pulsar-helm-chart/blob/master/charts/pulsar/templates/namespace.yaml
While it seems convenient to be able to create namespace by configuring the chart, but the whole goal of mentioned helm issues, is to point out missing tooling in helm to properly manage NS.
At the end, it's up to maintainers to decide how to handle charts.. e.g. streamnative decided that updating docs is the way, well.. ok :)
from pulsar-helm-chart.
Related Issues (20)
- Argo CD unable to generate template with pulsar chart 3.3.0 HOT 5
- Deployment using JWT authentication + Function Worker is not working properly HOT 1
- [Bug] Broker startup could get into a long crash loop when Functions are enabled HOT 1
- Allow using a separate volume for the zookeeper transaction log
- Allow specifying an existing secret for pulsar-manager credentials
- Make it possible to optionally override .ReleaseIsInstall logic in init jobs
- Latest chart version: 3.4.0 missing in the Apache helm repo index HOT 3
- Plugins support HOT 1
- PKIX path building failed: unable to find valid certification path to request to requested target HOT 2
- HPA missing namespace HOT 1
- upgrade to pulsar helm chart version 3.3.1 from 2.9.4->3.0.0->3.3.1 with the pulsar-broker error HOT 2
- Pulsar manager service fails saying "2024-05-07 15:02:17,476 INFO exited: pulsar-manager-backend (terminated by SIGKILL; not expected)" HOT 2
- Allow broker's service clusterIP customisation: headless vs non-headless HOT 1
- pulsar-broker failed to start with both Liveness probe and Readiness probes failed: HTTP probe failed with statuscode: 404 HOT 5
- Specifying image pull policy in the chart HOT 1
- Setting up custom config HOT 2
- Pulsar 3.2.3 incorrect permissions in Kubernetes, cannot deploy connectors
- Add "existingClaim" Property to Volumes for Improved Cloud Provider Compatibility HOT 3
- Pulsar Helm Chart Initialization Failure When Using Existing Secret
- namespaces "pulsar" not found when selected namespace is not pulsar HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pulsar-helm-chart.