This is an automated email from the ASF dual-hosted git repository.
yhu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/beam.git
The following commit(s) were added to refs/heads/master by this push:
new 469168ed55e Remove Java 8 container (#35125)
469168ed55e is described below
commit 469168ed55ed0fcd3da7cab16b66be87ed16a9cc
Author: Yi Hu <[email protected]>
AuthorDate: Tue Jun 3 11:46:41 2025 -0400
Remove Java 8 container (#35125)
---
.../workflows/beam_Publish_Beam_SDK_Snapshots.yml | 1 -
.../xlang_KafkaIO_Python.txt | 2 +-
build.gradle.kts | 2 +-
.../org/apache/beam/gradle/BeamModulePlugin.groovy | 2 +-
.../google-cloud-dataflow-java/arm/build.gradle | 1 -
runners/google-cloud-dataflow-java/build.gradle | 1 -
sdks/java/container/build.gradle | 1 -
sdks/java/container/java8/build.gradle | 24 -----------
.../java/container/java8/java8-security.properties | 47 ----------------------
.../container/java8/option-java8-security.json | 9 -----
.../beam/sdk/options/PortablePipelineOptions.java | 2 +-
.../apache_beam/examples/kafkataxi/README.md | 6 +--
.../Run Beam SQL with beam_sql magic.ipynb | 2 +-
sdks/python/test-suites/dataflow/common.gradle | 2 +-
settings.gradle.kts | 1 -
.../en/documentation/runtime/environments.md | 7 ++--
16 files changed, 12 insertions(+), 98 deletions(-)
diff --git a/.github/workflows/beam_Publish_Beam_SDK_Snapshots.yml
b/.github/workflows/beam_Publish_Beam_SDK_Snapshots.yml
index 8aead7937cf..49fcff4e91f 100644
--- a/.github/workflows/beam_Publish_Beam_SDK_Snapshots.yml
+++ b/.github/workflows/beam_Publish_Beam_SDK_Snapshots.yml
@@ -62,7 +62,6 @@ jobs:
job_phrase: ["N/A"]
container_task:
- "go:container"
- - "java:container:java8"
- "java:container:java11"
- "java:container:java17"
- "java:container:java21"
diff --git
a/.github/workflows/performance-tests-pipeline-options/xlang_KafkaIO_Python.txt
b/.github/workflows/performance-tests-pipeline-options/xlang_KafkaIO_Python.txt
index d0100ffbfc3..603f2fcc79c 100644
---
a/.github/workflows/performance-tests-pipeline-options/xlang_KafkaIO_Python.txt
+++
b/.github/workflows/performance-tests-pipeline-options/xlang_KafkaIO_Python.txt
@@ -17,7 +17,7 @@
--runner=DataflowRunner
--region=us-central1
--temp_location=gs://temp-storage-for-perf-tests/
---sdk_harness_container_image_overrides=.*java.*,gcr.io/apache-beam-testing/beam-sdk/beam_java8_sdk:latest
+--sdk_harness_container_image_overrides=.*java.*,gcr.io/apache-beam-testing/beam-sdk/beam_java11_sdk:latest
--publish_to_big_query=true
--metrics_dataset=beam_performance
--metrics_table=python_kafkaio_results
diff --git a/build.gradle.kts b/build.gradle.kts
index a0844249bf0..af2c143f8c4 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -282,7 +282,7 @@ tasks.register("javaPreCommit") {
dependsOn(":runners:spark:3:job-server:build")
dependsOn(":runners:twister2:build")
dependsOn(":sdks:java:build-tools:build")
- dependsOn(":sdks:java:container:java8:docker")
+ dependsOn(":sdks:java:container:java11:docker")
dependsOn(":sdks:java:core:build")
dependsOn(":sdks:java:core:jmh:build")
dependsOn(":sdks:java:expansion-service:build")
diff --git
a/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy
b/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy
index c6ee2ab76d7..88023feb7ea 100644
--- a/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy
+++ b/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy
@@ -2371,7 +2371,7 @@ class BeamModulePlugin implements Plugin<Project> {
// development image at docker.io (see sdks/CONTAINERS.md):
//
// format: apache/beam_$NAME_sdk:latest
- // ie: apache/beam_python3.7_sdk:latest apache/beam_java8_sdk:latest
apache/beam_go_sdk:latest
+ // ie: apache/beam_python3.12_sdk:latest apache/beam_java21_sdk:latest
apache/beam_go_sdk:latest
//
// Both the root and tag can be defined using properties or explicitly
provided.
project.ext.containerImageName = {
diff --git a/runners/google-cloud-dataflow-java/arm/build.gradle
b/runners/google-cloud-dataflow-java/arm/build.gradle
index ae63cdf8bdb..c5c907ae797 100644
--- a/runners/google-cloud-dataflow-java/arm/build.gradle
+++ b/runners/google-cloud-dataflow-java/arm/build.gradle
@@ -47,7 +47,6 @@ evaluationDependsOn(":sdks:java:io:google-cloud-platform")
evaluationDependsOn(":sdks:java:core")
evaluationDependsOn(":examples:java")
evaluationDependsOn(":runners:google-cloud-dataflow-java:worker")
-evaluationDependsOn(":sdks:java:container:java8")
evaluationDependsOn(":sdks:java:container:java11")
processResources {
diff --git a/runners/google-cloud-dataflow-java/build.gradle
b/runners/google-cloud-dataflow-java/build.gradle
index 9e24c0db09c..63125a68efb 100644
--- a/runners/google-cloud-dataflow-java/build.gradle
+++ b/runners/google-cloud-dataflow-java/build.gradle
@@ -48,7 +48,6 @@ evaluationDependsOn(":sdks:java:io:google-cloud-platform")
evaluationDependsOn(":sdks:java:core")
evaluationDependsOn(":examples:java")
evaluationDependsOn(":runners:google-cloud-dataflow-java:worker")
-evaluationDependsOn(":sdks:java:container:java8")
evaluationDependsOn(":sdks:java:container:java11")
ext.dataflowLegacyEnvironmentMajorVersion = '8'
diff --git a/sdks/java/container/build.gradle b/sdks/java/container/build.gradle
index ac4104638b6..bc9bc45ec37 100644
--- a/sdks/java/container/build.gradle
+++ b/sdks/java/container/build.gradle
@@ -80,7 +80,6 @@ artifacts {
}
task pushAll {
- dependsOn ":sdks:java:container:java8:docker"
dependsOn ":sdks:java:container:java11:docker"
dependsOn ":sdks:java:container:java17:docker"
dependsOn ":sdks:java:container:java21:docker"
diff --git a/sdks/java/container/java8/build.gradle
b/sdks/java/container/java8/build.gradle
deleted file mode 100644
index 9d105648240..00000000000
--- a/sdks/java/container/java8/build.gradle
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * License); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-project.ext {
- imageJavaVersion = '8'
-}
-
-// Load the main build script which contains all build logic.
-apply from: "../common.gradle"
\ No newline at end of file
diff --git a/sdks/java/container/java8/java8-security.properties
b/sdks/java/container/java8/java8-security.properties
deleted file mode 100644
index f637d3ef756..00000000000
--- a/sdks/java/container/java8/java8-security.properties
+++ /dev/null
@@ -1,47 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# Java 8 java.security properties file override for JVM
-# base properties derived from:
-# openjdk version "1.8.0_342"
-# OpenJDK Runtime Environment (build 1.8.0_342-b07)
-# OpenJDK 64-Bit Server VM (build 25.342-b07, mixed mode)
-
-# Java has now disabled TLSv1 and TLSv1.1. We specifically put it in the
-# legacy algorithms list to allow it to be used if something better is not
-# available (e.g. TLSv1.2). This will prevent breakages for existing users
-# (for example JDBC with MySQL). See
-# https://bugs.java.com/bugdatabase/view_bug.do?bug_id=JDK-8202343
-# for additional details.
-jdk.tls.disabledAlgorithms=SSLv3, RC4, DES, MD5withRSA, \
- DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, \
- include jdk.disabled.namedCurves
-
-jdk.tls.legacyAlgorithms= \
- K_NULL, C_NULL, M_NULL, \
- DH_anon, ECDH_anon, \
- RC4_128, RC4_40, DES_CBC, DES40_CBC, \
- 3DES_EDE_CBC, TLSv1, TLSv1.1
-
-# /dev/random blocks in virtualized environments due to lack of
-# good entropy sources, which makes SecureRandom use impractical.
-# In particular, that affects the performance of HTTPS that relies
-# on SecureRandom.
-#
-# Due to that, /dev/urandom is used as the default.
-#
-# See http://www.2uo.de/myths-about-urandom/ for some background
-# on security of /dev/urandom on Linux.
-securerandom.source=file:/dev/./urandom
\ No newline at end of file
diff --git a/sdks/java/container/java8/option-java8-security.json
b/sdks/java/container/java8/option-java8-security.json
deleted file mode 100644
index 47f2938bf7c..00000000000
--- a/sdks/java/container/java8/option-java8-security.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "name": "java-security",
- "enabled": true,
- "options": {
- "properties": {
- "java.security.properties":
"/opt/apache/beam/options/java8-security.properties"
- }
- }
-}
diff --git
a/sdks/java/core/src/main/java/org/apache/beam/sdk/options/PortablePipelineOptions.java
b/sdks/java/core/src/main/java/org/apache/beam/sdk/options/PortablePipelineOptions.java
index ec82aebbef6..bfeddf5c697 100644
---
a/sdks/java/core/src/main/java/org/apache/beam/sdk/options/PortablePipelineOptions.java
+++
b/sdks/java/core/src/main/java/org/apache/beam/sdk/options/PortablePipelineOptions.java
@@ -98,7 +98,7 @@ public interface PortablePipelineOptions extends
PipelineOptions, FileStagingOpt
@Description(
"Options for configuring the default environment of portable workers.
This environment will be used for all executable stages except for external
transforms. Recognized options depend on the value of defaultEnvironmentType:\n"
- + "DOCKER: docker_container_image (optional), e.g.
'apache/beam_java8_sdk:latest'. If unset, will default to the latest official
release of the Beam Java SDK corresponding to your Java runtime version (8 or
11).\n"
+ + "DOCKER: docker_container_image (optional), e.g.
'apache/beam_java21_sdk:latest'. If unset, will default to the latest official
release of the Beam Java SDK corresponding to your Java runtime version (11, 17
or 21).\n"
+ "EXTERNAL: external_service_address (required), e.g.
'localhost:50000'\n"
+ "PROCESS: process_command (required), process_variables
(optional). process_command must be the location of an executable file that
starts a Beam SDK worker. process_variables is a comma-separated list of
environment variable assignments which will be set before running the process,
e.g. 'FOO=a,BAR=b'\n\n"
+ "environmentOptions and defaultEnvironmentConfig are mutually
exclusive. Prefer environmentOptions.")
diff --git a/sdks/python/apache_beam/examples/kafkataxi/README.md
b/sdks/python/apache_beam/examples/kafkataxi/README.md
index 72a8d8f85c0..86924200b1f 100644
--- a/sdks/python/apache_beam/examples/kafkataxi/README.md
+++ b/sdks/python/apache_beam/examples/kafkataxi/README.md
@@ -134,8 +134,8 @@ prerequisites and additional information.
```sh
export DOCKER_ROOT="Your Docker Repository Root"
-./gradlew :sdks:java:container:java8:docker
-Pdocker-repository-root=$DOCKER_ROOT -Pdocker-tag=latest
-docker push $DOCKER_ROOT/beam_java8_sdk:latest
+./gradlew :sdks:java:container:java11:docker
-Pdocker-repository-root=$DOCKER_ROOT -Pdocker-tag=latest
+docker push $DOCKER_ROOT/beam_java11_sdk:latest
```
For portable Flink/Spark in local mode, instead of above command just build the
@@ -184,5 +184,5 @@ python -m apache_beam.examples.kafkataxi.kafka_taxi \
--num_workers $NUM_WORKERS \
--job_name $JOB_NAME \
--bootstrap_servers $BOOTSTRAP_SERVER \
- --sdk_harness_container_image_overrides
".*java.*,${DOCKER_ROOT}/beam_java8_sdk:latest"
+ --sdk_harness_container_image_overrides
".*java.*,${DOCKER_ROOT}/beam_java11_sdk:latest"
```
diff --git a/sdks/python/apache_beam/runners/interactive/examples/Run Beam SQL
with beam_sql magic.ipynb
b/sdks/python/apache_beam/runners/interactive/examples/Run Beam SQL with
beam_sql magic.ipynb
index d68fa8cfb38..0a98f687947 100644
--- a/sdks/python/apache_beam/runners/interactive/examples/Run Beam SQL with
beam_sql magic.ipynb
+++ b/sdks/python/apache_beam/runners/interactive/examples/Run Beam SQL with
beam_sql magic.ipynb
@@ -94,7 +94,7 @@
"\n",
"- Have the Java expansion service shadowjar built. Go to the root
directory of your local beam repo and then execute:\n",
" `./gradlew :sdks:java:extensions:sql:expansion-service:shadowJar`.\n",
- "- Based on your jdk version, pull the docker image `docker pull
apache/beam_java11_sdk` or `docker pull apache/beam_java8_sdk`.\n",
+ "- Based on your jdk version, pull the docker image `docker pull
apache/beam_java11_sdk` or java17, java21.\n",
"- Then tag the image with your current Beam dev version. You can check
the dev version under `apache_beam.version.__version__`. For example, if you're
using jdk11 and dev version is `x.x.x.dev`, execute `docker image tag
apache/beam_java11_sdk:latest apache/beam_java11_sdk:x.x.x.dev`."
]
},
diff --git a/sdks/python/test-suites/dataflow/common.gradle
b/sdks/python/test-suites/dataflow/common.gradle
index c18b12654f7..7fc180fe135 100644
--- a/sdks/python/test-suites/dataflow/common.gradle
+++ b/sdks/python/test-suites/dataflow/common.gradle
@@ -629,7 +629,7 @@
project(":sdks:python:test-suites:xlang").ext.xlangTasks.each { taskMetadata ->
"--project=${gcpProject}",
"--region=${gcpRegion}",
"--sdk_container_image=gcr.io/apache-beam-testing/beam-sdk/beam_python${project.ext.pythonVersion}_sdk:latest",
-
"--sdk_harness_container_image_overrides=.*java.*,gcr.io/apache-beam-testing/beam-sdk/beam_java8_sdk:latest"
+
"--sdk_harness_container_image_overrides=.*java.*,gcr.io/apache-beam-testing/beam-sdk/beam_java11_sdk:latest"
],
pytestOptions: basicPytestOpts,
additionalDeps: taskMetadata.additionalDeps,
diff --git a/settings.gradle.kts b/settings.gradle.kts
index 4156d6d4619..8a9be3358a6 100644
--- a/settings.gradle.kts
+++ b/settings.gradle.kts
@@ -167,7 +167,6 @@ include(":sdks:java:bom:gcp")
include(":sdks:java:build-tools")
include(":sdks:java:container")
include(":sdks:java:container:agent")
-include(":sdks:java:container:java8")
include(":sdks:java:container:java11")
include(":sdks:java:container:java17")
include(":sdks:java:container:java21")
diff --git a/website/www/site/content/en/documentation/runtime/environments.md
b/website/www/site/content/en/documentation/runtime/environments.md
index 96eaa0e76b0..262be67d1cd 100644
--- a/website/www/site/content/en/documentation/runtime/environments.md
+++ b/website/www/site/content/en/documentation/runtime/environments.md
@@ -131,14 +131,13 @@ This method requires building image artifacts from Beam
source. For additional i
```
$> docker images --digests
REPOSITORY TAG DIGEST
IMAGE ID CREATED SIZE
- apache/beam_java8_sdk latest sha256:...
... 1 min ago ...
apache/beam_java11_sdk latest sha256:...
... 1 min ago ...
apache/beam_java17_sdk latest sha256:...
... 1 min ago ...
- apache/beam_python3.6_sdk latest sha256:...
... 1 min ago ...
- apache/beam_python3.7_sdk latest sha256:...
... 1 min ago ...
- apache/beam_python3.8_sdk latest sha256:...
... 1 min ago ...
+ apache/beam_java21_sdk latest sha256:...
... 1 min ago ...
apache/beam_python3.9_sdk latest sha256:...
... 1 min ago ...
apache/beam_python3.10_sdk latest sha256:...
... 1 min ago ...
+ apache/beam_python3.11_sdk latest sha256:...
... 1 min ago ...
+ apache/beam_python3.12_sdk latest sha256:...
... 1 min ago ...
apache/beam_go_sdk latest sha256:...
... 1 min ago ...
```