Skip to content

Merge pull request #668 from usefulness/renovate/com.project.starter-… #1847

Merge pull request #668 from usefulness/renovate/com.project.starter-…

Merge pull request #668 from usefulness/renovate/com.project.starter-… #1847

Workflow file for this run

name: Build project
on:
pull_request:
branches:
- master
push:
branches:
- master
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 21
- name: Write Gradle build properties to `~/.gradle/gradle.properties`
run: |
mkdir -p ~/.gradle
printf "org.gradle.jvmargs=-Xmx3G -XX:+UseParallelGC\n" >> ~/.gradle/gradle.properties
shell: bash
- uses: gradle/actions/setup-gradle@v4
- run: ./gradlew projectCodestyle
- run: ./gradlew assemble
- run: ./gradlew check
- run: ./gradlew projectCoverage
- name: Upload test results
if: ${{ always() }}
uses: actions/upload-artifact@v4
with:
name: test-results
path: "${{ github.workspace }}/**/build/reports/tests"
- name: Upload jacoco report
uses: actions/upload-artifact@v4
with:
name: jacoco-report
path: "${{ github.workspace }}/**/build/reports/jacoco"
- run: ./gradlew publishToMavenLocal
- run: ./gradlew publishPlugins -m
- run: git diff --exit-code
- name: Publish to Github Package Registry
run: ./gradlew publish --continue
if: github.repository == 'usefulness/easylauncher-gradle-plugin' && github.event_name == 'push'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
build-all-sample-apps:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
javaVersion: [ 17, 21 ]
gradle: [ release-candidate ]
agp: [ alpha, beta, stable ]
include:
- javaVersion: 17
gradle: "8.2.1"
agp: 8.2.2
- javaVersion: 17
gradle: current
agp: 8.2.2
- javaVersion: 19
gradle: current
agp: 8.2.2
- javaVersion: 21
gradle: current
agp: stable
name: Run Gradle-${{ matrix.gradle }}, AGP-${{ matrix.agp }}, Java-${{ matrix.javaVersion }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: ${{ matrix.javaVersion }}
- name: Write Gradle build properties to `~/.gradle/gradle.properties`
run: |
mkdir -p ~/.gradle
printf "org.gradle.jvmargs=-Xmx3G -XX:+UseParallelGC\n" >> ~/.gradle/gradle.properties
shell: bash
- uses: gradle/actions/setup-gradle@v4
- name: Pre-compile plugin
run: ./gradlew publishToMavenLocal -Pgroup=com.project.starter.local
- id: agp-version-finder
uses: usefulness/agp-version-finder-action@v1
with:
version-to-resolve: ${{ matrix.agp }}
- uses: gradle/actions/setup-gradle@v4
with:
gradle-version: ${{ matrix.gradle }}
- run: gradle assemble lint -PuseMavenLocal -PagpVersion=${{ steps.agp-version-finder.outputs.resolved-version }}
working-directory: sample
build-sample-apps-with-configuration-cache:
runs-on: ${{ matrix.os }}
name: Configuration Cache Java-${{ matrix.javaVersion }} OS-${{ matrix.os }}
strategy:
fail-fast: false
matrix:
javaVersion: [ 17, 21 ]
os: [ ubuntu-latest, windows-latest, macos-latest ]
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: ${{ matrix.javaVersion }}
- name: Write Gradle build properties to `~/.gradle/gradle.properties`
run: |
mkdir -p ~/.gradle
printf "org.gradle.jvmargs=-Xmx3G -XX:+UseParallelGC\n" >> ~/.gradle/gradle.properties
shell: bash
- uses: gradle/actions/setup-gradle@v4
with:
gradle-version: current
- run: gradle assembleDebug --configuration-cache
working-directory: sample
icons-test:
runs-on: ubuntu-latest
strategy:
matrix:
apiVersion: [ 28 ]
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 21
- name: Write Gradle build properties to `~/.gradle/gradle.properties`
run: |
mkdir -p ~/.gradle
printf "org.gradle.jvmargs=-Xmx3G -XX:+UseParallelGC\n" >> ~/.gradle/gradle.properties
shell: bash
- uses: gradle/actions/setup-gradle@v4
- name: Enable KVM group perms
run: |
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
sudo udevadm control --reload-rules
sudo udevadm trigger --name-match=kvm
- name: run tests
uses: reactivecircus/android-emulator-runner@v2
with:
api-level: ${{ matrix.apiVersion }}
profile: pixel_xl
target: google_apis
arch: x86
disable-spellchecker: true
working-directory: ./sample
script: ./icon_check.sh
- name: Upload failed screenshots
if: ${{ failure() }}
uses: actions/upload-artifact@v4
with:
name: failedScreenshots
path: "**/reports/failedScreenshots"
- name: Upload failed screenshots
if: ${{ failure() }}
uses: actions/upload-artifact@v4
with:
name: tests
path: "**/reports/androidTests"
- name: Upload screenshot tests result
uses: actions/upload-artifact@v4
if: ${{ always() }}
with:
name: screenshots
path: "**/reports/screenshots**AndroidTest*/"