rbac.yaml 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. {{- if .Values.rbac.create }}
  2. kind: ClusterRole
  3. apiVersion: rbac.authorization.k8s.io/v1beta1
  4. metadata:
  5. name: nginx-ingress
  6. labels:
  7. app: {{ .Values.controller.name | trunc 63 }}
  8. chart: {{ .Chart.Name }}-{{ .Chart.Version }}
  9. heritage: {{ .Release.Service }}
  10. release: {{ .Release.Name }}
  11. rules:
  12. - apiGroups:
  13. - ""
  14. resources:
  15. - services
  16. - endpoints
  17. verbs:
  18. - get
  19. - list
  20. - watch
  21. - apiGroups:
  22. - ""
  23. resources:
  24. - secrets
  25. verbs:
  26. - get
  27. - list
  28. - watch
  29. - apiGroups:
  30. - ""
  31. resources:
  32. - configmaps
  33. verbs:
  34. - get
  35. - list
  36. - watch
  37. - update
  38. - create
  39. - apiGroups:
  40. - ""
  41. resources:
  42. - pods
  43. verbs:
  44. - list
  45. - apiGroups:
  46. - ""
  47. resources:
  48. - events
  49. verbs:
  50. - create
  51. - patch
  52. - apiGroups:
  53. - extensions
  54. resources:
  55. - ingresses
  56. verbs:
  57. - get
  58. - list
  59. - watch
  60. {{- if .Values.controller.reportIngressStatus.enable }}
  61. - apiGroups:
  62. - "extensions"
  63. resources:
  64. - ingresses/status
  65. verbs:
  66. - update
  67. {{- end }}
  68. ---
  69. kind: ClusterRoleBinding
  70. apiVersion: rbac.authorization.k8s.io/v1beta1
  71. metadata:
  72. name: nginx-ingress
  73. labels:
  74. app: {{ .Values.controller.name | trunc 63 }}
  75. chart: {{ .Chart.Name }}-{{ .Chart.Version }}
  76. heritage: {{ .Release.Service }}
  77. release: {{ .Release.Name }}
  78. subjects:
  79. - kind: ServiceAccount
  80. name: {{ .Values.controller.serviceAccount.name }}
  81. namespace: {{ .Release.Namespace }}
  82. roleRef:
  83. kind: ClusterRole
  84. name: nginx-ingress
  85. apiGroup: rbac.authorization.k8s.io
  86. {{- end }}