name: gradle-ci on: [ push, pull_request, workflow_dispatch ] jobs: build: runs-on: ubuntu-latest env: GRADLE_OPTS: "-Dorg.gradle.jvmargs=-XX:MaxMetaspaceSize=512m" SONAR_JDK: "11" strategy: matrix: java-version: [ 11, 18 ] steps: - uses: actions/checkout@v3 with: fetch-depth: 0 - name: Set up JDK ${{ matrix.java-version }} uses: actions/setup-java@v3 with: distribution: 'zulu' java-version: ${{ matrix.java-version }} - name: Grant execute permission for gradlew run: chmod +x gradlew - name: Cache SonarCloud packages if: matrix.java-version == env.SONAR_JDK uses: actions/cache@v3 with: path: ~/.sonar/cache key: ${{ runner.os }}-sonar restore-keys: ${{ runner.os }}-sonar - name: Test with Gradle uses: gradle/gradle-build-action@v2 env: CI_NAME: "GitHub CI" ALPHAVANTAGE_API_KEY: ${{ secrets.ALPHAVANTAGE_API_KEY }} CHATGPT_API_KEY: ${{ secrets.CHATGPT_API_KEY }} OWM_API_KEY: ${{ secrets.OWM_API_KEY }} PINBOARD_API_TOKEN: ${{ secrets.PINBOARD_API_TOKEN }} TWITTER_CONSUMERKEY: ${{ secrets.TWITTER_CONSUMERKEY }} TWITTER_CONSUMERSECRET: ${{ secrets.TWITTER_CONSUMERSECRET }} TWITTER_HANDLE: ${{ secrets.TWITTER_HANDLE }} TWITTER_TOKEN: ${{ secrets.TWITTER_TOKEN }} TWITTER_TOKENSECRET: ${{ secrets.TWITTER_TOKENSECRET }} MASTODON_ACCESS_TOKEN: ${{ secrets.MASTODON_ACCESS_TOKEN }} MASTODON_HANDLE: ${{ secrets.MASTODON_HANDLE }} MASTODON_INSTANCE: ${{ secrets.MASTODON_INSTANCE }} with: arguments: build check --stacktrace - name: SonarCloud if: success() && matrix.java-version == env.SONAR_JDK env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} run: ./gradlew sonar