THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
- Apache Kafka is using gradle
- Apache Beam migrated from Maven to grade by having both build systems side-by-side during the transition
- gradle supports Kotlin (as an alternative to Groovy) for the build scripts, but Kotlin support is new and has potential limitations
- Arvid Heise is willing to support a POC
- ~1 week for PoC (some modules only, not all problems solved)
- POC must cover CI as well
- Problems to solve
- Shading & layered shading
- Inclusion of NOTICE files into the final build (producing valid Apache releases in general)
- Support for mixed scala / java projects
- Javadocs for mixed scala / java projects
- Java 9+ support
- API compatibility checks
- checkstyle
- ensuring dependency convergence
- unclear whether we can use Gradle Enterprise build cache for free as open source, and how it works over the public internet (in a secure way)
...
- Travis future is uncertain due to company ownership changes
- Travis build caches are unreliable / used in a hacky way
- Travis only provides a build environment with 2cpu, 7.5g (where a build currently needs 3.5hrs). Other vendors provide bigger build instances, where the build can finish in ~1.3hrs
- Travis provides bigger build environments in paid plans.
Move to another hosted CI service (Solution 6)
...
- Azure Pipelines (recommended by community)
- 10 instances (6 hours each on a 2 cores, 7gb machine)
- Open source projects can add an unlimited number of self-hosted "worker" machines
- Artefact caching is in preview only: https://docs.microsoft.com/en-us/azure/devops/pipelines/caching/?view=azure-devops
- Requires write access to the apache/flink GH repo, which Apache does not allow:
Jira server ASF JIRA serverId 5aa69414-a9e9-3523-82ec-879b028fb15b key INFRA-17030
- GitHub CI
- Closed Beta
- Seems to be based on AZ Pipelines
- Circle CI
Paid options:
- Google Cloud Build
- 32 core builders (at a high price tag (almost 4x over the compute instances' price))
...