kubebuilder
kubebuilder copied to clipboard
Skippable test scaffolding on `create (api|webhook)`
What do you want to happen?
Context
Giving the ability to skip test creation would allow users who have diverged from the original test scaffolding without facing the error when creating new APIs.
Currently, it seems like the create api|webhook commands require the test/e2e/e2e_test.go to exist and they will also create a <kind>_test.go in every call.
When creating a new webhok after having moved the test/e2e/e2e_test.go files somewhere else, this error is shown:
FATA failed to create webhook: unable to scaffold with "base.go.kubebuilder.io/v4": open test/e2e/e2e_test.go: no such file or directory
The current workaround is to create an empty file in that location, just so kubebuilder is happy enough to run the command.
Ps: I know the idea here is to create a plugin for kubebuilder but I don't quite have that need yet. It would be nice if I could just keep using the default scaffolding without having to have empty files laying around.
Proposal
My proposal is to create a --skip-test-scaffolding flag for create (api|webhook) calls.
Extra Labels
No response
Hi @migueleliasweb
Thank you for raise this one. That is happing because we have markers for the tests now; https://github.com/kubernetes-sigs/kubebuilder/blob/master/testdata/project-v4/test/e2e/e2e_test.go#L316
But I agree 100%. In this case, we should WARNING and say that we are unable to scaffold e2e tests for webhooks since the path was not found.
Would you like to push a PR for this one?
This one is similar to: https://github.com/kubernetes-sigs/kubebuilder/pull/4518 But see that in the e2e tests we have markers to add tests
+kubebuilder:scaffold:e2e-webhooks-checks
So, we need to see if we can not fail and warn when the tests are not found.
Hi @mateusoliveira43,
I noticed you’ve worked on similar areas, and I just wanted to bring this one to your attention. It might be a good fit for you if you have the bandwidth to help out.
Please don’t feel obligated at all, but if you’d like to pitch in, your help would be greatly appreciated and would mean a lot! 🥇
Hi @camilamacedo86 , I don't think I'll be able to work on this for the next week or two. If until then it's not done, I'm happy to give it a go.
/assign
Hi @camilamacedo86 , I'm currently occupied with other work and won't be able to take on this issue for now.
/unassign
/assign
@camilamacedo86 Hi, I’d like to start working on this issue. Assigning it to myself.
/assign