-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Variable to get a list of results of a task #4097
Comments
Thanks for opening this @hokadiri ! Are you able to share any more details around the use case you need this for? e.g. a specific Task with specific results would really help us understand why this is needed. (I'm also wondering if in this case you'd prefer to be able to have an array or dictionary type result - but I think even if we supported those, we've been hesitant to support variable replacement for going from an array to a string b/c it's hard to say how it should be formatted - e.g. separated by commas? spaces? something else?) |
Hi @bobcatfish, I have a tekton task that runs a tool which takes a git commit and outputs the list of tests to run with some additional metadata
Ideally I want to take this json and trigger concurrent task runs (One test per task). Since results can't be lists/dictonaries, workaround is i'm creating a result for each test, looping thru and setting it. To set it, I wanted to loop through the result list
Ideally if results can support multiple types (not just string), then I can do: |
ooooo thanks for the additional info!! i've actually just created 2 proposals that might help you out: (Eventually I think we should allow even more complex types, e.g. arrays of dictionaries, etc.) Maybe even just having array results support would be enough to unblock you for now? (it sounds like task-loops might be relevant to your interests also, if you wanted to run the same Task "for each" test) |
@bobcatfish , Thanks for creating the proposals. Yeah having array results support - in conjunction with task-loops - would be enough to unblock me. In general being able to convert a json/yaml file to an equivalent object tekton understands and vice versa would be a very helpful feature. |
This change adds the problem statement for Looping. It scopes the problem, describes the use cases, and identifies the goals and the requirements for the solution. Today, users cannot supply varying `Parameters` to the same `Task` or `Custom Task` - that is, fan out their `Task` or `Custom Tasks`. In this TEP, we aim to provide a way to run the same `Task` or `Custom Task` with varying `Parameters` by spinning up a `TaskRun` or `Run` for each `Parameter` in a loop. This looping construct is aimed at improving the composability, scalability, flexibility and reusability of *Tekton Pipelines*. References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097
This change adds the problem statement for Looping. It scopes the problem, describes the use cases, and identifies the goals and the requirements for the solution. Today, users cannot supply varying `Parameters` to the same `Task` or `Custom Task` - that is, fan out their `Task` or `Custom Tasks`. In this TEP, we aim to provide a way to run the same `Task` or `Custom Task` with varying `Parameters` by spinning up a `TaskRun` or `Run` for each `Parameter` in a loop. This looping construct is aimed at improving the composability, scalability, flexibility and reusability of *Tekton Pipelines*. References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Looping. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continous delivery systems. Today, users cannot supply varying `Parameters` to the same `Task` or `Custom Task` - that is, fan out their `Task` or `Custom Tasks`. In this TEP, we aim to provide a way to run the same `Task` or `Custom Task` with varying `Parameters` by spinning up a `TaskRun` or `Run` for each `Parameter` in a loop. This looping construct is aimed at improving the composability, scalability, flexibility and reusability of *Tekton Pipelines*. References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Looping. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to the same `Task` or `Custom Task` - that is, fan out their `Task` or `Custom Tasks`. In this TEP, we aim to provide a way to run the same `Task` or `Custom Task` with varying `Parameters` by spinning up a `TaskRun` or `Run` for each `Parameter` in a loop. This looping construct is aimed at improving the composability, scalability, flexibility and reusability of *Tekton Pipelines*. References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Looping. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to the same `Task` or `Custom Task` - that is, fan out their `Task` or `Custom Tasks`. In this TEP, we aim to provide a way to run the same `Task` or `Custom Task` with varying `Parameters` by spinning up a `TaskRun` or `Run` for each `Parameter` in a loop. This looping construct is aimed at improving the composability, scalability, flexibility and reusability of *Tekton Pipelines*. References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Looping. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to the same `Task` or `Custom Task` - that is, fan out their `Task` or `Custom Tasks`. In this TEP, we aim to provide a way to run the same `Task` or `Custom Task` with varying `Parameters` by spinning up a `TaskRun` or `Run` for each `Parameter` in a loop. This looping construct is aimed at improving the composability, scalability, flexibility and reusability of *Tekton Pipelines*. References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Looping. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to the same `Task` or `Custom Task` - that is, fan out their `Task` or `Custom Tasks`. In this TEP, we aim to provide a way to run the same `Task` or `Custom Task` with varying `Parameters` by spinning up a `TaskRun` or `Run` for each `Parameter` in a loop. This looping construct is aimed at improving the composability, scalability, flexibility and reusability of *Tekton Pipelines*. References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Looping. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to the same `Task` or `Custom Task` - that is, fan out their `Task` or `Custom Tasks`. In this TEP, we aim to provide a way to run the same `Task` or `Custom Task` with varying `Parameters` by spinning up a `TaskRun` or `Run` for each `Parameter` in a loop. This looping construct is aimed at improving the composability, scalability, flexibility and reusability of *Tekton Pipelines*. References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Looping. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to the same `Task` or `Custom Task` - that is, fan out their `Task` or `Custom Tasks`. In this TEP, we aim to provide a way to run the same `Task` or `Custom Task` with varying `Parameters` by spinning up a `TaskRun` or `Run` for each `Parameter` in a loop. This looping construct is aimed at improving the composability, scalability, flexibility and reusability of *Tekton Pipelines*. References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Looping. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to the same `Task` or `Custom Task` - that is, fan out their `Task` or `Custom Tasks`. In this TEP, we aim to provide a way to run the same `Task` or `Custom Task` with varying `Parameters` by spinning up a `TaskRun` or `Run` for each `Parameter` in a loop. This looping construct is aimed at improving the composability, scalability, flexibility and reusability of *Tekton Pipelines*. References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Looping. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to the same `Task` or `Custom Task` - that is, fan out their `Task` or `Custom Tasks`. In this TEP, we aim to provide a way to run the same `Task` or `Custom Task` with varying `Parameters` by spinning up a `TaskRun` or `Run` for each `Parameter` in a loop. This looping construct is aimed at improving the composability, scalability, flexibility and reusability of *Tekton Pipelines*. References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
Issues go stale after 90d of inactivity. /lifecycle stale Send feedback to tektoncd/plumbing. |
This change adds the problem statement for Matrix. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to execute a `PipelineTask`, that is, fan out a `PipelineTasks`. To solve this problem, this TEP aims to enable executing the same `PipelineTask` with different combinations of `Parameters` specified in a `matrix`. `TaskRuns` or `Runs` will be created with variables substituted with each combination of the `Parameters` in the `matrix`. This `matrix` construct will enable users to specify concise but powerful `Pipelines`. Moreover, it would improve the composability, scalability, flexibility and reusability of *Tekton Pipelines*. References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Matrix. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to execute a `PipelineTask`, that is, fan out a `PipelineTasks`. To solve this problem, this TEP aims to enable executing the same `PipelineTask` with different combinations of `Parameters` specified in a `matrix`. `TaskRuns` or `Runs` will be created with variables substituted with each combination of the `Parameters` in the `matrix`. This `matrix` construct will enable users to specify concise but powerful `Pipelines`. Moreover, it would improve the composability, scalability, flexibility and reusability of *Tekton Pipelines*. References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Matrix. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to execute a `PipelineTask`, that is, fan out a `PipelineTasks`. To solve this problem, this TEP aims to enable executing the same `PipelineTask` with different combinations of `Parameters` specified in a `matrix`. `TaskRuns` or `Runs` will be created with variables substituted with each combination of the `Parameters` in the `matrix`. This `matrix` construct will enable users to specify concise but powerful `Pipelines`. Moreover, it would improve the composability, scalability, flexibility and reusability of *Tekton Pipelines*. References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Matrix. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to execute a `PipelineTask`, that is, fan out a `PipelineTasks`. To solve this problem, this TEP aims to enable executing the same `PipelineTask` with different combinations of `Parameters` specified in a `matrix`. `TaskRuns` or `Runs` will be created with variables substituted with each combination of the `Parameters` in the `matrix`. This `matrix` construct will enable users to specify concise but powerful `Pipelines`. Moreover, it would improve the composability, scalability, flexibility and reusability of *Tekton Pipelines*. References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Matrix. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to execute a `PipelineTask`, that is, fan out a `PipelineTasks`. To solve this problem, this TEP aims to enable executing the same `PipelineTask` with different combinations of `Parameters` specified in a `matrix`. `TaskRuns` or `Runs` will be created with variables substituted with each combination of the `Parameters` in the `matrix`. This `matrix` construct will enable users to specify concise but powerful `Pipelines`. Moreover, it would improve the composability, scalability, flexibility and reusability of *Tekton Pipelines*. https://github.com/jerop/community/blob/looping/teps/0090-matrix.md References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Matrix. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to execute a `PipelineTask`, that is, fan out a `PipelineTasks`. To solve this problem, this TEP aims to enable executing the same `PipelineTask` with different combinations of `Parameters` specified in a `matrix`. `TaskRuns` or `Runs` will be created with variables substituted with each combination of the `Parameters` in the `matrix`. This `matrix` construct will enable users to specify concise but powerful `Pipelines`. Moreover, it would improve the composability, scalability, flexibility and reusability of *Tekton Pipelines*. https://github.com/jerop/community/blob/looping/teps/0090-matrix.md References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Matrix. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to execute a `PipelineTask`, that is, fan out a `PipelineTasks`. To solve this problem, this TEP aims to enable executing the same `PipelineTask` with different combinations of `Parameters` specified in a `matrix`. `TaskRuns` or `Runs` will be created with variables substituted with each combination of the `Parameters` in the `matrix`. This `matrix` construct will enable users to specify concise but powerful `Pipelines`. Moreover, it would improve the composability, scalability, flexibility and reusability of *Tekton Pipelines*. https://github.com/jerop/community/blob/looping/teps/0090-matrix.md References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Matrix. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to execute a `PipelineTask`, that is, fan out a `PipelineTasks`. To solve this problem, this TEP aims to enable executing the same `PipelineTask` with different combinations of `Parameters` specified in a `matrix`. `TaskRuns` or `Runs` will be created with variables substituted with each combination of the `Parameters` in the `matrix`. This `matrix` construct will enable users to specify concise but powerful `Pipelines`. Moreover, it would improve the composability, scalability, flexibility and reusability of *Tekton Pipelines*. https://github.com/jerop/community/blob/looping/teps/0090-matrix.md References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Matrix. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to execute a `PipelineTask`, that is, fan out a `PipelineTasks`. To solve this problem, this TEP aims to enable executing the same `PipelineTask` with different combinations of `Parameters` specified in a `matrix`. `TaskRuns` or `Runs` will be created with variables substituted with each combination of the `Parameters` in the `matrix`. This `matrix` construct will enable users to specify concise but powerful `Pipelines`. Moreover, it would improve the composability, scalability, flexibility and reusability of *Tekton Pipelines*. https://github.com/jerop/community/blob/looping/teps/0090-matrix.md References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Matrix. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to execute a `PipelineTask`, that is, fan out a `PipelineTasks`. To solve this problem, this TEP aims to enable executing the same `PipelineTask` with different combinations of `Parameters` specified in a `matrix`. `TaskRuns` or `Runs` will be created with variables substituted with each combination of the `Parameters` in the `matrix`. This `matrix` construct will enable users to specify concise but powerful `Pipelines`. Moreover, it would improve the composability, scalability, flexibility and reusability of *Tekton Pipelines*. https://github.com/jerop/community/blob/looping/teps/0090-matrix.md References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Matrix. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to execute a `PipelineTask`, that is, fan out a `PipelineTasks`. To solve this problem, this TEP aims to enable executing the same `PipelineTask` with different combinations of `Parameters` specified in a `matrix`. `TaskRuns` or `Runs` will be created with variables substituted with each combination of the `Parameters` in the `matrix`. This `matrix` construct will enable users to specify concise but powerful `Pipelines`. Moreover, it would improve the composability, scalability, flexibility and reusability of *Tekton Pipelines*. https://github.com/jerop/community/blob/looping/teps/0090-matrix.md References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
This change adds the problem statement for Matrix. It scopes the problem, describes the use cases, and identifies the goals, the requirements for the solution, and related work in other continuous delivery systems. Today, users cannot supply varying `Parameters` to execute a `PipelineTask`, that is, fan out a `PipelineTasks`. To solve this problem, this TEP aims to enable executing the same `PipelineTask` with different combinations of `Parameters` specified in a `matrix`. `TaskRuns` or `Runs` will be created with variables substituted with each combination of the `Parameters` in the `matrix`. This `matrix` construct will enable users to specify concise but powerful `Pipelines`. Moreover, it would improve the composability, scalability, flexibility and reusability of *Tekton Pipelines*. https://github.com/jerop/community/blob/looping/teps/0090-matrix.md References: - [Task Loops Experimental Project][task-loops] - Issues: - tektoncd/pipeline#2050 - tektoncd/pipeline#4097 [task-loops]: https://github.com/tektoncd/experimental/tree/main/task-loops
Stale issues rot after 30d of inactivity. /lifecycle rotten Send feedback to tektoncd/plumbing. |
/lifecycle frozen Adding frozen lifecycle given its relevance to the array results & indexing TEP. |
Feature request
if a i have a list of results
I want a variable that tells me the list so i can loop through it in in a task shell
A variable which lists the results defined in a task
Use case
I have a list of 10 results , i want to set them to some value.
Right now i have to
Would be great if i can loop through the results list/
Supports DRY principle.
The text was updated successfully, but these errors were encountered: