Skip to content

Commit 243b4da

Browse files
build: introduce testing infra for GraalVM "C" (#3739)
To be merged after cl/747626774 [context doc](https://docs.google.com/document/d/1bOeGtVFLsq5ts71If5pFXCvHIeNpbtBRvF6XQfavLZs/edit?tab=t.dcjxhf429j6t) TL;DR: we are introducing testing infra for GraalVM for JDK 17
1 parent 4383ea1 commit 243b4da

8 files changed

+185
-1
lines changed
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
# Copyright 2025 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
timeout: 7200s # 2 hours
16+
substitutions:
17+
_SHARED_DEPENDENCIES_VERSION: '3.30.1-SNAPSHOT' # {x-version-update:google-cloud-shared-dependencies:current}
18+
_JAVA_SHARED_CONFIG_VERSION: '1.15.4'
19+
options:
20+
machineType: 'E2_HIGHCPU_8'
21+
logging: CLOUD_LOGGING_ONLY
22+
steps:
23+
- name: gcr.io/cloud-builders/docker
24+
args: [
25+
"build",
26+
"-t", "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:${_SHARED_DEPENDENCIES_VERSION}",
27+
"--file", "graalvm_c.Dockerfile",
28+
"--build-arg", "JAVA_SHARED_CONFIG_VERSION=$_JAVA_SHARED_CONFIG_VERSION",
29+
"."
30+
]
31+
dir: .cloudbuild/graalvm
32+
id: graalvm-c-build
33+
waitFor: ["-"]
34+
35+
- name: gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:${_SHARED_DEPENDENCIES_VERSION}
36+
waitFor: [ "graalvm-c-build" ]
37+
entrypoint: java
38+
args: [ '-version' ]
39+
id: java-version
40+
41+
- name: gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:${_SHARED_DEPENDENCIES_VERSION}
42+
entrypoint: bash
43+
args: [ './.kokoro/presubmit/downstream-build.sh' ]
44+
waitFor: [ "graalvm-c-build" ]
45+
id: native-java-kms
46+
env:
47+
- 'MODULES_UNDER_TEST=java-kms'
48+
- 'GOOGLE_CLOUD_PROJECT=java-graalvm-ci-prod'
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
# Copyright 2025 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
timeout: 7200s # 2 hours
16+
substitutions:
17+
_SHARED_DEPENDENCIES_VERSION: '3.30.1-SNAPSHOT' # {x-version-update:google-cloud-shared-dependencies:current}
18+
_JAVA_SHARED_CONFIG_VERSION: '1.15.4'
19+
options:
20+
machineType: 'E2_HIGHCPU_8'
21+
logging: CLOUD_LOGGING_ONLY
22+
steps:
23+
- name: gcr.io/cloud-builders/docker
24+
args: [
25+
"build",
26+
"-t", "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:${_SHARED_DEPENDENCIES_VERSION}",
27+
"--file", "graalvm_c.Dockerfile",
28+
"--build-arg", "JAVA_SHARED_CONFIG_VERSION=$_JAVA_SHARED_CONFIG_VERSION",
29+
"."
30+
]
31+
dir: .cloudbuild/graalvm
32+
id: graalvm-c-build
33+
waitFor: ["-"]
34+
35+
- name: gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:${_SHARED_DEPENDENCIES_VERSION}
36+
waitFor: [ "graalvm-c-build" ]
37+
entrypoint: java
38+
args: [ '-version' ]
39+
id: java-version
40+
41+
- name: gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:${_SHARED_DEPENDENCIES_VERSION}
42+
entrypoint: bash
43+
args: [ './.kokoro/presubmit/downstream-build.sh' ]
44+
waitFor: [ "graalvm-c-build" ]
45+
id: native-java-kmsinventory
46+
env:
47+
- 'MODULES_UNDER_TEST=java-kmsinventory'
48+
- 'GOOGLE_CLOUD_PROJECT=java-graalvm-ci-prod'
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
# Copyright 2025 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
timeout: 7200s # 2 hours
16+
substitutions:
17+
_SHARED_DEPENDENCIES_VERSION: '3.45.2-SNAPSHOT' # {x-version-update:google-cloud-shared-dependencies:current}
18+
_JAVA_SHARED_CONFIG_VERSION: '1.15.4'
19+
options:
20+
machineType: 'E2_HIGHCPU_8'
21+
logging: CLOUD_LOGGING_ONLY
22+
steps:
23+
- name: gcr.io/cloud-builders/docker
24+
args: [
25+
"build",
26+
"-t", "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:${_SHARED_DEPENDENCIES_VERSION}",
27+
"--file", "graalvm_c.Dockerfile",
28+
"--build-arg", "JAVA_SHARED_CONFIG_VERSION=$_JAVA_SHARED_CONFIG_VERSION",
29+
"."
30+
]
31+
dir: .cloudbuild/graalvm
32+
id: graalvm-c-build
33+
waitFor: ["-"]
34+
35+
- name: gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:${_SHARED_DEPENDENCIES_VERSION}
36+
waitFor: [ "graalvm-c-build" ]
37+
entrypoint: java
38+
args: [ '-version' ]
39+
id: java-version
40+
41+
- name: gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:${_SHARED_DEPENDENCIES_VERSION}
42+
entrypoint: bash
43+
args: [ './.kokoro/presubmit/showcase-native.sh' ]
44+
waitFor: [ "graalvm-c-build" ]
45+
id: native-showcase

.cloudbuild/graalvm/cloudbuild.yaml

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,11 +45,27 @@ steps:
4545
id: graalvm-b-build
4646
waitFor: [ "-" ]
4747

48+
# GraalVM C build
49+
- name: gcr.io/cloud-builders/docker
50+
args: [
51+
"build",
52+
"-t", "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:${_SHARED_DEPENDENCIES_VERSION}",
53+
"-t", "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:infrastructure-public-image-$SHORT_SHA",
54+
"--file", "graalvm_c.Dockerfile",
55+
"--build-arg", "JAVA_SHARED_CONFIG_VERSION=$_JAVA_SHARED_CONFIG_VERSION",
56+
"."
57+
]
58+
dir: .cloudbuild/graalvm
59+
id: graalvm-c-build
60+
waitFor: [ "-" ]
61+
4862
options:
4963
logging: CLOUD_LOGGING_ONLY
5064

5165
images:
5266
- gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:${_SHARED_DEPENDENCIES_VERSION}
5367
- gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:${_SHARED_DEPENDENCIES_VERSION}
68+
- gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:${_SHARED_DEPENDENCIES_VERSION}
5469
- gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:infrastructure-public-image-$SHORT_SHA
55-
- gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:infrastructure-public-image-$SHORT_SHA
70+
- gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:infrastructure-public-image-$SHORT_SHA
71+
- gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:infrastructure-public-image-$SHORT_SHA
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# Copyright 2025 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
16+
ARG JAVA_SHARED_CONFIG_VERSION
17+
18+
FROM us-docker.pkg.dev/java-graalvm-ci-prod/graalvm-integration-testing/graalvm_c:$JAVA_SHARED_CONFIG_VERSION

.github/release-please.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ extraFiles:
88
- .cloudbuild/graalvm/cloudbuild.yaml
99
- .cloudbuild/graalvm/cloudbuild-test-a.yaml
1010
- .cloudbuild/graalvm/cloudbuild-test-b.yaml
11+
- .cloudbuild/graalvm/cloudbuild-test-c.yaml
1112
- .cloudbuild/library_generation/cloudbuild-library-generation-release.yaml
1213
- generation_config.yaml
1314
branches:

.github/sync-repo-settings.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,18 +16,25 @@ branchProtectionRules:
1616
- compatibility
1717
- graalvm-presubmit-sdk-platform-java-a (java-graalvm-ci-prod)
1818
- graalvm-presubmit-sdk-platform-java-b (java-graalvm-ci-prod)
19+
- graalvm-presubmit-sdk-platform-java-c (java-graalvm-ci-prod)
1920
- >-
2021
graalvm-presubmit-sdk-platform-java-a-downstream-kms
2122
(java-graalvm-ci-prod)
2223
- >-
2324
graalvm-presubmit-sdk-platform-java-b-downstream-kms
2425
(java-graalvm-ci-prod)
26+
- >-
27+
graalvm-presubmit-sdk-platform-java-c-downstream-kms
28+
(java-graalvm-ci-prod)
2529
- >-
2630
graalvm-presubmit-sdk-platform-java-a-downstream-kmsinventory
2731
(java-graalvm-ci-prod)
2832
- >-
2933
graalvm-presubmit-sdk-platform-java-b-downstream-kmsinventory
3034
(java-graalvm-ci-prod)
35+
- >-
36+
graalvm-presubmit-sdk-platform-java-c-downstream-kmsinventory
37+
(java-graalvm-ci-prod)
3138
- library_generation
3239
- library-generation-integration-test (java-hermetic-build-prod)
3340
- library-generation-lint-python

release-please-config.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
".cloudbuild/graalvm/cloudbuild.yaml",
1111
".cloudbuild/graalvm/cloudbuild-test-a.yaml",
1212
".cloudbuild/graalvm/cloudbuild-test-b.yaml",
13+
".cloudbuild/graalvm/cloudbuild-test-c.yaml",
1314
".cloudbuild/library_generation/cloudbuild-library-generation-push.yaml",
1415
".cloudbuild/library_generation/library_generation.Dockerfile",
1516
".cloudbuild/library_generation/library_generation_airlock.Dockerfile"

0 commit comments

Comments
 (0)