2929 JAVA_HOME : " /usr/lib/jvm/default-jdk"
3030 steps :
3131 - uses : actions/checkout@v4
32- - name : Install System Dependencies
33- run : apt-get -qq update && apt-get -qq install -y make curl wget libjemalloc2 libjemalloc-dev
34- - name : Cache JDK
35- id : cache-jdk
36- uses : actions/cache@v4
37- continue-on-error : true
38- with :
39- path : /usr/lib/jvm/default-jdk/
40- key : ${{ runner.os }}-jdk-${{ matrix.jdk_vendor }}-${{ hashFiles('/usr/lib/jvm/default-jdk/*') }}
41- restore-keys : |
42- ${{ runner.os }}-jdk-
43- - name : Install JDK
44- if : steps.cache-jdk.outputs.cache-hit != 'true'
45- run : " bash -xc 'JDK_VENDOR=${{ matrix.jdk_vendor }} ./docker/install_jdk.sh'"
46- # TODO: not using setup-java since incompatible with the swiftlang/swift base image
47- # - name: Install Untested Nightly Swift
48- # run: "bash -xc './docker/install_untested_nightly_swift.sh'"
49- - name : Cache local Gradle repository
50- uses : actions/cache@v4
51- continue-on-error : true
52- with :
53- path : |
54- /root/.gradle/caches
55- /root/.gradle/wrapper
56- key : ${{ runner.os }}-gradle-${{ hashFiles('*/*.gradle*', 'settings.gradle') }}
57- restore-keys : |
58- ${{ runner.os }}-gradle-
59- - name : Cache local SwiftPM repository
60- uses : actions/cache@v4
61- continue-on-error : true
62- with :
63- path : /__w/swift-java/swift-java/.build/checkouts
64- key : ${{ runner.os }}-swiftpm-cache-${{ hashFiles('Package.swift') }}
65- restore-keys : |
66- ${{ runner.os }}-swiftpm-cache
67- ${{ runner.os }}-swiftpm-
32+ - uses : swiftlang/swift-java/.github/workflows/prepare_env.yml@main
33+
6834 # run the actual build
6935 - name : Gradle build
7036 run : |
9056 JAVA_HOME : " /usr/lib/jvm/default-jdk"
9157 steps :
9258 - uses : actions/checkout@v4
93- - name : Install System Dependencies
94- run : apt-get -qq update && apt-get -qq install -y make curl wget libjemalloc2 libjemalloc-dev
95- - name : Cache JDK
96- id : cache-jdk
97- uses : actions/cache@v4
98- continue-on-error : true
99- with :
100- path : /usr/lib/jvm/default-jdk/
101- key : ${{ runner.os }}-jdk-${{ matrix.jdk_vendor }}-${{ hashFiles('/usr/lib/jvm/default-jdk/*') }}
102- restore-keys : |
103- ${{ runner.os }}-jdk-
104- - name : Install JDK
105- if : steps.cache-jdk.outputs.cache-hit != 'true'
106- run : " bash -xc 'JDK_VENDOR=${{ matrix.jdk_vendor }} ./docker/install_jdk.sh'"
107- - name : Cache local Gradle repository
108- uses : actions/cache@v4
109- continue-on-error : true
110- with :
111- path : |
112- /root/.gradle/caches
113- /root/.gradle/wrapper
114- key : ${{ runner.os }}-gradle-${{ hashFiles('*/*.gradle*', 'settings.gradle') }}
115- restore-keys : |
116- ${{ runner.os }}-gradle-
117- - name : Cache local SwiftPM repository
118- uses : actions/cache@v4
119- continue-on-error : true
120- with :
121- path : /__w/swift-java/swift-java/.build/checkouts
122- key : ${{ runner.os }}-swiftpm-cache-${{ hashFiles('Package.swift') }}
123- restore-keys : |
124- ${{ runner.os }}-swiftpm-cache
125- ${{ runner.os }}-swiftpm-
59+ - uses : swiftlang/swift-java/.github/workflows/prepare_env.yml@main
12660 - name : Test Swift
12761 run : " swift test"
12862
@@ -141,20 +75,7 @@ jobs:
14175 JAVA_HOME : " /usr/lib/jvm/default-jdk"
14276 steps :
14377 - uses : actions/checkout@v4
144- - name : Install System Dependencies
145- run : apt-get -qq update && apt-get -qq install -y make curl wget libjemalloc2 libjemalloc-dev
146- - name : Cache JDK
147- id : cache-jdk
148- uses : actions/cache@v4
149- continue-on-error : true
150- with :
151- path : /usr/lib/jvm/default-jdk/
152- key : ${{ runner.os }}-jdk-${{ matrix.jdk_vendor }}-${{ hashFiles('/usr/lib/jvm/default-jdk/*') }}
153- restore-keys : |
154- ${{ runner.os }}-jdk-
155- - name : Install JDK
156- if : steps.cache-jdk.outputs.cache-hit != 'true'
157- run : " bash -xc 'JDK_VENDOR=${{ matrix.jdk_vendor }} ./docker/install_jdk.sh'"
78+ - uses : swiftlang/swift-java/.github/workflows/prepare_env.yml@main
15879 - name : Verify Samples (All)
15980 run : .github/scripts/validate_samples.sh
16081 # TODO: Benchmark compile crashes in CI, enable when nightly toolchains in better shape.
0 commit comments