name: PR build check on: pull_request: jobs: check_wrapper: name: Validate Gradle Wrapper runs-on: ubuntu-latest steps: - name: Clone repo uses: actions/checkout@v2 - name: Validate Gradle Wrapper uses: gradle/wrapper-validation-action@v1 build_multisrc: name: Build multisrc modules needs: check_wrapper runs-on: ubuntu-latest strategy: matrix: lang: [all, en, ar, ca, de, es, fr, id, it, ja, ko, pt, ru, th, tr, vi, zh, bg, hi, pl] steps: - name: Checkout PR uses: actions/checkout@v2 - name: Set up JDK uses: actions/setup-java@v1 with: java-version: 1.8 - name: Copy CI gradle.properties run: | mkdir -p ~/.gradle cp .github/runner-files/ci-gradle.properties ~/.gradle/gradle.properties - name: Generate sources from the multi-source library uses: eskatos/gradle-command-action@v1 env: CI_MULTISRC: "true" with: arguments: :multisrc:generateExtensions wrapper-cache-enabled: true dependencies-cache-enabled: true configuration-cache-enabled: true - name: Build "${{ matrix.lang }}" extensions uses: eskatos/gradle-command-action@v1 env: CI_MULTISRC: "true" CI_MATRIX_LANG: ${{ matrix.lang }} with: arguments: assembleRelease wrapper-cache-enabled: true dependencies-cache-enabled: true configuration-cache-enabled: true build_individual: name: Build individual modules needs: check_wrapper runs-on: ubuntu-latest strategy: matrix: lang: [all, en, ar, ca, de, es, fr, id, it, ja, ko, pt, ru, th, tr, vi, zh, bg, hi, pl] steps: - name: Checkout PR uses: actions/checkout@v2 - name: Set up JDK uses: actions/setup-java@v1 with: java-version: 1.8 - name: Copy CI gradle.properties run: | mkdir -p ~/.gradle cp .github/runner-files/ci-gradle.properties ~/.gradle/gradle.properties - name: Build "${{ matrix.lang }}" extensions uses: eskatos/gradle-command-action@v1 env: CI_MULTISRC: "false" CI_MATRIX_LANG: ${{ matrix.lang }} with: arguments: assembleRelease wrapper-cache-enabled: true dependencies-cache-enabled: true configuration-cache-enabled: true