Labels: ci, dx, priority: medium
Summary
The repository root contains .gitlab-ci.yml — a GitLab CI pipeline definition — but the project is hosted, developed, and receiving PRs on GitHub. There is no .github/workflows/ CI pipeline present. This means:
- Every PR merged into
main on GitHub runs zero automated checks: no compilation verification, no detekt lint, no unit tests, nothing.
- Contributors cannot know whether their change compiles cleanly before the maintainer manually reviews it.
- The existing
config/detekt/ directory and benchmark/ directory confirm the project has static analysis and performance benchmarks set up — but neither is wired into any automated check on the GitHub side.
The .gitlab-ci.yml is dead code from a development environment that is no longer the canonical hosting location, and its presence actively misleads contributors into thinking CI is running when it is not.
Proposed solution
- Add a
.github/workflows/ci.yml GitHub Actions workflow that runs on every PR targeting main, executing at minimum:
./gradlew :app:compilePlayDebugKotlin — compile check
./gradlew detekt — static analysis via the existing config/detekt/ config
./gradlew :app:testPlayDebugUnitTest — unit tests
- Use
actions/setup-java with JDK 17 (per the documented build requirement) and cache the Gradle wrapper and dependencies via actions/cache to keep CI runtimes under 5 minutes.
- Either remove
.gitlab-ci.yml or explicitly document it as a legacy file in a comment at its top, so contributors aren't confused about which CI system is authoritative.
I'd like to be assigned this issue. I can have a working GitHub Actions workflow PR ready within 2 days.
Labels: ci, dx, priority: medium
Summary
The repository root contains
.gitlab-ci.yml— a GitLab CI pipeline definition — but the project is hosted, developed, and receiving PRs on GitHub. There is no.github/workflows/CI pipeline present. This means:mainon GitHub runs zero automated checks: no compilation verification, no detekt lint, no unit tests, nothing.config/detekt/directory andbenchmark/directory confirm the project has static analysis and performance benchmarks set up — but neither is wired into any automated check on the GitHub side.The
.gitlab-ci.ymlis dead code from a development environment that is no longer the canonical hosting location, and its presence actively misleads contributors into thinking CI is running when it is not.Proposed solution
.github/workflows/ci.ymlGitHub Actions workflow that runs on every PR targetingmain, executing at minimum:./gradlew :app:compilePlayDebugKotlin— compile check./gradlew detekt— static analysis via the existingconfig/detekt/config./gradlew :app:testPlayDebugUnitTest— unit testsactions/setup-javawith JDK 17 (per the documented build requirement) and cache the Gradle wrapper and dependencies viaactions/cacheto keep CI runtimes under 5 minutes..gitlab-ci.ymlor explicitly document it as a legacy file in a comment at its top, so contributors aren't confused about which CI system is authoritative.I'd like to be assigned this issue. I can have a working GitHub Actions workflow PR ready within 2 days.