name: ci on: [ push, pull_request ] jobs: check: runs-on: macos-latest steps: - uses: actions/checkout@v2 - uses: actions/cache@v1 with: path: ~/.gradle/wrapper key: ${{ runner.os }}-gradle-wrapper-${{ hashFiles('gradle/wrapper/gradle-wrapper.*') }} restore-keys: | ${{ runner.os }}-gradle-wrapper- - uses: actions/cache@v1 with: path: ~/.gradle/caches key: ${{ runner.os }}-gradle-caches-${{ hashFiles('**/*.gradle.kts') }}-${{ hashFiles('buildSrc/src/main/kotlin/Versions.kt') }} restore-keys: | ${{ runner.os }}-gradle-caches- - uses: actions/setup-java@v1 with: java-version: 1.8 - run: ./gradlew check publish: needs: check if: github.ref == 'refs/heads/master' && github.event_name == 'push' && needs.check.result == 'success' runs-on: macos-latest steps: - uses: actions/checkout@v2 - uses: actions/cache@v1 with: path: ~/.gradle/wrapper key: ${{ runner.os }}-gradle-wrapper-${{ hashFiles('gradle/wrapper/gradle-wrapper.*') }} restore-keys: | ${{ runner.os }}-gradle-wrapper- - uses: actions/cache@v1 with: path: ~/.gradle/caches key: ${{ runner.os }}-gradle-caches-${{ hashFiles('**/*.gradle.kts') }}-${{ hashFiles('buildSrc/src/main/kotlin/Versions.kt') }} restore-keys: | ${{ runner.os }}-gradle-caches- - uses: actions/setup-java@v1 with: java-version: 1.8 - run: ./gradlew publish env: ORG_GRADLE_PROJECT_ossrhUsername: ${{ secrets.OSSRH_USERNAME }} ORG_GRADLE_PROJECT_ossrhPassword: ${{ secrets.OSSRH_PASSWORD }} ORG_GRADLE_PROJECT_signingKeyId: ${{ secrets.SIGNING_KEY_ID }} ORG_GRADLE_PROJECT_signingKey: ${{ secrets.SIGNING_KEY }} ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.SIGNING_PASSWORD }}