This directory contains GitHub-specific configuration files for the Android Fourteeners project.
- Purpose: Security and quality analysis for Java/Kotlin code
- Trigger: Push/PR to main branches, weekly schedule
- Key Features:
- Sets up JDK 17 for Android compatibility
- Builds the project before analysis (required for compiled languages)
- Analyzes Java/Kotlin code for security vulnerabilities
- Purpose: Continuous integration for Android app
- Trigger: Push/PR to main branches
- Jobs:
- Build and Test: Runs on Ubuntu, includes lint, unit tests, and APK builds
- Instrumented Tests: Runs on macOS with Android emulator (API 33 only)
- Artifacts: Uploads build reports and APKs
- Gradle Dependencies: Weekly updates on Mondays
- GitHub Actions: Monthly updates
- Target Branch:
developfor testing before merging to main - Auto-labels: Adds appropriate labels for easy filtering
- Automatically requests reviews from designated owners
- Covers all major areas: docs, app code, build config, scripts
- Standardized PR format
- Includes testing checklist
- Mountain-themed optional section for fun
- Bug Report (
ISSUE_TEMPLATE/bug_report.md): Structured bug reporting with device info - Feature Request (
ISSUE_TEMPLATE/feature_request.md): Feature proposals with use cases
All workflows should run automatically once pushed to GitHub. No additional setup required except:
- Ensure repository has appropriate permissions for workflows
- Enable Dependabot in repository settings if not auto-enabled
- Configure branch protection rules as desired
Add these badges to your main README if desired:
[](https://github.com/chris-piekarski/android-fourteeners/actions/workflows/codeql.yml)
[](https://github.com/chris-piekarski/android-fourteeners/actions/workflows/android-ci.yml)This configuration uses the latest stable versions of GitHub Actions:
actions/checkout@v4actions/setup-java@v4actions/upload-artifact@v4actions/cache@v4gradle/wrapper-validation-action@v2github/codeql-action/init@v3github/codeql-action/analyze@v3reactivecircus/android-emulator-runner@v2android-actions/setup-android@v3
- Ensure JDK 17 is being used (required for Android Gradle Plugin)
- Check that
./gradlew buildcompletes successfully locally - Verify gradle wrapper is committed and executable
- Emulator tests require macOS runners (hardware acceleration)
- Tests run on API level 33 only (Android 13)
- Ensure your app is compatible with API 33
- Timeout issues may require increasing the timeout value
- Emulator optimizations added to reduce flakiness
- Ensure
developbranch exists if configured as target - Check for conflicting dependencies that can't auto-merge
- Review security alerts separately from version updates
- We use
upload-artifact@v4to avoid deprecation warnings - Note that v4 has breaking changes from v3 (artifacts don't persist between workflow runs)