Skip to content

Commit 007de18

Browse files
committed
Merge branch 'master' into gmt/java-standalone-activities
2 parents 2fc4bae + d3c157c commit 007de18

57 files changed

Lines changed: 4122 additions & 122 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/build-native-image.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -62,22 +62,22 @@ jobs:
6262
runs-on: ${{ matrix.runner }}
6363
steps:
6464
- name: Checkout repo
65-
uses: actions/checkout@v5
65+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
6666
with:
6767
fetch-depth: 0
6868
submodules: recursive
6969
ref: ${{ env.INPUT_REF }}
7070

7171
- name: Set up Java
7272
if: matrix.os_family != 'linux'
73-
uses: actions/setup-java@v5
73+
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5
7474
with:
7575
java-version: 23
7676
distribution: "graalvm"
7777

7878
- name: Set up Gradle
7979
if: matrix.os_family != 'linux'
80-
uses: gradle/actions/setup-gradle@v5
80+
uses: gradle/actions/setup-gradle@ac396bf1a80af16236baf54bd7330ae21dc6ece5 # v6
8181

8282
- name: Build native test server (non-Docker)
8383
if: matrix.os_family != 'linux'
@@ -105,7 +105,7 @@ jobs:
105105
# path ends in a wildcard because on windows the file ends in '.exe'
106106
- name: Upload executable to workflow
107107
if: ${{ inputs.upload_artifact }}
108-
uses: actions/upload-artifact@v5
108+
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7
109109
with:
110110
name: ${{ matrix.musl && format('{0}_{1}_musl', matrix.os_family, matrix.arch) || format('{0}_{1}', matrix.os_family, matrix.arch)}}
111111
path: |

.github/workflows/ci.yml

Lines changed: 35 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -14,47 +14,47 @@ jobs:
1414
timeout-minutes: 30
1515
steps:
1616
- name: Checkout repo
17-
uses: actions/checkout@v5
17+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
1818
with:
1919
fetch-depth: 0
2020
submodules: recursive
2121
ref: ${{ github.event.pull_request.head.sha }}
2222

2323
- name: Set up Java
24-
uses: actions/setup-java@v5
24+
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5
2525
with:
2626
java-version: "23"
2727
distribution: "temurin"
2828

2929
- name: Set up Gradle
30-
uses: gradle/actions/setup-gradle@v5
30+
uses: gradle/actions/setup-gradle@ac396bf1a80af16236baf54bd7330ae21dc6ece5 # v6
3131

32-
- name: Run unit tests
32+
- name: Run unit tests (Java 23)
3333
env:
3434
USER: unittest
3535
USE_DOCKER_SERVICE: false
36-
run: ./gradlew --no-daemon test -x spotlessCheck -x spotlessApply -x spotlessJava -P edgeDepsTest
36+
run: ./gradlew --no-daemon test -x spotlessCheck -x spotlessApply -x spotlessJava -P edgeDepsTest -PtestJavaVersion=23
3737

3838
- name: Run independent resource tuner test
3939
env:
4040
USER: unittest
4141
USE_DOCKER_SERVICE: false
42-
run: ./gradlew --no-daemon temporal-sdk:testResourceIndependent -x spotlessCheck -x spotlessApply -x spotlessJava -P edgeDepsTest
42+
run: ./gradlew --no-daemon temporal-sdk:testResourceIndependent -x spotlessCheck -x spotlessApply -x spotlessJava -P edgeDepsTest -PtestJavaVersion=23
4343

4444
- name: Run Spring Boot 3 compatibility tests
4545
env:
4646
USER: unittest
4747
USE_DOCKER_SERVICE: false
48-
run: ./gradlew --no-daemon :temporal-spring-boot-autoconfigure:test -x spotlessCheck -x spotlessApply -x spotlessJava -P edgeDepsTest -P springBoot3Test
48+
run: ./gradlew --no-daemon :temporal-spring-boot-autoconfigure:test -x spotlessCheck -x spotlessApply -x spotlessJava -P edgeDepsTest -P springBoot3Test -PtestJavaVersion=23
4949

