diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml new file mode 100644 index 0000000..0ad2dfd --- /dev/null +++ b/.github/workflows/gradle.yml @@ -0,0 +1,75 @@ +name: Java CI +on: + push: + branches: + - '[4-9]+.[0-9]+.x' + pull_request: + branches: + - '[4-9]+.[0-9]+.x' + workflow_dispatch: +jobs: + build: + runs-on: ubuntu-latest + strategy: + matrix: + java: ['8'] + env: + WORKSPACE: ${{ github.workspace }} + GRADLE_OPTS: -Xmx1500m -Dfile.encoding=UTF-8 + steps: + - name: Print Dispatch Information + if: github.event_name == 'workflow_dispatch' + env: + DISPATCH_INFORMATION: ${{ github.event.inputs.message }} + run: echo $DISPATCH_INFORMATION + - uses: actions/checkout@v3 + - name: Set up JDK + uses: actions/setup-java@v3 + with: + distribution: 'adopt' + java-version: ${{ matrix.java }} + - name: Run Tests + if: github.event_name == 'pull_request' + id: tests + uses: gradle/gradle-build-action@v2 + with: + arguments: check -Dgeb.env=chromeHeadless + - name: Run Build + if: github.event_name == 'push' + id: build + uses: gradle/gradle-build-action@v2 + env: + GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }} + with: + arguments: build + - name: Publish Test Report + if: steps.build.outcome == 'failure' || steps.tests.outcome == 'failure' + uses: scacap/action-surefire-report@v1 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + report_paths: '**/build/test-results/test/TEST-*.xml' + - name: Publish to repo.grails.org + uses: gradle/gradle-build-action@v2 + if: steps.build.outcome == 'success' && github.event_name == 'push' && matrix.java == '8' + env: + ARTIFACTORY_USERNAME: ${{ secrets.ARTIFACTORY_USERNAME }} + ARTIFACTORY_PASSWORD: ${{ secrets.ARTIFACTORY_PASSWORD }} + with: + arguments: publish + - name: Generate Documentation + id: docs + uses: gradle/gradle-build-action@v2 + if: success() && github.event_name == 'push' && matrix.java == '8' + with: + arguments: docs + - name: Publish to Github Pages + if: steps.publish.outcome == 'success' && github.event_name == 'push' && matrix.java == '8' + uses: micronaut-projects/github-pages-deploy-action@grails + env: + TARGET_REPOSITORY: ${{ github.repository }} + GH_TOKEN: ${{ secrets.GH_TOKEN }} + BRANCH: gh-pages + FOLDER: build/docs + DOC_FOLDER: gh-pages + COMMIT_EMAIL: behlp@objectcomputing.com + COMMIT_NAME: Puneet Behl \ No newline at end of file