kafka_ex
kafka_ex copied to clipboard
Add Github actions CI
Prompted by #421 and #422 - I took a whack at writing some github actions to run the test suite and added some additional checks.
I've split the integration tests apart to run in a matrix. I was hoping this would decrease the flakeyness in testing, but if anything it seems a bit worse. On the plus side, it's a bit faster to run all the tests in parallel tasks. Are there tweaks to the kafka configuration to let it run better in small vms?
I have also added common CI code quality checks. Currently this includes credo
, mix format --check-formatted
, mix compile --warnings-as-errors --force
, and dialyzer
.
@gerbal Thanks so much for taking this on! It would be a huge help if you could get this to work reliably!
Generally what seems to happen with the integration tests is that because we need to run a 3-node kafka cluster AND the tests, any cpu-constrained environment will have all kinds of bad behavior because that resource is constrained. I think we want to have at least 2 nodes (3 is probably better) in our test cluster because otherwise we aren't going to exercise any of the tricky metadata juggling.
Thanks @dantswain! I'll keep hacking on this as I have time