bf2fc6cc711aee1a0c2a / kas-fleetshard

The kas-fleetshard-operator is responsible for provisioning and managing instances of kafka on a cluster. The kas-fleetshard-synchronizer synchronizes the state of a fleet shard with the kas-fleet-manager.
Apache License 2.0
7 stars 20 forks source link

Improve smoketest run times #318

Closed shawkins closed 3 years ago

shawkins commented 3 years ago

Currently for each smoke test there is a full tear down and build up of the environment. We should consider for smoke tests an approach that will first install strimzi, the crds / fleetshard components, then run the tests against that setup where the tear down only deletes the namespace created for the managedkafka resource and restarts the relevant pods.

@kornys would you be open to such a change?

kornys commented 3 years ago

@shawkins well from my experience this approach is not good, my previous suite for enmasse worked this way and it only caused a many issues. So I can only add skip teardown of fleetshard/strimzi by env var for local running for example, but in CI we definitely need to setup/teardown operator for every testclass (and if we want in future for every test).

shawkins commented 3 years ago

@kornys can you clarify what issues this approach causes? If the custom resources and all operands are gone, and all of our pods are stateless, so a restart gives them a clean slate - what lingers between tests?

kornys commented 3 years ago

well in past when for example 1st test failed and operator stuck in weird state because of delete resource, the rest of tests failed as well which caused false negative results of all tests...

kornys commented 3 years ago

I will open PR tomorrow with some refactor and speedup.