hashicorp / consul-helm

Helm chart to install Consul and other associated components.
Mozilla Public License 2.0
419 stars 385 forks source link

Can not install consul-helm by using helm v2.14.0 #178

Closed dmai-apixio closed 5 years ago

dmai-apixio commented 5 years ago

Hi all, I used helm v2.13.0 to install consul. Everything worked perfectly. After upgrading helm to newer version v2.14.0

# helm version
Client: &version.Version{SemVer:"v2.14.0", GitCommit:"05811b84a3f93603dd6c2fcfe57944dfa7ab7fd0", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.14.0", GitCommit:"05811b84a3f93603dd6c2fcfe57944dfa7ab7fd0", GitTreeState:"clean"}

I got this error.

helm install --name=consul ./consul/consul-helm -f ./consul/staging.yaml
Error: validation failed: error validating "": error validating data: ValidationError(ClusterRole): missing required field "rules" in io.k8s.api.rbac.v1.ClusterRole
brucedominguez commented 5 years ago

Same issue here. Tried to run the tutorials on Consul and Ambassador ( https://instruqt.com/hashicorp/tracks/sock-shop-tutorial) but get the same issue. Same version of helm (v2.14.0).

dverbeek84 commented 5 years ago

both server-clusterrole.yaml and client-clusterrole.yaml have a if statement block warpping the rules. thay should wrap the whole ClusterRole block.

devlounge commented 5 years ago

and the ClusterRoleBinding shouln't be created if the ClusterRole isn't

lkysow commented 5 years ago

and the ClusterRoleBinding shouln't be created if the ClusterRole isn't

server-clusterrole.yaml and server-clusterrolebinding.yaml both use the same if statement:

{{- if (or (and (ne (.Values.server.enabled | toString) "-") .Values.server.enabled) (and (eq (.Values.server.enabled | toString) "-") .Values.global.enabled)) }}

So there shouldn't be a way for only one of them to be created. Can you help me reproduce what you're seeing?