summaryrefslogtreecommitdiff
path: root/.github/workflows/build-simulator.yml
blob: 1bee19bc39b01fd9e55ef7bfb3f2af839c962f29 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
name: Build Simulator

on:
  pull_request:
    branches: [master]

defaults:
  run:
    working-directory: simulator

jobs:
  build:
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        os: [ubuntu-latest]
        java: [8, 15]
    steps:
      - name: Checkout repository
        uses: actions/checkout@v2
      - name: Validate Gradle wrapper
        uses: gradle/wrapper-validation-action@v1
      - name: Set up JDK
        uses: actions/setup-java@v1
        with:
          java-version: ${{ matrix.java }}
      - name: Grant execute permission for gradlew
        run: chmod +x gradlew
      - uses: actions/cache@v1
        with:
          path: ~/.gradle/caches
          key: ${{ runner.os }}-${{ matrix.java }}-gradle-${{ hashFiles('**/*.gradle*') }}
          restore-keys: |
            ${{ runner.os }}-${{ matrix.java }}-gradle-
      - name: Build with Gradle
        run: ./gradlew assemble
      - name: Check with Gradle
        run: ./gradlew check codeCoverageReport
      - name: Publish report
        if: always()
        uses: mikepenz/action-junit-report@v2
        with:
          check_name: test (Java ${{ matrix.java }})
          report_paths: '**/build/test-results/test/TEST-*.xml'
          github_token: ${{ secrets.GITHUB_TOKEN }}
      - name: Upload artifacts
        if: always()
        uses: actions/upload-artifact@v2
        with:
          name: reports-${{ matrix.os }}-jdk${{ matrix.java }}
          path: |
            ./**/build/reports/**/*
            ./**/build/test-results/**/*
          retention-days: 5
      - name: Upload code coverage
        uses: codecov/codecov-action@v1
        with:
          token: ${{ secrets.CODECOV_TOKEN }}
          files: ./simulator/build/reports/jacoco/report.xml
          flags: simulator