From 0aed2ce11b26457920f7c0214d93413c6622d09c Mon Sep 17 00:00:00 2001 From: Nick Young Date: Thu, 9 Mar 2023 04:46:39 +0000 Subject: [PATCH 1/3] Update GEP overview to clarify the GEP process Signed-off-by: Nick Young --- geps/overview.md | 25 +++++++++++++++++++++++-- hack/make-docs.sh | 1 + 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/geps/overview.md b/geps/overview.md index 7f2ddfb823..3077448319 100644 --- a/geps/overview.md +++ b/geps/overview.md @@ -11,7 +11,23 @@ process for the main Kubernetes project: ## Process -### 1. Circulate the Idea +This diagram shows the state diagram of the GEP process at a high level, but the details are below. + +
+```mermaid +flowchart TD + D([Discuss with
the community]) --> C + C([Issue Created]) --> Provisional + Provisional -->|GEP Doc PR
done| Implementable + Provisional -->|If practical
work needed| Prototyping + Prototyping -->|GEP Doc PR
done| Implementable + Implementable -->|Gateway API
work completed| Experimental + Experimental -->|Implemented in
controllers| Standard + +``` +
+ +### 1. Discuss with the community Before creating a GEP, share your high level idea with the community. This can be in one of many forms: @@ -19,7 +35,12 @@ be in one of many forms: - On our [Slack Channel](https://kubernetes.slack.com/archives/CR0H13KGA) - On one of our [community meetings](https://gateway-api.sigs.k8s.io/contributing/?h=meetings#meetings) -### 2. Agree on the Goals +### 2. Create an Issue +[Create a GEP issue](https://github.com/kubernetes-sigs/gateway-api/issues/new?assignees=&labels=kind%2Ffeature&template=enhancement.md) in the repo describing your change. +At this point, you should copy the outcome of any other conversations or documents +into this document. + +### 3. Agree on the Goals Although it can be tempting to start writing out all the details of your proposal, it's important to first ensure we all agree on the goals. The first version of your GEP should aim for a "Provisional" status and leave out any diff --git a/hack/make-docs.sh b/hack/make-docs.sh index f979493fad..759bb90d2f 100755 --- a/hack/make-docs.sh +++ b/hack/make-docs.sh @@ -31,6 +31,7 @@ esac } # Move GEPs to site-src +rm -rf site-src/geps cp -r geps site-src/geps # Ensure site dir exists From 3ae4b09be7922cf820b4bbed6013491a0580f993 Mon Sep 17 00:00:00 2001 From: Nick Young Date: Fri, 10 Mar 2023 04:08:42 +0000 Subject: [PATCH 2/3] Clarify that GEP issues should only be closed when finished Signed-off-by: Nick Young --- geps/overview.md | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/geps/overview.md b/geps/overview.md index 3077448319..48e69bdb14 100644 --- a/geps/overview.md +++ b/geps/overview.md @@ -23,7 +23,7 @@ flowchart TD Prototyping -->|GEP Doc PR
done| Implementable Implementable -->|Gateway API
work completed| Experimental Experimental -->|Implemented in
controllers| Standard - + Standard -->|Entire change is GA or implemented| Completed ``` @@ -79,6 +79,16 @@ any of the following: 2. Graduating fields to "standard" by removing `` tags 3. Graduating a concept to "standard" by updating documentation +### 6. Close out the GEP issue + +The GEP issue should only be closed once the feature has: +- Moved to the standard channel for distribution (if necessary) +- Moved to a "v1" `apiVersion` for CRDs +- been completely implemented and has wide acceptance (for process changes). + +In short, the GEP issue should only be closed when the work is "done" (whatever +that means for that GEP). + ## Status Each GEP has a status field that defines it's current state. Each transition From 293055a26b22245ce8a5fa4f7682487793f99ba8 Mon Sep 17 00:00:00 2001 From: Nick Young Date: Mon, 13 Mar 2023 04:06:39 +0000 Subject: [PATCH 3/3] Update labels on experimental to standard transition Signed-off-by: Nick Young --- geps/overview.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/geps/overview.md b/geps/overview.md index 48e69bdb14..ae32760c48 100644 --- a/geps/overview.md +++ b/geps/overview.md @@ -22,7 +22,7 @@ flowchart TD Provisional -->|If practical
work needed| Prototyping Prototyping -->|GEP Doc PR
done| Implementable Implementable -->|Gateway API
work completed| Experimental - Experimental -->|Implemented in
controllers| Standard + Experimental -->|Supported in
multiple implementations
+ Conformance tests| Standard Standard -->|Entire change is GA or implemented| Completed ```