Skip to content

Commit 7bf20cf

Browse files
committed
Move steps for preparing a Gradle build into a reusable action
Closes gh-40443
1 parent 67fb115 commit 7bf20cf

File tree

2 files changed

+44
-25
lines changed

2 files changed

+44
-25
lines changed

.github/actions/build/action.yml

+4-25
Original file line numberDiff line numberDiff line change
@@ -32,32 +32,11 @@ outputs:
3232
runs:
3333
using: composite
3434
steps:
35-
- name: Set Up Java
36-
uses: actions/setup-java@v4
35+
- name: Prepare Gradle Build
36+
uses: ./.github/actions/prepare-gradle-build
3737
with:
38-
distribution: 'liberica'
39-
java-version: |
40-
${{ inputs.java-version }}
41-
${{ inputs.java-toolchain && '17' || '' }}
42-
- name: Set Up Gradle
43-
uses: gradle/actions/setup-gradle@6cec5d49d4d6d4bb982fbed7047db31ea6d38f11 #v3.3.0
44-
with:
45-
cache-read-only: false
46-
- name: Configure Gradle Properties
47-
shell: bash
48-
run: |
49-
mkdir -p $HOME/.gradle
50-
echo 'systemProp.user.name=spring-builds+github' >> $HOME/.gradle/gradle.properties
51-
echo 'systemProp.org.gradle.internal.launcher.welcomeMessageEnabled=false' >> $HOME/.gradle/gradle.properties
52-
echo 'org.gradle.daemon=false' >> $HOME/.gradle/gradle.properties
53-
- name: Configure Toolchain Properties
54-
if: ${{ inputs.java-toolchain }}
55-
shell: bash
56-
run: |
57-
echo toolchainVersion=${{ inputs.java-version }} >> $HOME/.gradle/gradle.properties
58-
echo systemProp.org.gradle.java.installations.auto-detect=false >> $HOME/.gradle/gradle.properties
59-
echo systemProp.org.gradle.java.installations.auto-download=false >> $HOME/.gradle/gradle.properties
60-
echo systemProp.org.gradle.java.installations.paths=${{ format('$JAVA_HOME_{0}_X64', inputs.java-version) }} >> $HOME/.gradle/gradle.properties
38+
java-version: ${{ inputs.java-version }}
39+
java-toolchain: ${{ inputs.java-toolchain }}
6140
- name: Build
6241
id: build
6342
if: ${{ !inputs.publish }}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
name: 'Prepare Gradle Build'
2+
description: 'Prepares a Gradle build. Sets up Java and Gradle and configures Gradle properties'
3+
inputs:
4+
java-version:
5+
required: false
6+
default: '17'
7+
description: 'The Java version to use for the build'
8+
java-toolchain:
9+
required: false
10+
default: false
11+
description: 'Whether a Java toolchain should be used'
12+
runs:
13+
using: composite
14+
steps:
15+
- name: Set Up Java
16+
uses: actions/setup-java@v4
17+
with:
18+
distribution: 'liberica'
19+
java-version: |
20+
${{ inputs.java-version }}
21+
${{ inputs.java-toolchain && '17' || '' }}
22+
- name: Set Up Gradle
23+
uses: gradle/actions/setup-gradle@6cec5d49d4d6d4bb982fbed7047db31ea6d38f11 #v3.3.0
24+
with:
25+
cache-read-only: false
26+
- name: Configure Gradle Properties
27+
shell: bash
28+
run: |
29+
mkdir -p $HOME/.gradle
30+
echo 'systemProp.user.name=spring-builds+github' >> $HOME/.gradle/gradle.properties
31+
echo 'systemProp.org.gradle.internal.launcher.welcomeMessageEnabled=false' >> $HOME/.gradle/gradle.properties
32+
echo 'org.gradle.daemon=false' >> $HOME/.gradle/gradle.properties
33+
- name: Configure Toolchain Properties
34+
if: ${{ inputs.java-toolchain }}
35+
shell: bash
36+
run: |
37+
echo toolchainVersion=${{ inputs.java-version }} >> $HOME/.gradle/gradle.properties
38+
echo systemProp.org.gradle.java.installations.auto-detect=false >> $HOME/.gradle/gradle.properties
39+
echo systemProp.org.gradle.java.installations.auto-download=false >> $HOME/.gradle/gradle.properties
40+
echo systemProp.org.gradle.java.installations.paths=${{ format('$JAVA_HOME_{0}_X64', inputs.java-version) }} >> $HOME/.gradle/gradle.properties

0 commit comments

Comments
 (0)