Skip to content

Differentiate unit vs android test and don't affect android tests if only unit tests changed #1108

Differentiate unit vs android test and don't affect android tests if only unit tests changed

Differentiate unit vs android test and don't affect android tests if only unit tests changed #1108

Workflow file for this run

name: CI
on:
# Only run push on main
push:
branches:
- main
paths-ignore:
- '**/*.md'
# Always run on PRs
pull_request:
branches: [ main ]
merge_group:
concurrency:
group: 'ci-${{ github.event.merge_group.head_ref || github.head_ref }}-${{ github.workflow }}'
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Gradle Wrapper Validation
uses: gradle/wrapper-validation-action@v1
- name: Export JDK version
shell: bash
run: |
JDK_VERSION=$(grep "jdk =" gradle/libs.versions.toml | head -n 1 | cut -d'=' -f2 | tr -d '"' | xargs)
echo "JDK_VERSION=${JDK_VERSION}" >> $GITHUB_ENV
- name: Install JDK ${{ env.JDK_VERSION }}
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: '${{ env.JDK_VERSION }}'
- name: Build and run tests
id: gradle
uses: gradle/gradle-build-action@v2
with:
arguments: check --no-configuration-cache
- name: Print build scan url
if: always()
run: echo ${{ steps.gradle.outputs.build-scan-url }}
- name: (Fail-only) Upload build reports
if: failure()
uses: actions/upload-artifact@v3
with:
name: reports
path: |
**/build/reports/**
publish-snapshot:
name: 'Publish snapshot (main only)'
if: github.ref == 'refs/heads/main'
runs-on: ubuntu-latest
needs: 'build'
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Export JDK version
shell: bash
run: |
JDK_VERSION=$(grep "jdk =" gradle/libs.versions.toml | head -n 1 | cut -d'=' -f2 | tr -d '"' | xargs)
echo "JDK_VERSION=${JDK_VERSION}" >> $GITHUB_ENV
- name: Install JDK ${{ env.JDK_VERSION }}
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: '${{ env.JDK_VERSION }}'
- name: Publish snapshot
if: github.repository == 'slackhq/slack-gradle-plugin'
run: ./gradlew publish -PmavenCentralUsername=${{ secrets.SONATYPEUSERNAME }} -PmavenCentralPassword=${{ secrets.SONATYPEPASSWORD }} -x dokkaHtml