Comments (12)
Thanks @fenglixa - this custom controller is more feature reach than the existing task loop, and it allows us to experiment looping over pipelines using a single custom controller. I look forward to experimenting with this!
from community.
I think it's useful feature. although we already have pipeline-pipeline
and task-loop
.
This feature is specific for pipeline-loop
and consider more scenarios which is only for pipeline-loop
, and handle many gaps in task-loop
and pipeline-in-pipeline
, I like it, thanks @fenglixa
from community.
/cc @dibyom
from community.
I want to stress that in the long run I think the use cases that are being expressed here should be supported by a top level looping feature in Pipelines + pipelines in pipelines - looking at the outlined loops "typical loop", "multi args loop" and "condition loop" I don't see anything that we wouldn't want to support with a generic "looping" concept that could be applied to task as well.
My one concern about pursuing this as an experimental project is that folks who want this functionality will start to rely on the experimental project and will not be motivated to continue improving the existing experimental looping project - is there any chance that instead of pursing this experimental project, you might be interested in helping get the existing loops project promoted as a top level feature in Tekton Pipelines @fenglixa ? (which would cover the use case you have outlined as well) Totally understand if not since that's probably more work and would mean a bunch of back and forth discussions with the community to nail down the features - but it WAS a possibility, I would definitely prefer that to introducing another experimental project that does looping.
(That said I won't block adding this as an experimental project)
from community.
looking at the outlined loops "typical loop", "multi args loop" and "condition loop" I don't see anything that we wouldn't want to support with a generic "looping" concept that could be applied to task as well.
I just realized that "condition loop" might be an exception - that would be a bit more controversial since it would mean introduce non-deterministic looping and i think might push us over the edge into being turing complete
from community.
so given that, maybe this does make the most sense as an experimental project
(sorry for the stream of consciousness, thanks for your patience
from community.
Thanks @bobcatfish @vincent-pli @afrittoli , for your support!
from community.
I'd rather experiment with this, thus a custom task in experimental works fine.
My one concern about pursuing this as an experimental project is that folks who want this functionality will start to rely on the experimental project and will not be motivated to continue improving the existing experimental looping project.
I don't really see this as a problem. Having it as an experimental project, and a custom task is quite the "barrier" for people to use it, which means if there is a high need of this in a supported way, we will have request for it, I have no worries. Having it in an experimental project and in custom task allows us to iterate quickly over it without having to be blocked by the core (saying this because, as of today, before we get feature flags into tektoncd/pipeline
any big feature like this would be blocked and would move forward quite slowly).
from community.
@afrittoli do we need to create a TEP for this proposal to unblock tektoncd/experimental#724? thanks.
from community.
I agree to put into experimental first. We want to get some usage on this feature so we can get some feedbacks on the API definition.
from community.
Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale
with a justification.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close
with a justification.
If this issue should be exempted, mark the issue as frozen with /lifecycle frozen
with a justification.
/lifecycle stale
Send feedback to tektoncd/plumbing.
from community.
Definitely not stale since we've got https://github.com/tektoncd/experimental/tree/main/task-loops !
/remove-lifecycle stale
Also I think since we've got the project now, it makes sense to consider this particular issue handled. Though I am still really really hoping we'll promote this to supported Pipeline syntax and not just an experimental task!
from community.
Related Issues (20)
- Pipeline: Support set pod template for tasks
- Tekton chains events logs HOT 4
- Links result in 404 errors under Contribution Process HOT 1
- Projects that have several, high-profile or well known end-user implementations. HOT 5
- Update roadmaps across all repos HOT 2
- New org for tekton experiments? HOT 13
- Receive a 2/3 supermajority vote from the TOC to move to Graduated stage. HOT 2
- Installation image gcr.io/v2 cann't be access from China. HOT 2
- Propose to make some modifications on top of TEP-0002
- Proposal: adoption of `pipelines-as-code` HOT 9
- New Org for Tekton Verified Catalogs HOT 11
- wlynch govboard access HOT 5
- 2023 Governing Board Elections HOT 7
- Add CRD `Queue` for tep 120 cancel existing pipelineruns HOT 4
- [Nominations Open] Most Valuable Tekton Contributor 2023 🏆 HOT 1
- [Nominations Open] Tekton Security MVP 2023 🏆 HOT 1
- [Voting Open] Tekton Community Awards 2023 🏆 HOT 1
- Automate keeping reviewers list up-to-date HOT 3
- New Repo: tektoncd/infra HOT 1
- 🌷 TEPs Spring Cleaning 🌷
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from community.