Skip to content

Commit

Permalink
Use Gradle Build Action (#2750)
Browse files Browse the repository at this point in the history
Additionally, this commit adds build scan tags to all main builds.
  • Loading branch information
marcphilipp committed Oct 24, 2021
1 parent 7994e00 commit ba04cd6
Show file tree
Hide file tree
Showing 6 changed files with 69 additions and 42 deletions.
14 changes: 9 additions & 5 deletions .github/workflows/codeql-analysis.yml
Expand Up @@ -28,15 +28,19 @@ jobs:
with:
distribution: 'temurin'
java-version: '17'
cache: 'gradle'
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
with:
languages: ${{ matrix.language }}
- name: Build
run: |
./gradlew --version
./gradlew javaToolchains -Porg.gradle.java.installations.auto-download=false
./gradlew --no-build-cache allMainClasses -PjavaToolchainVersion=11 -Porg.gradle.java.installations.auto-download=false
uses: gradle/gradle-build-action@v2
with:
arguments: |
--no-build-cache
-Porg.gradle.java.installations.auto-download=false
-PjavaToolchainVersion=11
-Dscan.tag.CodeQL
javaToolchains
allMainClasses
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
17 changes: 10 additions & 7 deletions .github/workflows/cross-version.yml
Expand Up @@ -10,6 +10,7 @@ on:
- '*'

env:
ORG_GRADLE_PROJECT_enableTestDistribution: true
ORG_GRADLE_PROJECT_junitBuildCacheUsername: ${{ secrets.BUILD_CACHE_USERNAME }}
ORG_GRADLE_PROJECT_junitBuildCachePassword: ${{ secrets.BUILD_CACHE_PASSWORD }}
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
Expand Down Expand Up @@ -52,14 +53,16 @@ jobs:
with:
distribution: 'temurin'
java-version: '17'
cache: 'gradle'
- name: Test
env:
ORG_GRADLE_PROJECT_enableTestDistribution: true
run: |
./gradlew --version
./gradlew javaToolchains -Porg.gradle.java.installations.auto-download=false
./gradlew --no-parallel -Dplatform.tooling.support.tests.enabled=true -PjavaToolchainVersion=${{ matrix.jdk }} -Porg.gradle.java.installations.auto-download=false build "-Dscan.tag.JDK_${{ matrix.jdk }}"
uses: gradle/gradle-build-action@v2
with:
arguments: |
-Porg.gradle.java.installations.auto-download=false
-PjavaToolchainVersion=${{ matrix.jdk }}
-Dplatform.tooling.support.tests.enabled=true
-Dscan.tag.JDK_${{ matrix.jdk }}
javaToolchains
build
- name: Upload Test Distribution trace files
uses: actions/upload-artifact@v2
with:
Expand Down
68 changes: 42 additions & 26 deletions .github/workflows/main.yml
Expand Up @@ -10,6 +10,7 @@ on:
- '*'

env:
ORG_GRADLE_PROJECT_enableTestDistribution: true
ORG_GRADLE_PROJECT_junitBuildCacheUsername: ${{ secrets.BUILD_CACHE_USERNAME }}
ORG_GRADLE_PROJECT_junitBuildCachePassword: ${{ secrets.BUILD_CACHE_PASSWORD }}
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
Expand All @@ -36,14 +37,17 @@ jobs:
with:
distribution: 'temurin'
java-version: '17'
cache: 'gradle'
- name: Test and coverage
env:
ORG_GRADLE_PROJECT_enableTestDistribution: true
run: |
./gradlew --version
./gradlew javaToolchains -Porg.gradle.java.installations.auto-download=false
./gradlew --no-parallel --stacktrace -Dplatform.tooling.support.tests.enabled=true -PenableJaCoCo -Porg.gradle.java.installations.auto-download=false build jacocoRootReport
uses: gradle/gradle-build-action@v2
with:
arguments: |
-Porg.gradle.java.installations.auto-download=false
-PenableJaCoCo
-Dplatform.tooling.support.tests.enabled=true
-Dscan.tag.Linux
javaToolchains
build
jacocoRootReport
- name: Upload Test Distribution trace files
uses: actions/upload-artifact@v2
with:
Expand Down Expand Up @@ -72,14 +76,15 @@ jobs:
with:
distribution: 'temurin'
java-version: '17'
cache: 'gradle'
- name: Test
shell: bash
run: |
./gradlew --version
./gradlew javaToolchains -Porg.gradle.java.installations.auto-download=false
./gradlew --no-parallel --stacktrace -Dplatform.tooling.support.tests.enabled=true -Porg.gradle.java.installations.auto-download=false build
./gradlew --stop
uses: gradle/gradle-build-action@v2
with:
arguments: |
-Porg.gradle.java.installations.auto-download=false
-Dplatform.tooling.support.tests.enabled=true
-Dscan.tag.Windows
javaToolchains
build
mac:
name: Mac OS
Expand All @@ -101,12 +106,15 @@ jobs:
with:
distribution: 'temurin'
java-version: '17'
cache: 'gradle'
- name: 'Test'
run: |
./gradlew --version
./gradlew javaToolchains -Porg.gradle.java.installations.auto-download=false
./gradlew --no-parallel --stacktrace -Dplatform.tooling.support.tests.enabled=true -Porg.gradle.java.installations.auto-download=false build
- name: Test
uses: gradle/gradle-build-action@v2
with:
arguments: |
-Porg.gradle.java.installations.auto-download=false
-Dplatform.tooling.support.tests.enabled=true
-Dscan.tag.macOS
javaToolchains
build
publish_artifacts:
name: Publish Snapshot Artifacts
Expand All @@ -122,14 +130,18 @@ jobs:
with:
distribution: 'temurin'
java-version: '17'
cache: 'gradle'
- name: Publish
uses: gradle/gradle-build-action@v2
env:
ORG_GRADLE_PROJECT_sonatypeUsername: ${{ secrets.SONATYPE_USERNAME }}
ORG_GRADLE_PROJECT_sonatypePassword: ${{ secrets.SONATYPE_PASSWORD }}
run: |
./gradlew javaToolchains -Porg.gradle.java.installations.auto-download=false
./gradlew publish -x check -Porg.gradle.java.installations.auto-download=false
with:
arguments: |
-Porg.gradle.java.installations.auto-download=false
-Dscan.tag.Snapshots
javaToolchains
publish
-x check
update_documentation:
name: Update Snapshot Documentation
Expand All @@ -145,13 +157,17 @@ jobs:
with:
distribution: 'temurin'
java-version: '17'
cache: 'gradle'
- name: Install Graphviz
run: |
sudo apt-get update
sudo apt-get install graphviz
- name: Restore Gradle cache and display toolchains
uses: gradle/gradle-build-action@v2
with:
arguments: |
-Porg.gradle.java.installations.auto-download=false
javaToolchains
- name: Upload Documentation
env:
GRGIT_USER: ${{ secrets.GH_TOKEN }}
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
run: ./src/publishDocumentationSnapshotOnlyIfNecessary.sh
8 changes: 6 additions & 2 deletions .github/workflows/reproducible-build.yml
Expand Up @@ -25,9 +25,13 @@ jobs:
with:
distribution: 'temurin'
java-version: '17'
cache: 'gradle'
- name: Restore Gradle cache and display toolchains
uses: gradle/gradle-build-action@v2
with:
arguments: |
-Porg.gradle.java.installations.auto-download=false
javaToolchains
- name: Build and compare checksums
shell: bash
run: |
./gradlew javaToolchains -Porg.gradle.java.installations.auto-download=false
./src/checkBuildReproducibility.sh
2 changes: 1 addition & 1 deletion src/checkBuildReproducibility.sh
Expand Up @@ -7,7 +7,7 @@ export SOURCE_DATE_EPOCH=$(date +%s)
function calculate_checksums() {
OUTPUT=$1

./gradlew --no-build-cache clean assemble --parallel -Porg.gradle.java.installations.auto-download=false
./gradlew --no-build-cache clean assemble --parallel -Porg.gradle.java.installations.auto-download=false -Dscan.tag.Reproducibility

find . -name '*.jar' \
| grep '/build/libs/' \
Expand Down
2 changes: 1 addition & 1 deletion src/publishDocumentationSnapshotOnlyIfNecessary.sh
Expand Up @@ -58,5 +58,5 @@ else
echo "Creating and publishing documentation..."
echo
cp --force "${current}" "${published}"
./gradlew javaToolchains gitPublishPush -Porg.gradle.java.installations.auto-download=false
./gradlew gitPublishPush -Porg.gradle.java.installations.auto-download=false -Dscan.tag.Documentation
fi

0 comments on commit ba04cd6

Please sign in to comment.