Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(argo-rollouts): Add rollout plugin gloo platform rbac #2404

Merged
merged 4 commits into from
Jan 7, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions charts/argo-rollouts/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v1.6.4
description: A Helm chart for Argo Rollouts
name: argo-rollouts
version: 2.34.0
version: 2.34.1
home: https://github.com/argoproj/argo-helm
icon: https://argoproj.github.io/argo-rollouts/assets/logo.png
keywords:
Expand All @@ -18,5 +18,5 @@ annotations:
fingerprint: 2B8F22F57260EFA67BE1C5824B11F800CD9D2252
url: https://argoproj.github.io/argo-helm/pgp_keys.asc
artifacthub.io/changes: |
- kind: changed
description: Allow setting log config for rollouts dashboard
- kind: added
description: Added Gloo Platform provider RBAC rules
1 change: 1 addition & 0 deletions charts/argo-rollouts/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@ For full list of changes please check ArtifactHub [changelog].
| providerRBAC.providers.awsAppMesh | bool | `true` | Adds RBAC rules for the AWS App Mesh provider |
| providerRBAC.providers.awsLoadBalancerController | bool | `true` | Adds RBAC rules for the AWS Load Balancer Controller provider |
| providerRBAC.providers.contour | bool | `true` | Adds RBAC rules for the Contour provider, see `https://github.com/argoproj-labs/rollouts-plugin-trafficrouter-contour/blob/main/README.md` |
| providerRBAC.providers.glooPlatform | bool | `true` | Adds RBAC rules for the Gloo Platform provider, see `https://github.com/argoproj-labs/rollouts-plugin-trafficrouter-glooplatform/blob/main/README.md` |
| providerRBAC.providers.istio | bool | `true` | Adds RBAC rules for the Istio provider |
| providerRBAC.providers.smi | bool | `true` | Adds RBAC rules for the SMI provider |
| providerRBAC.providers.traefik | bool | `true` | Adds RBAC rules for the Traefik provider |
Expand Down
9 changes: 9 additions & 0 deletions charts/argo-rollouts/templates/controller/clusterrole.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -267,5 +267,14 @@ rules:
- watch
- update
{{- end }}
{{- if .Values.providerRBAC.providers.glooPlatform }}
# Access needed when using the Gloo Platform provider
- apiGroups:
- networking.gloo.solo.io
resources:
- routetables
verbs:
- '*'
Comment on lines +272 to +277
Copy link
Collaborator

@yu-croco yu-croco Dec 30, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @bgottfried91 , can you please give us the doc that you refer for this config?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @yu-croco - this resource is used for traffic delegation via RouteTables for Gloo Edge
Ref: https://docs.solo.io/gloo-edge/latest/introduction/traffic_management/

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @pdrastil , thank you for the info ! 👍

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@yu-croco FYI - it seems that Gloo is adopting new Kubernetes Gateway API
Ref: https://github.com/solo-io/gloo/tree/v2.0.x

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just as a FYI, this addition is to support the plugin for Gloo Platform. There's a separate plugin for Gloo Edge, they're different APIs. We'll probably submit an update to support adding the RBAC for that plugin soon!

This is the overview page for Gloo Platform's traffic management (https://docs.solo.io/gloo-mesh-enterprise/latest/concepts/traffic-management/) and the API reference for it (https://docs.solo.io/gloo-mesh-enterprise/latest/reference/api/route_table/)

Petr's correct that GE builds on the Gateway API now though!

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for the info :)

{{- end }}
{{- end }}
{{- end }}
9 changes: 9 additions & 0 deletions charts/argo-rollouts/templates/controller/role.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -256,5 +256,14 @@ rules:
- get
- update
{{- end }}
{{- if .Values.providerRBAC.providers.glooPlatform }}
# Access needed when using the Gloo Platform provider
- apiGroups:
- networking.gloo.solo.io
resources:
- routetables
verbs:
- '*'
{{- end }}
{{- end }}
{{- end }}
2 changes: 2 additions & 0 deletions charts/argo-rollouts/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -271,6 +271,8 @@ providerRBAC:
apisix: true
# -- Adds RBAC rules for the Contour provider, see `https://github.com/argoproj-labs/rollouts-plugin-trafficrouter-contour/blob/main/README.md`
contour: true
# -- Adds RBAC rules for the Gloo Platform provider, see `https://github.com/argoproj-labs/rollouts-plugin-trafficrouter-glooplatform/blob/main/README.md`
glooPlatform: true

dashboard:
# -- Deploy dashboard server
Expand Down