Skip to content

Commit 64574ab

Browse files
authored
Merge pull request #1855 from GoogleContainerTools/organize_java
Move java21 over so we can add java17 for debian13
2 parents 2943e68 + d9a6a45 commit 64574ab

File tree

9 files changed

+219
-30
lines changed

9 files changed

+219
-30
lines changed

MODULE.bazel

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -36,25 +36,13 @@ go_deps.module(
3636
)
3737
use_repo(go_deps, "com_github_spdx_tools_golang")
3838

39-
### JETTY ###
40-
http_archive = use_repo_rule("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
41-
42-
http_archive(
43-
name = "jetty",
44-
add_prefix = "output",
45-
build_file = "//java:BUILD.jetty",
46-
sha256 = "b04b4cd45f3bf3c09a26bdf7f4e8d1a67e1a0f224ef4539534a0719b2c701088",
47-
strip_prefix = "jetty-distribution-9.4.53.v20231009/",
48-
urls = ["https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-distribution/9.4.53.v20231009/jetty-distribution-9.4.53.v20231009.tar.gz"],
49-
)
50-
5139
### BUSYBOX ###
5240
busybox = use_extension("//private/extensions:busybox.bzl", "busybox")
5341
busybox.archive()
5442
use_repo(busybox, "busybox_amd64", "busybox_arm", "busybox_arm64", "busybox_ppc64le", "busybox_s390x")
5543

5644
### JAVA ###
57-
include("//private/repos:java.MODULE.bazel")
45+
include("//private/repos/java_temurin:java.MODULE.bazel")
5846

5947
### NODE ###
6048
node = use_extension("//private/extensions:node.bzl", "node")

MODULE.bazel.lock

Lines changed: 109 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

knife

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -136,11 +136,14 @@ function cmd_lint () {
136136
}
137137

138138
function cmd_update_java_archives () {
139-
source scripts/update_java_archives.sh
140-
old_version=$(get_java_version)
141-
generate_java_archives > private/repos/java.MODULE.bazel
142-
new_version=$(get_java_version)
139+
source knife.d/update_java_archives.sh
140+
old_version=$(get_java_version 21)
141+
generate_java_archives 21 > private/repos/java_temurin/java_21.MODULE.bazel
142+
new_version=$(get_java_version 21)
143143
update_test_versions_java21 $old_version $new_version
144+
145+
# java 17 set up
146+
generate_java_archives 17 > private/repos/java_temurin/java_17.MODULE.bazel
144147
}
145148

146149
function cmd_update_node_archives () {
@@ -168,7 +171,7 @@ function cmd_update_node_archives () {
168171
done
169172

170173
joined_versions=$(IFS=, ; echo "${versions[*]}")
171-
node scripts/update_node_archives.js "$joined_versions"
174+
node knife.d/update_node_archives.js "$joined_versions"
172175
}
173176

174177

@@ -177,6 +180,9 @@ function cmd_test () {
177180
echo ""
178181

179182
local arch=$(uname -m)
183+
if [ ${arch} == "x86_64" ]; then
184+
arch="amd64"
185+
fi
180186

181187
echo "💡 only including image tests for $arch"
182188
echo ""
Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -17,17 +17,22 @@ set -o pipefail -o errexit -o nounset
1717
# a collection of functions to use when updating java archives from the knife utility
1818

1919
function get_java_version() {
20-
grep "#VERSION " ./private/repos/java.MODULE.bazel | cut -d" " -f2
20+
: "${1:?Error: java major version required}"
21+
local major_version=$1
22+
grep "#VERSION " "./private/repos/java_temurin/java_${major_version}.MODULE.bazel" | cut -d" " -f2
2123
}
2224

2325
function underscore_encode() {
2426
echo "${1/\+/_}"
2527
}
2628

2729
function generate_java_archives() {
30+
: "${1:?Error: java major version required}"
2831
local releases latest_release release_name version plain_version archs archs_deb variants
2932

30-
releases=$(curl -sSL https://api.github.com/repos/adoptium/temurin21-binaries/releases)
33+
local major_version=$1
34+
35+
releases=$(curl -sSL "https://api.github.com/repos/adoptium/temurin${major_version}-binaries/releases")
3136
latest_release=$(echo "$releases" | jq -r 'map(select(.name | test("jdk-([0-9.]+)(\\+([0-9]+))?"))) | sort_by(.published_at) | last')
3237
release_name=$(echo "$latest_release" | jq -r '.name')
3338
version=${release_name#jdk-}
@@ -37,7 +42,7 @@ function generate_java_archives() {
3742
variants=("jre" "jdk")
3843

3944
cat << EOM
40-
"repositories for java"
45+
"repositories for java ${major_version}"
4146
4247
#VERSION ${plain_version}
4348
@@ -50,7 +55,7 @@ EOM
5055

5156
arch=${archs[arch_index]}
5257
arch_deb=${archs_deb[arch_index]}
53-
name="OpenJDK21U-${variant}_${arch}_linux_hotspot_$(underscore_encode "${version}").tar.gz"
58+
name="OpenJDK${major_version}U-${variant}_${arch}_linux_hotspot_$(underscore_encode "${version}").tar.gz"
5459
archive_url=$(echo "$latest_release" | jq -r --arg NAME "$name" '.assets | .[] | select(.name==$NAME) | .browser_download_url')
5560
: ${archive_url:?"no url found for '${name}'"}
5661
sha256_name="${name}.sha256.txt"
@@ -66,7 +71,7 @@ EOM
6671

6772
cat << EOM
6873
java.archive(
69-
name = "temurin21_${variant}_${arch_deb}",
74+
name = "temurin${major_version}_${variant}_${arch_deb}",
7075
architecture = "${arch_deb}",
7176
plain_version = "${plain_version}",
7277
sha256 = "${sha256}",
@@ -78,14 +83,16 @@ EOM
7883

7984
done
8085
done
81-
82-
cat << EOM
83-
use_repo(java, "java_versions", "temurin21_jdk_amd64", "temurin21_jdk_arm64", "temurin21_jdk_ppc64le", "temurin21_jre_amd64", "temurin21_jre_arm64", "temurin21_jre_ppc64le")
84-
EOM
8586
}
8687

8788
function update_test_versions_java21() {
8889
local old_version=${1?:"no old version set in param 1"}
8990
local new_version=${2?:"no new version set in param 2"}
9091
sed -i -e "s/$old_version/$new_version/g" java/testdata/java21_*
9192
}
93+
94+
function update_test_versions_java17() {
95+
local old_version=${1?:"no old version set in param 1"}
96+
local new_version=${2?:"no new version set in param 2"}
97+
sed -i -e "s/$old_version/$new_version/g" java/testdata/java17_debian13
98+
}
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
"repositories for java"
2+
3+
include("//private/repos/java_temurin:java_17.MODULE.bazel")
4+
include("//private/repos/java_temurin:java_21.MODULE.bazel")
5+
6+
java = use_extension("//private/extensions:java.bzl", "java")
7+
use_repo(
8+
java,
9+
"java_versions",
10+
"temurin17_jdk_amd64",
11+
"temurin17_jdk_arm64",
12+
"temurin17_jdk_ppc64le",
13+
"temurin17_jre_amd64",
14+
"temurin17_jre_arm64",
15+
"temurin17_jre_ppc64le",
16+
"temurin21_jdk_amd64",
17+
"temurin21_jdk_arm64",
18+
"temurin21_jdk_ppc64le",
19+
"temurin21_jre_amd64",
20+
"temurin21_jre_arm64",
21+
"temurin21_jre_ppc64le"
22+
)
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
"repositories for java 17"
2+
3+
#VERSION 17.0.16
4+
5+
java = use_extension("//private/extensions:java.bzl", "java")
6+
java.archive(
7+
name = "temurin17_jre_amd64",
8+
architecture = "amd64",
9+
plain_version = "17.0.16",
10+
sha256 = "2885b944da3793144d4a86a29524f4d7b68ba155f5c08afa444a3b40f7071892",
11+
strip_prefix = "jdk-17.0.16+8-jre",
12+
urls = ["https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.16%2B8/OpenJDK17U-jre_x64_linux_hotspot_17.0.16_8.tar.gz"],
13+
version = "17.0.16+8",
14+
)
15+
java.archive(
16+
name = "temurin17_jdk_amd64",
17+
architecture = "amd64",
18+
plain_version = "17.0.16",
19+
sha256 = "166774efcf0f722f2ee18eba0039de2d685b350ee14d7b69e6f83437dafd2af1",
20+
strip_prefix = "jdk-17.0.16+8",
21+
urls = ["https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.16%2B8/OpenJDK17U-jdk_x64_linux_hotspot_17.0.16_8.tar.gz"],
22+
version = "17.0.16+8",
23+
)
24+
java.archive(
25+
name = "temurin17_jre_arm64",
26+
architecture = "arm64",
27+
plain_version = "17.0.16",
28+
sha256 = "98f9d60be880b6ec551f5f1fcd784971aa573e8d8f5b9923fb0148c25afcd161",
29+
strip_prefix = "jdk-17.0.16+8-jre",
30+
urls = ["https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.16%2B8/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.16_8.tar.gz"],
31+
version = "17.0.16+8",
32+
)
33+
java.archive(
34+
name = "temurin17_jdk_arm64",
35+
architecture = "arm64",
36+
plain_version = "17.0.16",
37+
sha256 = "423416447885d9e45f96dd9e0b2c1367da5e1b0353e187cfdf9388c9820ac147",
38+
strip_prefix = "jdk-17.0.16+8",
39+
urls = ["https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.16%2B8/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.16_8.tar.gz"],
40+
version = "17.0.16+8",
41+
)
42+
java.archive(
43+
name = "temurin17_jre_ppc64le",
44+
architecture = "ppc64le",
45+
plain_version = "17.0.16",
46+
sha256 = "a0a3e94b278a869a2a03802cd549ca0ecdfe1f568175a8ddac113613ee9a8bb9",
47+
strip_prefix = "jdk-17.0.16+8-jre",
48+
urls = ["https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.16%2B8/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.16_8.tar.gz"],
49+
version = "17.0.16+8",
50+
)
51+
java.archive(
52+
name = "temurin17_jdk_ppc64le",
53+
architecture = "ppc64le",
54+
plain_version = "17.0.16",
55+
sha256 = "eb020f74e00870379522be0b44fc6322c2214e77971c258400c8b5af704d5c0a",
56+
strip_prefix = "jdk-17.0.16+8",
57+
urls = ["https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.16%2B8/OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.16_8.tar.gz"],
58+
version = "17.0.16+8",
59+
)

private/repos/java.MODULE.bazel renamed to private/repos/java_temurin/java_21.MODULE.bazel

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
"repositories for java"
1+
"repositories for java 21"
22

33
#VERSION 21.0.8
44

@@ -57,4 +57,3 @@ java.archive(
5757
urls = ["https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.8%2B9/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.8_9.tar.gz"],
5858
version = "21.0.8+9",
5959
)
60-
use_repo(java, "java_versions", "temurin21_jdk_amd64", "temurin21_jdk_arm64", "temurin21_jdk_ppc64le", "temurin21_jre_amd64", "temurin21_jre_arm64", "temurin21_jre_ppc64le")

0 commit comments

Comments
 (0)