5050
- name: Run Spring Boot 4 compatibility tests
5151
env:
5252
USER: unittest
5353
USE_DOCKER_SERVICE: false
54-
run: ./gradlew --no-daemon :temporal-spring-boot-autoconfigure:test -x spotlessCheck -x spotlessApply -x spotlessJava -P edgeDepsTest -P springBoot4Test
54+
run: ./gradlew --no-daemon :temporal-spring-boot-autoconfigure:test -x spotlessCheck -x spotlessApply -x spotlessJava -P edgeDepsTest -P springBoot4Test -PtestJavaVersion=23
5555

5656
- name: Publish Test Report
57-
uses: mikepenz/action-junit-report@v6
57+
uses: mikepenz/action-junit-report@bccf2e31636835cf0874589931c4116687171386 # v6
5858
if: success() || failure() # always run even if the previous step fails
5959
with:
6060
report_paths: "**/build/test-results/test/TEST-*.xml"
@@ -65,22 +65,22 @@ jobs:
6565
timeout-minutes: 30
6666
steps:
6767
- name: Checkout repo
68-
uses: actions/checkout@v5
68+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
6969
with:
7070
fetch-depth: 0
7171
submodules: recursive
7272
ref: ${{ github.event.pull_request.head.sha }}
7373

7474
- name: Set up Java
75-
uses: actions/setup-java@v5
75+
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5
7676
with:
7777
java-version: |
78-
23
7978
11
79+
23
8080
distribution: "temurin"
8181

8282
- name: Set up Gradle
83-
uses: gradle/actions/setup-gradle@v5
83+
uses: gradle/actions/setup-gradle@ac396bf1a80af16236baf54bd7330ae21dc6ece5 # v6
8484

8585
- name: Start containerized server and dependencies
8686
env:
@@ -113,28 +113,32 @@ jobs:
113113
--dynamic-config-value 'component.callbacks.allowedAddresses=[{"Pattern":"localhost:7243","AllowInsecure":true}]' &
114114
sleep 10s
115115
116-
- name: Run unit tests
116+
# Can't actually run tests against Java 8 because Mockito 5 requires Java 11+.
117+
# We therefore have to rely on the fact that the code has been compiled with
118+
# `-release 8` which guarantees that the code is technically (bytecode + API
119+
# usage) compatible with Java 8.
120+
- name: Run unit tests (Java 11)
117121
env:
118122
USER: unittest
119123
TEMPORAL_SERVICE_ADDRESS: localhost:7233
120124
USE_DOCKER_SERVICE: true
121-
run: ./gradlew --no-daemon test -x spotlessCheck -x spotlessApply -x spotlessJava
125+
run: ./gradlew --no-daemon test -x spotlessCheck -x spotlessApply -x spotlessJava -PtestJavaVersion=11
122126

123-
- name: Run Jackson 3 converter tests
127+
- name: Run Jackson 3 converter tests (Java 17)
124128
env:
125129
USER: unittest
126130
USE_DOCKER_SERVICE: false
127-
run: ./gradlew --no-daemon :temporal-sdk:jackson3Tests -x spotlessCheck -x spotlessApply -x spotlessJava
131+
run: ./gradlew --no-daemon :temporal-sdk:jackson3Tests -x spotlessCheck -x spotlessApply -x spotlessJava -PtestJavaVersion=17
128132

129-
- name: Run virtual thread tests
133+
- name: Run virtual thread tests (Java 21)
130134
env:
131135
USER: unittest
132136
TEMPORAL_SERVICE_ADDRESS: localhost:7233
133137
USE_DOCKER_SERVICE: true
134-
run: ./gradlew --no-daemon :temporal-sdk:virtualThreadTests -x spotlessCheck -x spotlessApply -x spotlessJava
138+
run: ./gradlew --no-daemon :temporal-sdk:virtualThreadTests -x spotlessCheck -x spotlessApply -x spotlessJava -PtestJavaVersion=21
135139

136140
- name: Publish Test Report
137-
uses: mikepenz/action-junit-report@v6
141+
uses: mikepenz/action-junit-report@bccf2e31636835cf0874589931c4116687171386 # v6
138142
if: success() || failure() # always run even if the previous step fails
139143
with:
140144
report_paths: "**/build/test-results/test/TEST-*.xml"
@@ -145,20 +149,20 @@ jobs:
145149
timeout-minutes: 30
146150
steps:
147151
- name: Checkout repo
148-
uses: actions/checkout@v5
152+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
149153
with:
150154
fetch-depth: 0
151155
submodules: recursive
152156
ref: ${{ github.event.pull_request.head.sha }}
153157

154158
- name: Set up Java
155-
uses: actions/setup-java@v5
159+
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5
156160
with:
157-
java-version: "11"
161+
java-version: "23"
158162
distribution: "temurin"
159163

160164
- name: Set up Gradle
161-
uses: gradle/actions/setup-gradle@v5
165+
uses: gradle/actions/setup-gradle@ac396bf1a80af16236baf54bd7330ae21dc6ece5 # v6
162166

163167
- name: Run cloud test
164168
# Only supported in non-fork runs, since secrets are not available in forks. We intentionally
@@ -173,7 +177,7 @@ jobs:
173177
run: ./gradlew --no-daemon :temporal-sdk:test --tests '*CloudOperationsClientTest'
174178

175179
- name: Publish Test Report
176-
uses: mikepenz/action-junit-report@v6
180+
uses: mikepenz/action-junit-report@bccf2e31636835cf0874589931c4116687171386 # v6
177181
if: success() || failure() # always run even if the previous step fails
178182
with:
179183
report_paths: "**/build/test-results/test/TEST-*.xml"
@@ -184,20 +188,20 @@ jobs:
184188
timeout-minutes: 20
185189
steps:
186190
- name: Checkout repo
187-
uses: actions/checkout@v5
191+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
188192
with:
189193
fetch-depth: 0
190194
submodules: recursive
191195
ref: ${{ github.event.pull_request.head.sha }}
192196

193197
- name: Set up Java
194-
uses: actions/setup-java@v5
198+
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5
195199
with:
196200
java-version: "23"
197201
distribution: "temurin"
198202

199203
- name: Set up Gradle
200-
uses: gradle/actions/setup-gradle@v5
204+
uses: gradle/actions/setup-gradle@ac396bf1a80af16236baf54bd7330ae21dc6ece5 # v6
201205

202206
- name: Run copyright and code format checks
203207
run: ./gradlew --no-daemon spotlessCheck
@@ -208,20 +212,20 @@ jobs:
208212
timeout-minutes: 20
209213
steps:
210214
- name: Checkout repo
211-
uses: actions/checkout@v5
215+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
212216
with:
213217
fetch-depth: 0
214218
submodules: recursive
215219
ref: ${{ github.event.pull_request.head.sha }}
216220

217221
- name: Set up Java
218-
uses: actions/setup-java@v5
222+
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5
219223
with:
220224
java-version: "23"
221225
distribution: "temurin"
222226

223227
- name: Set up Gradle
224-
uses: gradle/actions/setup-gradle@v5
228+
uses: gradle/actions/setup-gradle@ac396bf1a80af16236baf54bd7330ae21dc6ece5 # v6
225229

226230
- name: Run javadoc
227231
run: ./gradlew --no-daemon javadoc

.github/workflows/coverage.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,21 +12,21 @@ jobs:
1212
runs-on: ubuntu-latest-16-cores
1313
steps:
1414
- name: Checkout
15-
uses: actions/checkout@v5
15+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
1616
with:
1717
fetch-depth: 0
1818

1919
- name: Set up Java
20-
uses: actions/setup-java@v5
20+
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5
2121
with:
22-
java-version: '11'
23-
distribution: 'temurin'
22+
java-version: "23"
23+
distribution: "temurin"
2424

2525
- name: Set up Gradle
26-
uses: gradle/actions/setup-gradle@v5
26+
uses: gradle/actions/setup-gradle@ac396bf1a80af16236baf54bd7330ae21dc6ece5 # v6
2727

2828
- name: Run Tests
29-
run: ./gradlew test -x spotlessCheck -x spotlessApply -Pjacoco
29+
run: ./gradlew test -x spotlessCheck -x spotlessApply -Pjacoco -PtestJavaVersion=23
3030
continue-on-error: true
3131

3232
- name: Run Test Coverage

.github/workflows/gradle-wrapper-validation.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,5 @@ jobs:
99
name: "Gradle wrapper validation"
1010
runs-on: ubuntu-latest
1111
steps:
12-
- uses: actions/checkout@v5
13-
- uses: gradle/actions/wrapper-validation@v4
12+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
13+
- uses: gradle/actions/wrapper-validation@ac396bf1a80af16236baf54bd7330ae21dc6ece5 # v6

.github/workflows/nightly-throughput-stress.yml

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -68,38 +68,38 @@ jobs:
6868
echo "=========================================="
6969
7070
- name: Checkout SDK
71-
uses: actions/checkout@v5
71+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
7272
with:
7373
submodules: recursive
7474
fetch-depth: 0
7575

7676
- name: Checkout OMES
77-
uses: actions/checkout@v5
77+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
7878
with:
7979
repository: ${{ env.OMES_REPO }}
8080
ref: ${{ env.OMES_REF }}
8181
path: omes
8282

8383
- name: Setup Go
84-
uses: actions/setup-go@v6
84+
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
8585
with:
8686
go-version-file: omes/go.mod
8787
cache-dependency-path: omes/go.sum
8888

8989
- name: Set up Java
90-
uses: actions/setup-java@v5
90+
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5
9191
with:
92-
java-version: "11"
92+
java-version: "23"
9393
distribution: "temurin"
9494

9595
- name: Set up Gradle
96-
uses: gradle/actions/setup-gradle@v4
96+
uses: gradle/actions/setup-gradle@ac396bf1a80af16236baf54bd7330ae21dc6ece5 # v6
9797

9898
- name: Build SDK
99-
run: ./gradlew build -x test -x virtualThreadTests
99+
run: ./gradlew build -x test -x virtualThreadTests -PtestJavaVersion=23
100100

101101
- name: Install Temporal CLI
102-
uses: temporalio/setup-temporal@v0
102+
uses: temporalio/setup-temporal@1059a504f87e7fa2f385e3fa40d1aa7e62f1c6ca # v0
103103

104104
- name: Install Prometheus
105105
run: |
@@ -154,7 +154,7 @@ jobs:
154154
155155
- name: Configure AWS credentials
156156
if: always()
157-
uses: aws-actions/configure-aws-credentials@v4
157+
uses: aws-actions/configure-aws-credentials@51635dbf418c2cdd8b3e1497529334d8db7e4063 # v6
158158
with:
159159
role-to-assume: ${{ env.AWS_S3_METRICS_UPLOAD_ROLE_ARN }}
160160
aws-region: us-west-2
@@ -174,15 +174,15 @@ jobs:
174174
175175
- name: Upload logs on failure
176176
if: failure() || cancelled()
177-
uses: actions/upload-artifact@v5
177+
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7
178178
with:
179179
name: throughput-stress-logs
180180
path: ${{ env.WORKER_LOG_DIR }}
181181
retention-days: 30
182182

183183
- name: Notify Slack on failure
184184
if: failure() || cancelled()
185-
uses: slackapi/slack-github-action@v2
185+
uses: slackapi/slack-github-action@af78098f536edbc4de71162a307590698245be95 # v3
186186
with:
187187
webhook-type: incoming-webhook
188188
payload: |

0 commit comments

Comments
 (0)