From f4237ddfc51f8f1c265d5a62a7221faebff2356d Mon Sep 17 00:00:00 2001
From: Felipe Zorzo <felipe.b.zorzo@gmail.com>
Date: Tue, 30 Jan 2024 19:44:02 -0300
Subject: [PATCH] build: Update GitHub Actions to use newer versions and revise
 build commands

---
 .github/workflows/build.yml | 50 ++++++++++++++++---------------------
 1 file changed, 22 insertions(+), 28 deletions(-)

diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index b97ee775..7099c7df 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -20,82 +20,76 @@ jobs:
           - LATEST_RELEASE
           - DEV
     steps:
-      - uses: actions/checkout@v3
+      - uses: actions/checkout@v4
         with:
           submodules: true
 
-      - uses: actions/setup-java@v3
+      - uses: actions/setup-java@v4
         with:
           distribution: temurin
           java-version: |
             11
             17
 
+      - name: Setup Gradle
+        uses: gradle/actions/setup-gradle@v3
+
       - name: Build with Gradle
-        uses: gradle/gradle-build-action@v2
-        with:
-          arguments: build publishToMavenLocal --refresh-dependencies
+        run: ./gradlew build publishToMavenLocal --refresh-dependencies
 
       - name: Build custom rules example
-        uses: gradle/gradle-build-action@v2
-        with:
-          arguments: build
-          build-root-directory: plsql-custom-rules
+        run: ./gradlew build -p plsql-custom-rules
 
       - name: Run integration test
-        uses: gradle/gradle-build-action@v2
-        with:
-          arguments: integrationTest -Dsonar.runtimeVersion=${{ matrix.sqVersion }} --info
+        run: ./gradlew integrationTest -Dsonar.runtimeVersion=${{ matrix.sqVersion }} --info
 
   windows-build:
     name: Test on Windows
     runs-on: windows-latest
     steps:
-      - uses: actions/checkout@v3
+      - uses: actions/checkout@v4
 
-      - uses: actions/setup-java@v3
+      - uses: actions/setup-java@v4
         with:
           distribution: temurin
           java-version: 11
 
+      - name: Setup Gradle
+        uses: gradle/actions/setup-gradle@v3
+
       - name: Build with Gradle
-        uses: gradle/gradle-build-action@v2
-        with:
-          arguments: test
+        run: ./gradlew test
 
   linux-build:
     name: Build and release
     needs: [integration-tests, windows-build]
     runs-on: ubuntu-latest
     steps:
-      - uses: actions/checkout@v3
+      - uses: actions/checkout@v4
         with:
           fetch-depth: 0
 
-      - uses: actions/setup-java@v3
+      - uses: actions/setup-java@v4
         with:
           distribution: temurin
           java-version: 11
 
+      - name: Setup Gradle
+        uses: gradle/actions/setup-gradle@v3
+
       - name: Build with Gradle
-        uses: gradle/gradle-build-action@v2
-        with:
-          arguments: build --refresh-dependencies
+        run: ./gradlew build --refresh-dependencies
 
       - if: github.ref == 'refs/heads/main'
         name: Run SonarQube Scanner
-        uses: gradle/gradle-build-action@v2
-        with:
-          arguments: sonar
+        run: ./gradlew sonar
         env:
           SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
           SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }}
 
       - if: github.ref == 'refs/heads/main'
         name: Release artifacts
-        uses: gradle/gradle-build-action@v2
-        with:
-          arguments: publish jreleaserFullRelease
+        run: ./gradlew publish jreleaserFullRelease
         env:
           OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }}
           OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}