Skip to content
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

chore: migrate from kuttl to chainsaw #119

Closed
wants to merge 2 commits into from

Conversation

eddycharly
Copy link
Contributor

@eddycharly eddycharly commented Feb 16, 2024

Chainsaw was created because kuttl stopped to be actively maintained (it's actually a single maintainer now).

We are also solving most of the kuttl limitations that exist today and wrote a command to automatically migrate from kuttl to chainsaw. It supercharges e2e tests with better logs, config maps assertions, assertions trees and many more things 💪

This is a relatively young project but it has already been adopted by a couple of e2e tests heavy projects (kyverno, keptn, fairwinds rbac-manager, grafana-operator, redis-operator and others).

To give more context, you can see similar PRs at:

Sadly, kuttl haven't done a release since jan 2023.

Here you can find a good video showcasing chainsaw: https://www.youtube.com/watch?v=Ejof-wtAdQM&ab_channel=CamilaMacedo

If you need more infos 👇

Signed-off-by: Charles-Edouard Brétéché <charles.edouard@nirmata.com>
@eddycharly
Copy link
Contributor Author

This kuttl-in-kuttl thing... first time i see that 🙈

@eljohnson92
Copy link
Collaborator

Please open an issue describing what this PR solves

@eddycharly
Copy link
Contributor Author

@eljohnson92 i will do, let me at least update the pr description :)

@AshleyDumaine
Copy link
Member

Looks like this closes #103 (removing kuttl-in-kuttl)

@eddycharly
Copy link
Contributor Author

@AshleyDumaine yes it could fix that (and more)

@eddycharly
Copy link
Contributor Author

The tricky one is byovpc i'll check deeper, maybe i'll need to add something in chainsaw for that.

@eljohnson92
Copy link
Collaborator

@eddycharly we have done a pretty major refactor of our kuttl testing including removing the kuttl-in-kuttl and complications in the byoc. I suspect a migration path to chainsaw would now be much simpler. is there any tooling around transitioning from kuttl to chainsaw?

@eddycharly
Copy link
Contributor Author

You can use chainsaw migrate kuttl tests ... to convert them automatically. It's not 100% reliable though.

I think the only test that is not easy to migrate to chainsaw yet is the byovpc one, i will investigate next week, it sounds like a good use case.

Another important point is that you probably don't want to migrate as is, there's a lot of features in chainsaw that will make your tests better. Automatic conversion is not going to do that, it's just going to produce a chainsaw equivalent of your kuttl tests.

@eljohnson92
Copy link
Collaborator

It seems like one of the main usecases we still have to farm out to a Makefile right now is when we curl the LInode API to validate backend resources are created, is there any built in chainsaw functionality to cover this usecase?

@eddycharly
Copy link
Contributor Author

@eljohnson92 nope, you can still do it with curl though.

I'll look at your tests again today, upcoming v0.1.8 could solve the byovpc issues.

@eddycharly
Copy link
Contributor Author

@eljohnson92 i started over in #162

Can you let the workflow run ?

@eljohnson92 eljohnson92 mentioned this pull request Mar 11, 2024
4 tasks
@eddycharly
Copy link
Contributor Author

Closing, obsolete

@eddycharly eddycharly closed this Mar 11, 2024
@eddycharly eddycharly deleted the chainsaw branch March 11, 2024 21:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants