When new KAFKA release candidates are published and there is a solicitation for the community to get involved in testing and verifying the release candidates, it would be great to have the test process thoroughly documented for newcomers to participate effectively.
For new contributors, this can be very daunting and it would be great to have this process clearly documented in a way that lowers the level of effort necessary to get started.
The goal of this task is to create the documentation and supporting artifacts that would make this goal a reality.
Going forward for future releases, it would be great to have the link to this documentation included in the RC announcements so that the community (especially end users) can help test and participate in the voting process effectively.
These are the items that I believe should be included in this documentation
- How to set up test environment for unit and functional tests
- Java version(s) needed for the tests
- Scala version(s) needed for the tests
- Gradle version needed
- Sample script for running sanity checks and unit tests
- Sample Helm Charts for running all the basic components on a Kubernetes
- Sample Ansible Script for running all the basic components on Virtual Machines
The first 4 items will be part of the documentation that shows how to install these dependencies in a Linux VM. The 5th item is a script that will download PGP keys, check signatures, validate checksums and run unit/integration tests. The 6th item is a Helm chart with basic components necessary to validate critical components in the ecosystem (Zookeeper, Brokers, Streams etc) within a Kubernetes cluster. The last item is similar to the 6th item but installs these components on virtual machines instead.