From d3433ce290ca88587225a1bacd29a257b5d43388 Mon Sep 17 00:00:00 2001 From: Guilherme Cassolato Date: Fri, 8 Mar 2024 16:07:54 +0100 Subject: [PATCH] Implementation tiers --- rfcs/0009-defaults-and-overrides.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/rfcs/0009-defaults-and-overrides.md b/rfcs/0009-defaults-and-overrides.md index 19236995..b7c24e02 100644 --- a/rfcs/0009-defaults-and-overrides.md +++ b/rfcs/0009-defaults-and-overrides.md @@ -400,6 +400,34 @@ flowchart LR merge-override-block-into-p-finish ``` +## Implementation tiers + +This section proposes a possible path for the implementation of this RFC for Kuadrant's existing kinds of policies that are affected by D/O – notably AuthPolicy and RateLimitPolicy. + +The path is divided in 3 tiers that could be delivered in steps, additionaly to a series of enhancements & refactoring. + +### Tier 1 + +- Atomic defaults (currently supported; missing addition of the `defaults` field to the APIs) +- Atomic overrides +- Reporting of effective policy +- CRD labels `gateway.networking.k8s.io/policy: inherited | direct` + +### Tier 2 + +- D/O conditions and support for "constraints" +- Merge strategy + +### Tier 3 + +- Deactivations +- Metrics for D/O policies (control plane) +- Docs: possible approaches for ["requirements"](#policy-requirements) + +### Enhancements and refactoring + +- Extract generic part of D/O implementation to [Kuadrant/gateway-api-machinery](https://github.com/Kuadrant/gateway-api-machinery). + # Drawbacks [drawbacks]: #drawbacks