feat(argo-rollouts): add minimum RBAC for Gateway API

Signed-off-by: congiv <givencp@gmail.com>
This commit is contained in:
congiv 2024-03-23 10:50:37 -04:00
parent 776c19db63
commit 66f90b168a
No known key found for this signature in database
4 changed files with 61 additions and 5 deletions

View file

@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v1.6.6 appVersion: v1.6.6
description: A Helm chart for Argo Rollouts description: A Helm chart for Argo Rollouts
name: argo-rollouts name: argo-rollouts
version: 2.35.0 version: 2.35.1
home: https://github.com/argoproj/argo-helm home: https://github.com/argoproj/argo-helm
icon: https://argoproj.github.io/argo-rollouts/assets/logo.png icon: https://argoproj.github.io/argo-rollouts/assets/logo.png
keywords: keywords:
@ -19,4 +19,4 @@ annotations:
url: https://argoproj.github.io/argo-helm/pgp_keys.asc url: https://argoproj.github.io/argo-helm/pgp_keys.asc
artifacthub.io/changes: | artifacthub.io/changes: |
- kind: added - kind: added
description: Added Deployment labels description: Allow minimum set of RBAC rules for Gateway API resources

View file

@ -94,11 +94,22 @@ rules:
- "" - ""
resources: resources:
- secrets - secrets
verbs:
- get
- list
- watch
- apiGroups:
- ""
resources:
- configmaps - configmaps
verbs: verbs:
- get - get
- list - list
- watch - watch
{{- if .Values.providerRBAC.providers.gatewayAPI }}
- create
- update
{{- end }}
# pod list/update needed for updating ephemeral data # pod list/update needed for updating ephemeral data
- apiGroups: - apiGroups:
- "" - ""
@ -276,6 +287,22 @@ rules:
verbs: verbs:
- '*' - '*'
{{- end }} {{- end }}
{{- if .Values.providerRBAC.providers.gatewayAPI }}
# Access needed when using the Gateway API provider
- apiGroups:
- gateway.networking.k8s.io
resources:
- httproutes
- tcproutes
- tlsroutes
- udproutes
- grpcroutes
verbs:
- get
- list
- watch
- update
{{- end }}
{{- with .Values.providerRBAC.additionalRules }} {{- with .Values.providerRBAC.additionalRules }}
{{ toYaml . }} {{ toYaml . }}
{{- end }} {{- end }}

View file

@ -95,11 +95,22 @@ rules:
- "" - ""
resources: resources:
- secrets - secrets
verbs:
- get
- list
- watch
- apiGroups:
- ""
resources:
- configmaps - configmaps
verbs: verbs:
- get - get
- list - list
- watch - watch
{{- if .Values.providerRBAC.providers.gatewayAPI }}
- create
- update
{{- end }}
# pod list/update needed for updating ephemeral data # pod list/update needed for updating ephemeral data
- apiGroups: - apiGroups:
- "" - ""
@ -259,11 +270,27 @@ rules:
{{- if .Values.providerRBAC.providers.glooPlatform }} {{- if .Values.providerRBAC.providers.glooPlatform }}
# Access needed when using the Gloo Platform provider # Access needed when using the Gloo Platform provider
- apiGroups: - apiGroups:
- networking.gloo.solo.io - networking.gloo.solo.io
resources: resources:
- routetables - routetables
verbs: verbs:
- '*' - '*'
{{- end }}
{{- if .Values.providerRBAC.providers.gatewayAPI }}
# Access needed when using the Gateway API provider
- apiGroups:
- gateway.networking.k8s.io
resources:
- httproutes
- tcproutes
- tlsroutes
- udproutes
- grpcroutes
verbs:
- get
- list
- watch
- update
{{- end }} {{- end }}
{{- end }} {{- end }}
{{- end }} {{- end }}

View file

@ -277,6 +277,8 @@ providerRBAC:
contour: true contour: true
# -- Adds RBAC rules for the Gloo Platform provider, see `https://github.com/argoproj-labs/rollouts-plugin-trafficrouter-glooplatform/blob/main/README.md` # -- Adds RBAC rules for the Gloo Platform provider, see `https://github.com/argoproj-labs/rollouts-plugin-trafficrouter-glooplatform/blob/main/README.md`
glooPlatform: true glooPlatform: true
# -- Adds RBAC rules for the Gateway API provider
gatewayAPI: true
# -- Additional RBAC rules for others providers # -- Additional RBAC rules for others providers
additionalRules: [] additionalRules: []