@@ -72,11 +72,11 @@ a change that impacts other `tektoncd` projects or users cannot be
7272merged if there is no ` TEP ` associated with it. Bug fixes and small
7373changes like refactoring that do not affect the APIs (CRDs, REST APIs)
7474are not concerned by this. Fixing the behaviour of a malfunctioning
75- part of the project is also not concerned by this .
75+ part of the project does not require a TEP .
7676
7777This TEP process is related to
7878- the generation of an architectural roadmap
79- - the fact that the what constitutes a feature is still undefined
79+ - the fact that the proposed feature is still undefined
8080- issue management
8181- the difference between an accepted design and a proposal
8282- the organization of design proposals
@@ -117,18 +117,18 @@ state of the proposal (when is it accepted, or rejected).
117117
118118The purpose of the TEP process is to reduce the amount of "tribal
119119knowledge" in our community. This is done by putting in place a gate
120- (submitting and getting a TEP merged) that mark a decision after
120+ (submitting and getting a TEP merged) that marks a decision after
121121having discussed the subject during video calls, on mailing list and
122122other means. This process aims to enhance communication and
123123discoverability. The TEP process is intended to create high quality
124124uniform design and implementation documents for WGs to deliberate.
125125
126126A TEP is broken into sections which can be merged into source control
127127incrementally in order to support an iterative development process. A
128- number of section are required for a TEP to get merged in the
128+ number of sections are required for a TEP to get merged in the
129129` proposed ` state (see the different states in the [ TEP
130- Metadata] ( #tep-metadata ) ). The rest of the section can be updated once
131- being discussed more during Working Groups and agreed on .
130+ Metadata] ( #tep-metadata ) ). The other sections cane be updated after
131+ further discussions and agreement from the Working Groups .
132132
133133[ road to Go 2 ] : https://blog.golang.org/toward-go2
134134
@@ -141,7 +141,7 @@ model indentifies the responsible parties for TEPs:
141141| ** Workstream** | ** Driver** | ** Approver** | ** Contributor** | ** Informed** |
142142| --- | --- | --- | --- | --- |
143143| TEP Process Stewardship | Tekton Contributors | Tekton Governing members | Tekton Contributors | Community |
144- | Enhancement delivery | Enhancement Owner | Project(s) OWNERs | Enhancement Implementer(s) (may overlap with Driver) | Community |
144+ | Enhancement delivery | Enhancement Owner | Project(s) Owners | Enhancement Implementer(s) (may overlap with Driver) | Community |
145145
146146In a nutshell, this means:
147147- Updates on the TEP process are driven by contributors and approved
@@ -159,17 +159,17 @@ facing enhancement should follow the TEP process. If an enhancement
159159would be described in either written or verbal communication to anyone
160160besides the TEP author or developer, then consider creating a
161161TEP. This means any change that may impact any other community project
162- in a way should be proposed as a TEP. Those changes can be for
163- technical reason, adding or removing ( deprecating then removing)
164- features.
162+ in a way should be proposed as a TEP. Those changes could be for
163+ technical reasons, or adding new features, or deprecating then
164+ removing old features.
165165
166166Similarly, any technical effort (refactoring, major architectural
167167change) that will impact a large section of the development community
168168should also be communicated widely. The TEP process is suited for this
169169even if it will have zero impact on the typical user or operator.
170170
171- Let's list a few enhancement that happened before this process (or are
172- happening), that would have required a TEP:
171+ Let's list a few enhancements that happened before this process (or
172+ are happening), that would have required a TEP:
173173
174174- Failure strategies using runOn 🎉 [ tektoncd/pipeline #2094 ] ( https://github.com/tektoncd/pipeline/issues/2094 )
175175- Expose v1beta1 to the world ⛈ [ tektoncd/pipeline #2035 ] ( https://github.com/tektoncd/pipeline/issues/2035 )
@@ -283,14 +283,16 @@ A TEP has the following states
283283- ` replaced ` : The TEP has been replaced by a new TEP. The
284284 ` superseded-by ` metadata value should point to the new TEP.
285285
286- When a TEP is merged with the ` proposed ` state, this means the
287- project owners acknowledge this is something we need to work on * but*
288- the proposal needs to be more detailed before we can go ahead and
289- implement it in the main project(s). This state doesn't prevent using
286+ When a TEP is merged with the ` proposed ` state, this means the project
287+ owners acknowledge this is something we need to work on * but* the
288+ proposal needs to be more detailed before we can go ahead and
289+ implement it in the main project(s). We might need more information
290+ about the impact on users, or some time to socialize it with the
291+ Working Groups, etc. This state doesn't prevent using
290292` tektoncd/experimental ` to * experiment* and gather feedback.
291293
292- A TEP can be created with the ` implementable ` state if it doesn't need
293- any more discussion and got approved as it.
294+ A TEP can be moved to the ` implementable ` state if it doesn't need
295+ any more discussion and is approved as it.
294296
295297See [ Examples] ( #examples ) to see examples of TEP workflow on use cases.
296298
@@ -319,18 +321,18 @@ process][]
319321
320322## Examples
321323
322- Let's give some example of workflow to give reader a better
323- understanding on how and when TEP should be created and how they are
324+ Let's give some example of workflow to give the reader a better
325+ understanding on how and when a TEP should be created and how they are
324326managed across time.
325327
326- Those are examples, and do not necessarily reflect what happened, or
327- will happens on the particular subject they are about. They are here
328- to give more context and ideas on different situation that could rise
329- while following the TEP process.
328+ These are examples, and do not necessarily reflect what happened, or
329+ what will happen on the particular subject they are about. They are
330+ here to give more context and ideas on different situations that could
331+ arise while following the TEP process.
330332
331333### Share Task and Pipeline as OCI artifact
332334
333- For more context, this is linked to the following :
335+ See the following links for more context on this feature :
334336
335337- [ Feature: Versioning on Tasks/Pipelines] ( https://github.com/tektoncd/pipeline/issues/1839 )
336338- [ Oci tool: makes use of oci-artifacts to store and retrieve Tekton resources] ( https://github.com/tektoncd/experimental/pull/461 )
@@ -353,16 +355,21 @@ Catalog](https://docs.google.com/document/d/1zUVrIbGZh2R9dawKQ9Hm1Cx3GevKIfOcRO3
353355 During those discussion it is clear that some work needs to be
354356 done:
355357 - Define a Spec for the OCI image (layers, metadata, configuration)
356- The experimental project can be used to demo and validate that spec.
357- - Once the spec is agreed on
358- - Have a new TEP to add support for referencing Task and Pipeline
359- through alternative means than in clusters (OCI image is one,
360- using Git or an HTTP url are others)
358+ The experimental project can be used to demo and validate that
359+ spec.
360+ - Once the spec is agreed on, a new TEP can be created to discuss
361+ the support of this Spec in tekton projects (pipeline, cli, …).
362+ * Having a seperated TEP from the Spec TEP makes a clear
363+ distinction between the Spec and its implementation in the tekton
364+ projects.*
365+ - A new TEP can be created to discuss adding support for
366+ referencing Task and Pipeline through alternative means than in
367+ clusters (OCI image is one, using Git or an HTTP url are others).
368+ * This is ** not covered by the rest of the flow*** , it's here just to
369+ give an example that discussion on a TEP might lead to creation
370+ of new TEP.*
361371
362372 The next actions are :
363- - Create a new TEP on support for referencing Task and Pipeline.
364- As before, the TEP can be first discussed during Working group
365- and refined in Google Docs before being proposed as a TEP.
366373 - Update the current TEP to define the spec (same thing as above
367374 applies). A name is choosed for those: Tekton Bundles.
368375 - Create a new TEP on implementing Tekton Bundles in tektoncd
@@ -376,24 +383,17 @@ We are now switching to the "Implementing Tekton Bundles" TEP.
376383
3773841 . It is proposed based on a design docs (discussed during working
378385 group)
379- 2 . It depends on the TEP on support for referencing Task and Pipeline
380- to be approved and in the ` implementable ` (aka we have agreed on
381- how it should be implemented more or less 😝).
382- It is also agreed (and most likely written in the TEP) that
383- "Implementing Tekton Bundle" would serve as the first
384- implementation of this TEP.
385- 3 . The "Implementing Tekton Bundle" gets approved, and as it has been
386+ 2 . The "Implementing Tekton Bundle" gets approved, and as it has been
386387 discussed during working groups, it is ready for implementation, so
387388 it gets merged directly into ` implementable ` .
388- 4 . Work is happening in ` tektoncd/pipeline ` (and ` tektoncd/cli ` in
389+ 3 . Work is happening in ` tektoncd/pipeline ` (and ` tektoncd/cli ` in
389390 parallel) on implementing it.
390- 5 . Implementation is done, we update the TEP to put it in
391+ 4 . Implementation is done, we update the TEP to put it in
391392 ` implemented ` state.
392393
393394### PipelineResource re-design
394395
395- For more context, this is linked to the PipelineResource work and more
396- accurately the following:
396+ See the following links for more context on this feature:
397397
398398- [ Tekton Pipeline Resource Extensibility] ( https://docs.google.com/document/d/1rcMG1cIFhhixMSmrT734MBxvH3Ghre9-4S2wbzodPiU/edit# )
399399- [ Why Aren't PipelineResources in Beta ?] ( https://github.com/tektoncd/pipeline/blob/master/docs/resources.md#why-arent-pipelineresources-in-beta )
0 commit comments