Skip to content

Add TEP Test Framework for Tasks #1192

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

Open
wants to merge 8 commits into
base: main
Choose a base branch
from
Open

Add TEP Test Framework for Tasks #1192

wants to merge 8 commits into from

Conversation

jlux98
Copy link

@jlux98 jlux98 commented Mar 21, 2025

No description provided.

@tekton-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
To complete the pull request process, please assign dibyom after the PR has been reviewed.
You can assign the PR to them by writing /assign @dibyom in a comment when ready.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Copy link

linux-foundation-easycla bot commented Mar 21, 2025

CLA Signed

The committers listed above are authorized under a signed CLA.

@tekton-robot tekton-robot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Mar 21, 2025
@jlux98
Copy link
Author

jlux98 commented Mar 21, 2025

/kind TEP

@tekton-robot tekton-robot added the kind/tep Categorizes issue or PR as related to a TEP (or needs a TEP). label Mar 21, 2025
@tekton-robot tekton-robot added size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. and removed size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Mar 24, 2025
@jlux98
Copy link
Author

jlux98 commented Mar 24, 2025

I know, that having a PR with the whole proposal already filled out is not the preferred way to do it and that it's better to wait, until the initial summary and proposal is discussed and merged before adding the design section.

But as I had already put a lot of thought into the design and written out the section I thought it better to publish it quickly and get feedback instead of waiting for feedback on the initial proposal and then having to wait even longer for feedback on the rest.

@afrittoli
Copy link
Member

@jlux98 Thank you for your proposal.
Did you receive any feedback on this? If not, I apologise for the delayed response.
is this still something that you're interested in? If so, I will spend some time reviewing your proposal.

@jlux98
Copy link
Author

jlux98 commented May 12, 2025

@afrittoli Thank you for your response.

I did not receive feedback on this proposal yet and it is still something I am interested in, as the feature described in this TEP will be the topic of my bachelor's thesis and ideally I'd like to design and implement it in a way where after I'm done the code can be merged into the official repo with as few changes as possible.

I pushed a small-ish revision today (touching up some of the examples for proposed API objects and rewording some paragraphs to hopefully flow better) and would be really glad, if you could take the time to have a look at the proposal.

@jlux98
Copy link
Author

jlux98 commented May 20, 2025

@afrittoli did you already have to time to look into the proposal?

I hope me asking doesn't come off as rude and I'm not doing it out of impatience. The reason why I'm asking is because as I wrote in my earlier comment the test framework described here will be the topic of my Bachelor's thesis, but what I didn't write is that I'll have to start implementing the feature in 3-4 weeks.
So if you were able to give me the first wave of feedback before then, that would be greatly appreciated - if not then that's still alright, I might be able to still incorporate the feedback into my thesis. And even if the feedback comes too late for that, then I'll compare the final product of the thesis to the feedback and go from there.

@waveywaves
Copy link
Member

/assign

Copy link
Member

@vdemeester vdemeester left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jlux98 Thanks for this TEP and sorry for the late review. That's an interesting approach and I would love to see some experiments around this. I had a few questions, as well as:

Where would we want this to live ? in tektoncd/pipeline or in a sibling project ?

cc @tektoncd/core-maintainers

Comment on lines +232 to +236
taskRef:
name: "Task1"
# optional, if the following field is empty then the Task is searched in the
# namespace where the TaskTest object was created
namespace: "tekton-system"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we plan to support resolvers here ?


### Reusability

This TEP contains a new way of triggering the execution of tasks, but the plan
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, the controller of these new object could also directly do a kubectl or call the API just like any other client would.

Maybe making this an opt-in feature lessens the risk of an unaware administrator
not setting the privileges in the necessary way.

## Alternatives
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One alternative that I don't see here, is to have something similar but without Kubernetes objects (and thus no reconciler, more imperative approach). I would like to weight pros and cons of those two approaches.

@tekton-robot tekton-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jul 8, 2025
@tekton-robot
Copy link
Contributor

@jlux98: PR needs rebase.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/tep Categorizes issue or PR as related to a TEP (or needs a TEP). needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants