Hello David, I think this proposal is awesome. Personally, I find the UI of Jenkins not very friendly for newcomers. When I first contributed to Kafka and wanted to see the result of my PR build, it took me some time to understand each part of Jenkins. So, for me, the modern and user-friendly UI of GitHub Actions is very attractive. And most important, if we could stay on the same platform and complete most of the tasks, it would be great. I think the main concern is the test suite’s execution time, but as you mentioned, ASF plans to provide compatible machines for GitHub Actions, so that might not be an issue.
I would like to upvote this proposal. Thank you. Best Regards, TengYao David Arthur <davidart...@apache.org> 於 2024年8月16日 週五 上午2:18寫道: > Hey everyone, > > Over the past several months (years, maybe?) I've tinkered around with > GitHub Actions as a possible alternative to Jenkins for Apache Kafka CI. I > think it is time to actually give it an earnest try. > > We have already done some work with GH Actions. Namely the Docker build and > the "stale PR" workflow. I would like to add a new workflow that will run > the JUnit tests in a GH Action. > > Here is an example PR on my personal fork that is using an Action > > https://github.com/mumrah/kafka/pull/5 > > For the full test suite, it took 1h41m. A random Jenkins run I found took > 1h17m. A difference of 24m. This is simply because the Jenkins hardware is > beefier than the GH Actions public runners. > > ASF has been evaluating the use of larger runners as well as ASF-hosted > runners on beefier hardware. I think eventually, the compute capacity will > be comparable. > > There are many benefits to GH Actions compared to Jenkins. To name a few: > > * Significantly better UI > * Wide availability of plugins from the GitHub Actions Marketplace > * Better/easier integration with Pull Requests > * Easier to customize workflows based on different GitHub events > * Ability to write custom actions that utilize the `gh` GitHub CLI > > Another nice thing (and the original motivation for my inquiry) is that GH > Actions has caching as a built-in concept. This means we can leverage the > Gradle cache and potentially speed up build times on PRs significantly. > > I'd like to run both Jenkins and GH Actions side by side for a few weeks so > we can gather data to make an informed determination. > > What do folks in the community think about this? > > Cheers, > David A >