This is an automated email from the ASF dual-hosted git repository.

damccorm 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 ca96cb5ea42 Add Setup environment actions (#29026)
ca96cb5ea42 is described below

commit ca96cb5ea4220b4fe5d59cc51c750610f71974fc
Author: Aleksandr Dudko <[email protected]>
AuthorDate: Mon Oct 23 18:49:26 2023 +0400

    Add Setup environment actions (#29026)
    
    Co-authored-by: Andrey Devyatkin <[email protected]>
---
 .github/actions/setup-action/action.yml               |  4 +---
 .github/workflows/beam_CancelStaleDataflowJobs.yml    |  2 ++
 .github/workflows/beam_CleanUpGCPResources.yml        |  2 ++
 .github/workflows/beam_CleanUpPrebuiltSDKImages.yml   |  2 ++
 .../beam_IODatastoresCredentialsRotation.yml          |  2 ++
 .github/workflows/beam_Java_JMH.yml                   |  2 ++
 .../workflows/beam_Java_LoadTests_Combine_Smoke.yml   |  2 ++
 .../beam_LoadTests_Go_CoGBK_Dataflow_Batch.yml        |  2 ++
 .../workflows/beam_LoadTests_Go_CoGBK_Flink_batch.yml |  2 ++
 .../beam_LoadTests_Go_Combine_Dataflow_Batch.yml      |  2 ++
 .../beam_LoadTests_Go_GBK_Dataflow_Batch.yml          |  2 ++
 .../workflows/beam_LoadTests_Go_GBK_Flink_Batch.yml   |  2 ++
 .../beam_LoadTests_Go_ParDo_Dataflow_Batch.yml        |  2 ++
 .../workflows/beam_LoadTests_Go_ParDo_Flink_Batch.yml |  2 ++
 .../beam_LoadTests_Go_SideInput_Dataflow_Batch.yml    |  2 ++
 .../beam_LoadTests_Go_SideInput_Flink_Batch.yml       |  2 ++
 .../beam_LoadTests_Java_CoGBK_Dataflow_Batch.yml      |  2 ++
 .../beam_LoadTests_Java_CoGBK_Dataflow_Streaming.yml  |  2 ++
 ...ests_Java_CoGBK_SparkStructuredStreaming_Batch.yml |  2 ++
 .../beam_LoadTests_Java_Combine_Dataflow_Batch.yml    |  2 ++
 ...beam_LoadTests_Java_Combine_Dataflow_Streaming.yml |  2 ++
 ...ts_Java_Combine_SparkStructuredStreaming_Batch.yml |  2 ++
 .../beam_LoadTests_Java_GBK_Dataflow_Batch.yml        |  2 ++
 .../beam_LoadTests_Java_GBK_Dataflow_Streaming.yml    |  2 ++
 .github/workflows/beam_LoadTests_Java_GBK_Smoke.yml   |  2 ++
 ...dTests_Java_GBK_SparkStructuredStreaming_Batch.yml |  2 ++
 .../beam_LoadTests_Java_ParDo_Dataflow_Batch.yml      |  2 ++
 .../beam_LoadTests_Java_ParDo_Dataflow_Streaming.yml  |  2 ++
 ...ests_Java_ParDo_SparkStructuredStreaming_Batch.yml |  2 ++
 .../beam_LoadTests_Python_CoGBK_Flink_Batch.yml       |  6 +++---
 .../beam_LoadTests_Python_Combine_Dataflow_Batch.yml  |  6 +++---
 ...am_LoadTests_Python_FnApiRunner_Microbenchmark.yml |  6 +++---
 .github/workflows/beam_MetricsCredentialsRotation.yml |  2 ++
 .github/workflows/beam_PerformanceTests_AvroIOIT.yml  |  2 ++
 .../workflows/beam_PerformanceTests_AvroIOIT_HDFS.yml |  2 ++
 ...am_PerformanceTests_BigQueryIO_Batch_Java_Avro.yml |  2 ++
 ...am_PerformanceTests_BigQueryIO_Batch_Java_Json.yml |  2 ++
 ...eam_PerformanceTests_BigQueryIO_Streaming_Java.yml |  2 ++
 .github/workflows/beam_PerformanceTests_Cdap.yml      |  2 ++
 .../beam_PerformanceTests_Compressed_TextIOIT.yml     |  2 ++
 ...beam_PerformanceTests_Compressed_TextIOIT_HDFS.yml |  2 ++
 .../workflows/beam_PerformanceTests_HadoopFormat.yml  |  2 ++
 .github/workflows/beam_PerformanceTests_JDBC.yml      |  2 ++
 .github/workflows/beam_PerformanceTests_Kafka_IO.yml  |  2 ++
 .../beam_PerformanceTests_ManyFiles_TextIOIT.yml      |  2 ++
 .../beam_PerformanceTests_ManyFiles_TextIOIT_HDFS.yml |  2 ++
 .../workflows/beam_PerformanceTests_MongoDBIO_IT.yml  |  2 ++
 .../workflows/beam_PerformanceTests_ParquetIOIT.yml   |  2 ++
 .../beam_PerformanceTests_ParquetIOIT_HDFS.yml        |  2 ++
 .../beam_PerformanceTests_SparkReceiver_IO.yml        |  2 ++
 .../workflows/beam_PerformanceTests_TFRecordIOIT.yml  |  2 ++
 .../beam_PerformanceTests_TFRecordIOIT_HDFS.yml       |  2 ++
 .github/workflows/beam_PerformanceTests_TextIOIT.yml  |  2 ++
 .../workflows/beam_PerformanceTests_TextIOIT_HDFS.yml |  2 ++
 .github/workflows/beam_PerformanceTests_XmlIOIT.yml   |  2 ++
 .../workflows/beam_PerformanceTests_XmlIOIT_HDFS.yml  |  2 ++
 .../workflows/beam_PostCommit_BeamMetrics_Publish.yml |  2 ++
 .github/workflows/beam_PostCommit_Go.yml              |  2 ++
 .github/workflows/beam_PostCommit_Go_VR_Flink.yml     |  2 ++
 .github/workflows/beam_PostCommit_Go_VR_Spark.yml     |  2 ++
 .github/workflows/beam_PostCommit_Java.yml            |  2 ++
 .../workflows/beam_PostCommit_Java_Avro_Versions.yml  |  2 ++
 .../beam_PostCommit_Java_BigQueryEarlyRollout.yml     |  2 ++
 .github/workflows/beam_PostCommit_Java_DataflowV1.yml |  5 ++---
 .github/workflows/beam_PostCommit_Java_DataflowV2.yml |  2 ++
 .../beam_PostCommit_Java_Examples_Dataflow.yml        |  2 ++
 .../beam_PostCommit_Java_Examples_Dataflow_Java.yml   |  5 ++---
 .../beam_PostCommit_Java_Examples_Dataflow_V2.yml     |  2 ++
 ...beam_PostCommit_Java_Examples_Dataflow_V2_Java.yml |  5 ++---
 .../beam_PostCommit_Java_Examples_Direct.yml          |  7 +++----
 .../workflows/beam_PostCommit_Java_Examples_Spark.yml |  7 +++----
 .../beam_PostCommit_Java_Hadoop_Versions.yml          |  7 +++----
 .../workflows/beam_PostCommit_Java_InfluxDbIO_IT.yml  |  2 ++
 .../beam_PostCommit_Java_Jpms_Dataflow_Java11.yml     |  7 +++----
 .../beam_PostCommit_Java_Jpms_Dataflow_Java17.yml     |  5 ++---
 .../beam_PostCommit_Java_Jpms_Direct_Java11.yml       |  7 +++----
 .../beam_PostCommit_Java_Jpms_Direct_Java17.yml       |  5 ++---
 .../beam_PostCommit_Java_Jpms_Flink_Java11.yml        |  7 +++----
 .../beam_PostCommit_Java_Jpms_Spark_Java11.yml        |  7 +++----
 .../beam_PostCommit_Java_Nexmark_Dataflow.yml         |  2 ++
 .../beam_PostCommit_Java_Nexmark_Dataflow_V2.yml      |  2 ++
 .../beam_PostCommit_Java_Nexmark_Dataflow_V2_Java.yml |  5 ++---
 .../workflows/beam_PostCommit_Java_Nexmark_Direct.yml |  2 ++
 .../workflows/beam_PostCommit_Java_Nexmark_Flink.yml  |  2 ++
 .../workflows/beam_PostCommit_Java_Nexmark_Spark.yml  |  2 ++
 .../beam_PostCommit_Java_PVR_Flink_Streaming.yml      |  2 ++
 .github/workflows/beam_PostCommit_Java_PVR_Samza.yml  |  2 ++
 .../beam_PostCommit_Java_PVR_Spark3_Streaming.yml     |  2 ++
 .github/workflows/beam_PostCommit_Java_Sickbay.yml    |  2 ++
 .../beam_PostCommit_Java_SingleStoreIO_IT.yml         |  2 ++
 .../workflows/beam_PostCommit_Java_Tpcds_Dataflow.yml |  2 ++
 .../workflows/beam_PostCommit_Java_Tpcds_Flink.yml    |  2 ++
 .../workflows/beam_PostCommit_Java_Tpcds_Spark.yml    |  2 ++
 .../beam_PostCommit_Java_ValidatesRunner_Dataflow.yml |  7 +++----
 ...mit_Java_ValidatesRunner_Dataflow_JavaVersions.yml |  5 ++---
 ...Commit_Java_ValidatesRunner_Dataflow_Streaming.yml |  7 +++----
 ...am_PostCommit_Java_ValidatesRunner_Dataflow_V2.yml |  7 +++----
 ...mit_Java_ValidatesRunner_Dataflow_V2_Streaming.yml |  7 +++----
 .../beam_PostCommit_Java_ValidatesRunner_Direct.yml   |  7 +++----
 ...ommit_Java_ValidatesRunner_Direct_JavaVersions.yml |  5 ++---
 ...m_PostCommit_Java_ValidatesRunner_Flink_Java11.yml |  5 ++---
 .../beam_PostCommit_Java_ValidatesRunner_Samza.yml    |  7 +++----
 .../beam_PostCommit_Java_ValidatesRunner_Spark.yml    |  7 +++----
 ..._Java_ValidatesRunner_SparkStructuredStreaming.yml |  7 +++----
 ...m_PostCommit_Java_ValidatesRunner_Spark_Java11.yml |  5 ++---
 .../beam_PostCommit_Java_ValidatesRunner_Twister2.yml |  7 +++----
 .../beam_PostCommit_Java_ValidatesRunner_ULR.yml      | 12 ++++--------
 .github/workflows/beam_PostCommit_Javadoc.yml         |  2 ++
 .../workflows/beam_PostCommit_PortableJar_Flink.yml   |  4 ++--
 .../workflows/beam_PostCommit_PortableJar_Spark.yml   |  4 ++--
 .github/workflows/beam_PostCommit_Python.yml          |  4 ++--
 .github/workflows/beam_PostCommit_Python_Arm.yml      |  4 ++--
 .../beam_PostCommit_Python_Nexmark_Direct.yml         |  4 ++--
 .../beam_PostCommit_Python_Xlang_Gcp_Dataflow.yml     |  4 ++--
 .../beam_PostCommit_Python_Xlang_Gcp_Direct.yml       |  4 ++--
 .../beam_PostCommit_Python_Xlang_IO_Dataflow.yml      |  4 ++--
 .github/workflows/beam_PostCommit_SQL.yml             |  2 ++
 .github/workflows/beam_PostCommit_Sickbay_Python.yml  |  4 ++--
 .../beam_PostCommit_TransformService_Direct.yml       | 10 +++-------
 .github/workflows/beam_PostCommit_Website_Publish.yml |  2 ++
 .github/workflows/beam_PostCommit_Website_Test.yml    |  2 ++
 .github/workflows/beam_PostCommit_XVR_Direct.yml      |  4 ++--
 .github/workflows/beam_PostCommit_XVR_Flink.yml       |  4 ++--
 .../beam_PostCommit_XVR_GoUsingJava_Dataflow.yml      |  6 +++---
 .../beam_PostCommit_XVR_JavaUsingPython_Dataflow.yml  |  4 ++--
 ...eam_PostCommit_XVR_PythonUsingJavaSQL_Dataflow.yml |  4 ++--
 .../beam_PostCommit_XVR_PythonUsingJava_Dataflow.yml  |  4 ++--
 .github/workflows/beam_PostCommit_XVR_Samza.yml       |  4 ++--
 .github/workflows/beam_PostCommit_XVR_Spark3.yml      |  4 ++--
 .github/workflows/beam_PreCommit_Java.yml             |  2 ++
 ..._PreCommit_Java_Amazon-Web-Services2_IO_Direct.yml |  2 ++
 ...m_PreCommit_Java_Amazon-Web-Services_IO_Direct.yml |  2 ++
 .../workflows/beam_PreCommit_Java_Amqp_IO_Direct.yml  |  2 ++
 .../workflows/beam_PreCommit_Java_Azure_IO_Direct.yml |  2 ++
 .../beam_PreCommit_Java_Cassandra_IO_Direct.yml       |  2 ++
 .../workflows/beam_PreCommit_Java_Cdap_IO_Direct.yml  |  2 ++
 .../beam_PreCommit_Java_Clickhouse_IO_Direct.yml      |  2 ++
 .../workflows/beam_PreCommit_Java_Csv_IO_Direct.yml   |  2 ++
 .../beam_PreCommit_Java_Debezium_IO_Direct.yml        |  2 ++
 .../beam_PreCommit_Java_ElasticSearch_IO_Direct.yml   |  2 ++
 .../beam_PreCommit_Java_Examples_Dataflow_Java11.yml  |  7 +++----
 .../beam_PreCommit_Java_Examples_Dataflow_Java17.yml  |  5 ++---
 ...PreCommit_Java_File-schema-transform_IO_Direct.yml |  2 ++
 .../workflows/beam_PreCommit_Java_GCP_IO_Direct.yml   |  2 ++
 .../workflows/beam_PreCommit_Java_HBase_IO_Direct.yml |  2 ++
 .../beam_PreCommit_Java_HCatalog_IO_Direct.yml        |  2 ++
 .../beam_PreCommit_Java_Hadoop_IO_Direct.yml          |  2 ++
 .github/workflows/beam_PreCommit_Java_IOs_Direct.yml  |  2 ++
 .../beam_PreCommit_Java_InfluxDb_IO_Direct.yml        |  2 ++
 .../workflows/beam_PreCommit_Java_JDBC_IO_Direct.yml  |  2 ++
 .../workflows/beam_PreCommit_Java_Jms_IO_Direct.yml   |  2 ++
 .../workflows/beam_PreCommit_Java_Kafka_IO_Direct.yml |  2 ++
 .../beam_PreCommit_Java_Kinesis_IO_Direct.yml         |  2 ++
 .../workflows/beam_PreCommit_Java_Kudu_IO_Direct.yml  |  2 ++
 .../beam_PreCommit_Java_MongoDb_IO_Direct.yml         |  2 ++
 .../workflows/beam_PreCommit_Java_Mqtt_IO_Direct.yml  |  2 ++
 .../workflows/beam_PreCommit_Java_Neo4j_IO_Direct.yml |  2 ++
 .../workflows/beam_PreCommit_Java_PVR_Flink_Batch.yml |  2 ++
 .../beam_PreCommit_Java_PVR_Flink_Docker.yml          |  2 ++
 .../beam_PreCommit_Java_Parquet_IO_Direct.yml         |  2 ++
 .../beam_PreCommit_Java_Pulsar_IO_Direct.yml          |  2 ++
 .../beam_PreCommit_Java_RabbitMq_IO_Direct.yml        |  2 ++
 .../workflows/beam_PreCommit_Java_Redis_IO_Direct.yml |  2 ++
 .../beam_PreCommit_Java_SingleStore_IO_Direct.yml     |  2 ++
 .../beam_PreCommit_Java_Snowflake_IO_Direct.yml       |  2 ++
 .../workflows/beam_PreCommit_Java_Solr_IO_Direct.yml  |  2 ++
 .../workflows/beam_PreCommit_Java_Spark3_Versions.yml |  9 +++------
 .../beam_PreCommit_Java_Splunk_IO_Direct.yml          |  2 ++
 .../beam_PreCommit_Java_Thrift_IO_Direct.yml          |  2 ++
 .../workflows/beam_PreCommit_Java_Tika_IO_Direct.yml  |  2 ++
 .github/workflows/beam_PreCommit_Kotlin_Examples.yml  |  9 +++------
 .github/workflows/beam_PreCommit_Portable_Python.yml  | 12 +++---------
 .github/workflows/beam_PreCommit_Python_PVR_Flink.yml |  4 ++--
 .github/workflows/beam_PreCommit_SQL.yml              |  7 +++----
 .github/workflows/beam_PreCommit_SQL_Java11.yml       | 17 +++++------------
 .github/workflows/beam_PreCommit_SQL_Java17.yml       | 19 ++++++-------------
 .github/workflows/beam_PreCommit_Spotless.yml         |  2 ++
 .github/workflows/beam_Prober_CommunityMetrics.yml    |  2 ++
 .github/workflows/beam_Publish_Docker_Snapshots.yml   |  2 ++
 179 files changed, 392 insertions(+), 215 deletions(-)

diff --git a/.github/actions/setup-action/action.yml 
b/.github/actions/setup-action/action.yml
index da69dd9a97d..743e89a931d 100644
--- a/.github/actions/setup-action/action.yml
+++ b/.github/actions/setup-action/action.yml
@@ -69,6 +69,4 @@ runs:
     - name: expose gcloud path
       shell: bash
       run: |
-        echo 
KUBELET_GCLOUD_CONFIG_PATH=/var/lib/kubelet/pods/$POD_UID/volumes/kubernetes.io~empty-dir/gcloud
 >> $GITHUB_ENV
-    - name: Setup environment
-      uses: ./.github/actions/setup-environment-action
+        echo 
KUBELET_GCLOUD_CONFIG_PATH=/var/lib/kubelet/pods/$POD_UID/volumes/kubernetes.io~empty-dir/gcloud
 >> $GITHUB_ENV
\ No newline at end of file
diff --git a/.github/workflows/beam_CancelStaleDataflowJobs.yml 
b/.github/workflows/beam_CancelStaleDataflowJobs.yml
index 63e780c2fef..46ff76df6b5 100644
--- a/.github/workflows/beam_CancelStaleDataflowJobs.yml
+++ b/.github/workflows/beam_CancelStaleDataflowJobs.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         id: auth
         uses: google-github-actions/auth@v1
diff --git a/.github/workflows/beam_CleanUpGCPResources.yml 
b/.github/workflows/beam_CleanUpGCPResources.yml
index 9aa92f0003c..a7267ad1e0e 100644
--- a/.github/workflows/beam_CleanUpGCPResources.yml
+++ b/.github/workflows/beam_CleanUpGCPResources.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         id: auth
         uses: google-github-actions/auth@v1
diff --git a/.github/workflows/beam_CleanUpPrebuiltSDKImages.yml 
b/.github/workflows/beam_CleanUpPrebuiltSDKImages.yml
index 345624f063b..f327f09c011 100644
--- a/.github/workflows/beam_CleanUpPrebuiltSDKImages.yml
+++ b/.github/workflows/beam_CleanUpPrebuiltSDKImages.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         id: auth
         uses: google-github-actions/auth@v1
diff --git a/.github/workflows/beam_IODatastoresCredentialsRotation.yml 
b/.github/workflows/beam_IODatastoresCredentialsRotation.yml
index 36e6b238cdf..7a402e426fa 100644
--- a/.github/workflows/beam_IODatastoresCredentialsRotation.yml
+++ b/.github/workflows/beam_IODatastoresCredentialsRotation.yml
@@ -66,6 +66,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }}
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Starting credential rotation
         run: |
           gcloud container clusters update io-datastores 
--start-credential-rotation --zone=us-central1-a --quiet
diff --git a/.github/workflows/beam_Java_JMH.yml 
b/.github/workflows/beam_Java_JMH.yml
index 07beb1dadba..a25c3fafaf9 100644
--- a/.github/workflows/beam_Java_JMH.yml
+++ b/.github/workflows/beam_Java_JMH.yml
@@ -58,6 +58,8 @@ jobs:
     name: "beam_Java_JMH"
     steps:
       - uses: actions/checkout@v3
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run the Java JMH micro-benchmark harness suite
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_Java_LoadTests_Combine_Smoke.yml 
b/.github/workflows/beam_Java_LoadTests_Combine_Smoke.yml
index 19d5b0f7174..b252f4e7b5c 100644
--- a/.github/workflows/beam_Java_LoadTests_Combine_Smoke.yml
+++ b/.github/workflows/beam_Java_LoadTests_Combine_Smoke.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Go_CoGBK_Dataflow_Batch.yml 
b/.github/workflows/beam_LoadTests_Go_CoGBK_Dataflow_Batch.yml
index 61758111f59..e7e5b90107d 100644
--- a/.github/workflows/beam_LoadTests_Go_CoGBK_Dataflow_Batch.yml
+++ b/.github/workflows/beam_LoadTests_Go_CoGBK_Dataflow_Batch.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Go_CoGBK_Flink_batch.yml 
b/.github/workflows/beam_LoadTests_Go_CoGBK_Flink_batch.yml
index 05b61f285cd..feec436bcd5 100644
--- a/.github/workflows/beam_LoadTests_Go_CoGBK_Flink_batch.yml
+++ b/.github/workflows/beam_LoadTests_Go_CoGBK_Flink_batch.yml
@@ -79,6 +79,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Go_Combine_Dataflow_Batch.yml 
b/.github/workflows/beam_LoadTests_Go_Combine_Dataflow_Batch.yml
index 7fd8b8bcf81..93b65ac99c6 100644
--- a/.github/workflows/beam_LoadTests_Go_Combine_Dataflow_Batch.yml
+++ b/.github/workflows/beam_LoadTests_Go_Combine_Dataflow_Batch.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Go_GBK_Dataflow_Batch.yml 
b/.github/workflows/beam_LoadTests_Go_GBK_Dataflow_Batch.yml
index fbabc8e4682..476338d3df7 100644
--- a/.github/workflows/beam_LoadTests_Go_GBK_Dataflow_Batch.yml
+++ b/.github/workflows/beam_LoadTests_Go_GBK_Dataflow_Batch.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Go_GBK_Flink_Batch.yml 
b/.github/workflows/beam_LoadTests_Go_GBK_Flink_Batch.yml
index 37ae1e419c5..6f17a4ba6bb 100644
--- a/.github/workflows/beam_LoadTests_Go_GBK_Flink_Batch.yml
+++ b/.github/workflows/beam_LoadTests_Go_GBK_Flink_Batch.yml
@@ -79,6 +79,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Go_ParDo_Dataflow_Batch.yml 
b/.github/workflows/beam_LoadTests_Go_ParDo_Dataflow_Batch.yml
index 4da33c5c923..e5b33baf568 100644
--- a/.github/workflows/beam_LoadTests_Go_ParDo_Dataflow_Batch.yml
+++ b/.github/workflows/beam_LoadTests_Go_ParDo_Dataflow_Batch.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Go_ParDo_Flink_Batch.yml 
b/.github/workflows/beam_LoadTests_Go_ParDo_Flink_Batch.yml
index 666799bfc65..ba544420a12 100644
--- a/.github/workflows/beam_LoadTests_Go_ParDo_Flink_Batch.yml
+++ b/.github/workflows/beam_LoadTests_Go_ParDo_Flink_Batch.yml
@@ -79,6 +79,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Go_SideInput_Dataflow_Batch.yml 
b/.github/workflows/beam_LoadTests_Go_SideInput_Dataflow_Batch.yml
index 876aaaab2ed..439bb47fbd0 100644
--- a/.github/workflows/beam_LoadTests_Go_SideInput_Dataflow_Batch.yml
+++ b/.github/workflows/beam_LoadTests_Go_SideInput_Dataflow_Batch.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Go_SideInput_Flink_Batch.yml 
b/.github/workflows/beam_LoadTests_Go_SideInput_Flink_Batch.yml
index 592af7e8667..5be573e0e0b 100644
--- a/.github/workflows/beam_LoadTests_Go_SideInput_Flink_Batch.yml
+++ b/.github/workflows/beam_LoadTests_Go_SideInput_Flink_Batch.yml
@@ -79,6 +79,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Java_CoGBK_Dataflow_Batch.yml 
b/.github/workflows/beam_LoadTests_Java_CoGBK_Dataflow_Batch.yml
index 8677f6f81f7..27e6a8ad912 100644
--- a/.github/workflows/beam_LoadTests_Java_CoGBK_Dataflow_Batch.yml
+++ b/.github/workflows/beam_LoadTests_Java_CoGBK_Dataflow_Batch.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Java_CoGBK_Dataflow_Streaming.yml 
b/.github/workflows/beam_LoadTests_Java_CoGBK_Dataflow_Streaming.yml
index ed1ae6b61e4..27cc98379bc 100644
--- a/.github/workflows/beam_LoadTests_Java_CoGBK_Dataflow_Streaming.yml
+++ b/.github/workflows/beam_LoadTests_Java_CoGBK_Dataflow_Streaming.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git 
a/.github/workflows/beam_LoadTests_Java_CoGBK_SparkStructuredStreaming_Batch.yml
 
b/.github/workflows/beam_LoadTests_Java_CoGBK_SparkStructuredStreaming_Batch.yml
index 7f1935267e9..b77c0aefe95 100644
--- 
a/.github/workflows/beam_LoadTests_Java_CoGBK_SparkStructuredStreaming_Batch.yml
+++ 
b/.github/workflows/beam_LoadTests_Java_CoGBK_SparkStructuredStreaming_Batch.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Java_Combine_Dataflow_Batch.yml 
b/.github/workflows/beam_LoadTests_Java_Combine_Dataflow_Batch.yml
index 8c91375b47d..91ccdce3f39 100644
--- a/.github/workflows/beam_LoadTests_Java_Combine_Dataflow_Batch.yml
+++ b/.github/workflows/beam_LoadTests_Java_Combine_Dataflow_Batch.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git 
a/.github/workflows/beam_LoadTests_Java_Combine_Dataflow_Streaming.yml 
b/.github/workflows/beam_LoadTests_Java_Combine_Dataflow_Streaming.yml
index d6520646fcd..243cb94d9d6 100644
--- a/.github/workflows/beam_LoadTests_Java_Combine_Dataflow_Streaming.yml
+++ b/.github/workflows/beam_LoadTests_Java_Combine_Dataflow_Streaming.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git 
a/.github/workflows/beam_LoadTests_Java_Combine_SparkStructuredStreaming_Batch.yml
 
b/.github/workflows/beam_LoadTests_Java_Combine_SparkStructuredStreaming_Batch.yml
index d4862ad45c0..dcf6015f62a 100644
--- 
a/.github/workflows/beam_LoadTests_Java_Combine_SparkStructuredStreaming_Batch.yml
+++ 
b/.github/workflows/beam_LoadTests_Java_Combine_SparkStructuredStreaming_Batch.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Java_GBK_Dataflow_Batch.yml 
b/.github/workflows/beam_LoadTests_Java_GBK_Dataflow_Batch.yml
index 403deba2f0a..25a48781e08 100644
--- a/.github/workflows/beam_LoadTests_Java_GBK_Dataflow_Batch.yml
+++ b/.github/workflows/beam_LoadTests_Java_GBK_Dataflow_Batch.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Java_GBK_Dataflow_Streaming.yml 
b/.github/workflows/beam_LoadTests_Java_GBK_Dataflow_Streaming.yml
index 483c06cf821..9d8ccf279a1 100644
--- a/.github/workflows/beam_LoadTests_Java_GBK_Dataflow_Streaming.yml
+++ b/.github/workflows/beam_LoadTests_Java_GBK_Dataflow_Streaming.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Java_GBK_Smoke.yml 
b/.github/workflows/beam_LoadTests_Java_GBK_Smoke.yml
index 251291163ef..cf31693a788 100644
--- a/.github/workflows/beam_LoadTests_Java_GBK_Smoke.yml
+++ b/.github/workflows/beam_LoadTests_Java_GBK_Smoke.yml
@@ -66,6 +66,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git 
a/.github/workflows/beam_LoadTests_Java_GBK_SparkStructuredStreaming_Batch.yml 
b/.github/workflows/beam_LoadTests_Java_GBK_SparkStructuredStreaming_Batch.yml
index de66760e529..eeba909a13e 100644
--- 
a/.github/workflows/beam_LoadTests_Java_GBK_SparkStructuredStreaming_Batch.yml
+++ 
b/.github/workflows/beam_LoadTests_Java_GBK_SparkStructuredStreaming_Batch.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Java_ParDo_Dataflow_Batch.yml 
b/.github/workflows/beam_LoadTests_Java_ParDo_Dataflow_Batch.yml
index ebc30fb0efa..5f2eaabae5d 100644
--- a/.github/workflows/beam_LoadTests_Java_ParDo_Dataflow_Batch.yml
+++ b/.github/workflows/beam_LoadTests_Java_ParDo_Dataflow_Batch.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Java_ParDo_Dataflow_Streaming.yml 
b/.github/workflows/beam_LoadTests_Java_ParDo_Dataflow_Streaming.yml
index 6dec9beca4b..8279643c0d2 100644
--- a/.github/workflows/beam_LoadTests_Java_ParDo_Dataflow_Streaming.yml
+++ b/.github/workflows/beam_LoadTests_Java_ParDo_Dataflow_Streaming.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git 
a/.github/workflows/beam_LoadTests_Java_ParDo_SparkStructuredStreaming_Batch.yml
 
b/.github/workflows/beam_LoadTests_Java_ParDo_SparkStructuredStreaming_Batch.yml
index 26c1c88dd89..8e379324fc0 100644
--- 
a/.github/workflows/beam_LoadTests_Java_ParDo_SparkStructuredStreaming_Batch.yml
+++ 
b/.github/workflows/beam_LoadTests_Java_ParDo_SparkStructuredStreaming_Batch.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Python_CoGBK_Flink_Batch.yml 
b/.github/workflows/beam_LoadTests_Python_CoGBK_Flink_Batch.yml
index d29f27fb86f..87de130bd4e 100644
--- a/.github/workflows/beam_LoadTests_Python_CoGBK_Flink_Batch.yml
+++ b/.github/workflows/beam_LoadTests_Python_CoGBK_Flink_Batch.yml
@@ -79,10 +79,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          python-version: '3.8'
+          python-version: 3.8
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_LoadTests_Python_Combine_Dataflow_Batch.yml 
b/.github/workflows/beam_LoadTests_Python_Combine_Dataflow_Batch.yml
index 28bba715f4b..3aa9b35679e 100644
--- a/.github/workflows/beam_LoadTests_Python_Combine_Dataflow_Batch.yml
+++ b/.github/workflows/beam_LoadTests_Python_Combine_Dataflow_Batch.yml
@@ -69,10 +69,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          python-version: '3.8'
+          python-version: 3.8
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git 
a/.github/workflows/beam_LoadTests_Python_FnApiRunner_Microbenchmark.yml 
b/.github/workflows/beam_LoadTests_Python_FnApiRunner_Microbenchmark.yml
index 8d111a9f4e6..5755f25a47b 100644
--- a/.github/workflows/beam_LoadTests_Python_FnApiRunner_Microbenchmark.yml
+++ b/.github/workflows/beam_LoadTests_Python_FnApiRunner_Microbenchmark.yml
@@ -69,10 +69,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          python-version: '3.8'
+          python-version: 3.8
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_MetricsCredentialsRotation.yml 
b/.github/workflows/beam_MetricsCredentialsRotation.yml
index 9bd795f0c2a..7b9727053aa 100644
--- a/.github/workflows/beam_MetricsCredentialsRotation.yml
+++ b/.github/workflows/beam_MetricsCredentialsRotation.yml
@@ -66,6 +66,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }}
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Starting credential rotation
         run: |
           gcloud container clusters update metrics --start-credential-rotation 
--zone=us-central1-a --quiet
diff --git a/.github/workflows/beam_PerformanceTests_AvroIOIT.yml 
b/.github/workflows/beam_PerformanceTests_AvroIOIT.yml
index 4c6ac900c54..8c781b86726 100644
--- a/.github/workflows/beam_PerformanceTests_AvroIOIT.yml
+++ b/.github/workflows/beam_PerformanceTests_AvroIOIT.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_PerformanceTests_AvroIOIT_HDFS.yml 
b/.github/workflows/beam_PerformanceTests_AvroIOIT_HDFS.yml
index d3f881e9e07..e137af01554 100644
--- a/.github/workflows/beam_PerformanceTests_AvroIOIT_HDFS.yml
+++ b/.github/workflows/beam_PerformanceTests_AvroIOIT_HDFS.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         id: auth
         uses: google-github-actions/auth@v1
diff --git 
a/.github/workflows/beam_PerformanceTests_BigQueryIO_Batch_Java_Avro.yml 
b/.github/workflows/beam_PerformanceTests_BigQueryIO_Batch_Java_Avro.yml
index 599e1804011..00a817c94e8 100644
--- a/.github/workflows/beam_PerformanceTests_BigQueryIO_Batch_Java_Avro.yml
+++ b/.github/workflows/beam_PerformanceTests_BigQueryIO_Batch_Java_Avro.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git 
a/.github/workflows/beam_PerformanceTests_BigQueryIO_Batch_Java_Json.yml 
b/.github/workflows/beam_PerformanceTests_BigQueryIO_Batch_Java_Json.yml
index a4811864164..6cb5e8f51fe 100644
--- a/.github/workflows/beam_PerformanceTests_BigQueryIO_Batch_Java_Json.yml
+++ b/.github/workflows/beam_PerformanceTests_BigQueryIO_Batch_Java_Json.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git 
a/.github/workflows/beam_PerformanceTests_BigQueryIO_Streaming_Java.yml 
b/.github/workflows/beam_PerformanceTests_BigQueryIO_Streaming_Java.yml
index 8d0b3adb914..f8c978cff14 100644
--- a/.github/workflows/beam_PerformanceTests_BigQueryIO_Streaming_Java.yml
+++ b/.github/workflows/beam_PerformanceTests_BigQueryIO_Streaming_Java.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_PerformanceTests_Cdap.yml 
b/.github/workflows/beam_PerformanceTests_Cdap.yml
index 49184abfd4f..b4e0b2e011a 100644
--- a/.github/workflows/beam_PerformanceTests_Cdap.yml
+++ b/.github/workflows/beam_PerformanceTests_Cdap.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         id: auth
         uses: google-github-actions/auth@v1
diff --git a/.github/workflows/beam_PerformanceTests_Compressed_TextIOIT.yml 
b/.github/workflows/beam_PerformanceTests_Compressed_TextIOIT.yml
index 7ea42f19770..465a77b4508 100644
--- a/.github/workflows/beam_PerformanceTests_Compressed_TextIOIT.yml
+++ b/.github/workflows/beam_PerformanceTests_Compressed_TextIOIT.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
 # The env variable is created and populated in the test-arguments-action as 
"<github.job>_test_arguments_<argument_file_paths_index>"
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
diff --git 
a/.github/workflows/beam_PerformanceTests_Compressed_TextIOIT_HDFS.yml 
b/.github/workflows/beam_PerformanceTests_Compressed_TextIOIT_HDFS.yml
index 38b28ea084a..f52adaaec4a 100644
--- a/.github/workflows/beam_PerformanceTests_Compressed_TextIOIT_HDFS.yml
+++ b/.github/workflows/beam_PerformanceTests_Compressed_TextIOIT_HDFS.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         id: auth
         uses: google-github-actions/auth@v1
diff --git a/.github/workflows/beam_PerformanceTests_HadoopFormat.yml 
b/.github/workflows/beam_PerformanceTests_HadoopFormat.yml
index 9e6160007e9..d303a000fdd 100644
--- a/.github/workflows/beam_PerformanceTests_HadoopFormat.yml
+++ b/.github/workflows/beam_PerformanceTests_HadoopFormat.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         id: auth
         uses: google-github-actions/auth@v1
diff --git a/.github/workflows/beam_PerformanceTests_JDBC.yml 
b/.github/workflows/beam_PerformanceTests_JDBC.yml
index 206f7cd199b..f6f5fcebd45 100644
--- a/.github/workflows/beam_PerformanceTests_JDBC.yml
+++ b/.github/workflows/beam_PerformanceTests_JDBC.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         id: auth
         uses: google-github-actions/auth@v1
diff --git a/.github/workflows/beam_PerformanceTests_Kafka_IO.yml 
b/.github/workflows/beam_PerformanceTests_Kafka_IO.yml
index 47cafaac9f8..772142a46ef 100644
--- a/.github/workflows/beam_PerformanceTests_Kafka_IO.yml
+++ b/.github/workflows/beam_PerformanceTests_Kafka_IO.yml
@@ -71,6 +71,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Set k8s access
         uses: ./.github/actions/setup-k8s-access
         with:
diff --git a/.github/workflows/beam_PerformanceTests_ManyFiles_TextIOIT.yml 
b/.github/workflows/beam_PerformanceTests_ManyFiles_TextIOIT.yml
index a804f66740c..9482aae8fc0 100644
--- a/.github/workflows/beam_PerformanceTests_ManyFiles_TextIOIT.yml
+++ b/.github/workflows/beam_PerformanceTests_ManyFiles_TextIOIT.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git 
a/.github/workflows/beam_PerformanceTests_ManyFiles_TextIOIT_HDFS.yml 
b/.github/workflows/beam_PerformanceTests_ManyFiles_TextIOIT_HDFS.yml
index 9510a98e1c1..e8e52104e89 100644
--- a/.github/workflows/beam_PerformanceTests_ManyFiles_TextIOIT_HDFS.yml
+++ b/.github/workflows/beam_PerformanceTests_ManyFiles_TextIOIT_HDFS.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         id: auth
         uses: google-github-actions/auth@v1
diff --git a/.github/workflows/beam_PerformanceTests_MongoDBIO_IT.yml 
b/.github/workflows/beam_PerformanceTests_MongoDBIO_IT.yml
index 4f3d15f29a1..5b25bd83881 100644
--- a/.github/workflows/beam_PerformanceTests_MongoDBIO_IT.yml
+++ b/.github/workflows/beam_PerformanceTests_MongoDBIO_IT.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         id: auth
         uses: google-github-actions/auth@v1
diff --git a/.github/workflows/beam_PerformanceTests_ParquetIOIT.yml 
b/.github/workflows/beam_PerformanceTests_ParquetIOIT.yml
index 879d622c70d..6ade6b2f88e 100644
--- a/.github/workflows/beam_PerformanceTests_ParquetIOIT.yml
+++ b/.github/workflows/beam_PerformanceTests_ParquetIOIT.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
 # The env variable is created and populated in the test-arguments-action as 
"<github.job>_test_arguments_<argument_file_paths_index>"
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
diff --git a/.github/workflows/beam_PerformanceTests_ParquetIOIT_HDFS.yml 
b/.github/workflows/beam_PerformanceTests_ParquetIOIT_HDFS.yml
index e9bc1f3b5db..05f1198d65c 100644
--- a/.github/workflows/beam_PerformanceTests_ParquetIOIT_HDFS.yml
+++ b/.github/workflows/beam_PerformanceTests_ParquetIOIT_HDFS.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         id: auth
         uses: google-github-actions/auth@v1
diff --git a/.github/workflows/beam_PerformanceTests_SparkReceiver_IO.yml 
b/.github/workflows/beam_PerformanceTests_SparkReceiver_IO.yml
index bf750acbd31..7aa71c3ef5a 100644
--- a/.github/workflows/beam_PerformanceTests_SparkReceiver_IO.yml
+++ b/.github/workflows/beam_PerformanceTests_SparkReceiver_IO.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         id: auth
         uses: google-github-actions/auth@v1
diff --git a/.github/workflows/beam_PerformanceTests_TFRecordIOIT.yml 
b/.github/workflows/beam_PerformanceTests_TFRecordIOIT.yml
index 7088dab537d..0d80693da07 100644
--- a/.github/workflows/beam_PerformanceTests_TFRecordIOIT.yml
+++ b/.github/workflows/beam_PerformanceTests_TFRecordIOIT.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_PerformanceTests_TFRecordIOIT_HDFS.yml 
b/.github/workflows/beam_PerformanceTests_TFRecordIOIT_HDFS.yml
index f49be834154..10099f75f96 100644
--- a/.github/workflows/beam_PerformanceTests_TFRecordIOIT_HDFS.yml
+++ b/.github/workflows/beam_PerformanceTests_TFRecordIOIT_HDFS.yml
@@ -71,6 +71,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         id: auth
         uses: google-github-actions/auth@v1
diff --git a/.github/workflows/beam_PerformanceTests_TextIOIT.yml 
b/.github/workflows/beam_PerformanceTests_TextIOIT.yml
index 8be4370b3e4..2c92ec3eff2 100644
--- a/.github/workflows/beam_PerformanceTests_TextIOIT.yml
+++ b/.github/workflows/beam_PerformanceTests_TextIOIT.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_PerformanceTests_TextIOIT_HDFS.yml 
b/.github/workflows/beam_PerformanceTests_TextIOIT_HDFS.yml
index e0f4b0365b6..4caad4ff411 100644
--- a/.github/workflows/beam_PerformanceTests_TextIOIT_HDFS.yml
+++ b/.github/workflows/beam_PerformanceTests_TextIOIT_HDFS.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Set k8s access
         uses: ./.github/actions/setup-k8s-access
         with:
diff --git a/.github/workflows/beam_PerformanceTests_XmlIOIT.yml 
b/.github/workflows/beam_PerformanceTests_XmlIOIT.yml
index d610d362cda..1dd1efc8b05 100644
--- a/.github/workflows/beam_PerformanceTests_XmlIOIT.yml
+++ b/.github/workflows/beam_PerformanceTests_XmlIOIT.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Prepare test arguments
         uses: ./.github/actions/test-arguments-action
         with:
diff --git a/.github/workflows/beam_PerformanceTests_XmlIOIT_HDFS.yml 
b/.github/workflows/beam_PerformanceTests_XmlIOIT_HDFS.yml
index 6ceb38ca87a..b03a6990235 100644
--- a/.github/workflows/beam_PerformanceTests_XmlIOIT_HDFS.yml
+++ b/.github/workflows/beam_PerformanceTests_XmlIOIT_HDFS.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         id: auth
         uses: google-github-actions/auth@v1
diff --git a/.github/workflows/beam_PostCommit_BeamMetrics_Publish.yml 
b/.github/workflows/beam_PostCommit_BeamMetrics_Publish.yml
index 643a159dc21..9cff830828a 100644
--- a/.github/workflows/beam_PostCommit_BeamMetrics_Publish.yml
+++ b/.github/workflows/beam_PostCommit_BeamMetrics_Publish.yml
@@ -72,6 +72,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         uses: google-github-actions/setup-gcloud@v0
         with:
diff --git a/.github/workflows/beam_PostCommit_Go.yml 
b/.github/workflows/beam_PostCommit_Go.yml
index 27d101275fb..1a0a616006f 100644
--- a/.github/workflows/beam_PostCommit_Go.yml
+++ b/.github/workflows/beam_PostCommit_Go.yml
@@ -67,6 +67,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Set up Docker Buildx
         uses: docker/setup-buildx-action@v1
       - name: Authenticate on GCP
diff --git a/.github/workflows/beam_PostCommit_Go_VR_Flink.yml 
b/.github/workflows/beam_PostCommit_Go_VR_Flink.yml
index 83393343d88..6434f57316e 100644
--- a/.github/workflows/beam_PostCommit_Go_VR_Flink.yml
+++ b/.github/workflows/beam_PostCommit_Go_VR_Flink.yml
@@ -67,6 +67,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Go Flink ValidatesRunner script
         env:
           CLOUDSDK_CONFIG: ${{ env.KUBELET_GCLOUD_CONFIG_PATH}}
diff --git a/.github/workflows/beam_PostCommit_Go_VR_Spark.yml 
b/.github/workflows/beam_PostCommit_Go_VR_Spark.yml
index b902919006a..7b80df1191c 100644
--- a/.github/workflows/beam_PostCommit_Go_VR_Spark.yml
+++ b/.github/workflows/beam_PostCommit_Go_VR_Spark.yml
@@ -67,6 +67,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Go Spark ValidatesRunner script
         env:
           CLOUDSDK_CONFIG: ${{ env.KUBELET_GCLOUD_CONFIG_PATH}}
diff --git a/.github/workflows/beam_PostCommit_Java.yml 
b/.github/workflows/beam_PostCommit_Java.yml
index 3f56b2c4d85..905cb3a7f25 100644
--- a/.github/workflows/beam_PostCommit_Java.yml
+++ b/.github/workflows/beam_PostCommit_Java.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Java script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_Avro_Versions.yml 
b/.github/workflows/beam_PostCommit_Java_Avro_Versions.yml
index 02f309c2f73..1cd59fe409a 100644
--- a/.github/workflows/beam_PostCommit_Java_Avro_Versions.yml
+++ b/.github/workflows/beam_PostCommit_Java_Avro_Versions.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Java Avro Versions script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_BigQueryEarlyRollout.yml 
b/.github/workflows/beam_PostCommit_Java_BigQueryEarlyRollout.yml
index 5edfe37320e..33748db11ce 100644
--- a/.github/workflows/beam_PostCommit_Java_BigQueryEarlyRollout.yml
+++ b/.github/workflows/beam_PostCommit_Java_BigQueryEarlyRollout.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         uses: google-github-actions/setup-gcloud@v0
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_DataflowV1.yml 
b/.github/workflows/beam_PostCommit_Java_DataflowV1.yml
index 53c0b0b1db3..a15730a3d4e 100644
--- a/.github/workflows/beam_PostCommit_Java_DataflowV1.yml
+++ b/.github/workflows/beam_PostCommit_Java_DataflowV1.yml
@@ -69,10 +69,9 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Set up Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
           java-version: |
             11
             8
diff --git a/.github/workflows/beam_PostCommit_Java_DataflowV2.yml 
b/.github/workflows/beam_PostCommit_Java_DataflowV2.yml
index 6c8d9aa4515..f90fc8f1f26 100644
--- a/.github/workflows/beam_PostCommit_Java_DataflowV2.yml
+++ b/.github/workflows/beam_PostCommit_Java_DataflowV2.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Java Dataflow V2 script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_Examples_Dataflow.yml 
b/.github/workflows/beam_PostCommit_Java_Examples_Dataflow.yml
index 03e94979c51..2c213748255 100644
--- a/.github/workflows/beam_PostCommit_Java_Examples_Dataflow.yml
+++ b/.github/workflows/beam_PostCommit_Java_Examples_Dataflow.yml
@@ -71,6 +71,8 @@ jobs:
         comment_phrase: ${{ matrix.job_phrase }}
         github_token: ${{ secrets.GITHUB_TOKEN }}
         github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+    - name: Setup environment
+      uses: ./.github/actions/setup-environment-action
     - name: run PostCommit Java Examples Dataflow script
       uses: ./.github/actions/gradle-command-self-hosted-action
       with:
diff --git a/.github/workflows/beam_PostCommit_Java_Examples_Dataflow_Java.yml 
b/.github/workflows/beam_PostCommit_Java_Examples_Dataflow_Java.yml
index 6b92c188c98..ee6596adbe4 100644
--- a/.github/workflows/beam_PostCommit_Java_Examples_Dataflow_Java.yml
+++ b/.github/workflows/beam_PostCommit_Java_Examples_Dataflow_Java.yml
@@ -71,10 +71,9 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }} ${{ matrix.java_version }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }} ${{ 
matrix.java_version }})
-      - name: Set up Java${{ matrix.java_version }}
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
           java-version: |
             ${{ matrix.java_version }}
             8
diff --git a/.github/workflows/beam_PostCommit_Java_Examples_Dataflow_V2.yml 
b/.github/workflows/beam_PostCommit_Java_Examples_Dataflow_V2.yml
index 1f817a3acf0..7283bbedca7 100644
--- a/.github/workflows/beam_PostCommit_Java_Examples_Dataflow_V2.yml
+++ b/.github/workflows/beam_PostCommit_Java_Examples_Dataflow_V2.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Java Examples Dataflow V2 script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git 
a/.github/workflows/beam_PostCommit_Java_Examples_Dataflow_V2_Java.yml 
b/.github/workflows/beam_PostCommit_Java_Examples_Dataflow_V2_Java.yml
index 411cc65944f..1b006590104 100644
--- a/.github/workflows/beam_PostCommit_Java_Examples_Dataflow_V2_Java.yml
+++ b/.github/workflows/beam_PostCommit_Java_Examples_Dataflow_V2_Java.yml
@@ -73,10 +73,9 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase_1 }} ${{ matrix.java_version 
}} ${{ matrix.job_phrase_2 }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase_1 }} ${{ 
matrix.java_version }} ${{ matrix.job_phrase_2 }})
-      - name: Set up Java${{ matrix.java_version }}
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
           java-version: ${{ matrix.java_version }}
       - name: run PostCommit Java Examples Dataflow V2 Java${{ 
matrix.java_version }} script
         uses: ./.github/actions/gradle-command-self-hosted-action
diff --git a/.github/workflows/beam_PostCommit_Java_Examples_Direct.yml 
b/.github/workflows/beam_PostCommit_Java_Examples_Direct.yml
index b0f350809d2..60f5c1da489 100644
--- a/.github/workflows/beam_PostCommit_Java_Examples_Direct.yml
+++ b/.github/workflows/beam_PostCommit_Java_Examples_Direct.yml
@@ -69,11 +69,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'zulu'
-          java-version: '8'
+          java-version: 8
       - name: run examplesIntegrationTest script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_Examples_Spark.yml 
b/.github/workflows/beam_PostCommit_Java_Examples_Spark.yml
index 75700868452..e3f70bd8f69 100644
--- a/.github/workflows/beam_PostCommit_Java_Examples_Spark.yml
+++ b/.github/workflows/beam_PostCommit_Java_Examples_Spark.yml
@@ -69,11 +69,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'zulu'
-          java-version: '8'
+          java-version: 8
       - name: run examplesIntegrationTest script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_Hadoop_Versions.yml 
b/.github/workflows/beam_PostCommit_Java_Hadoop_Versions.yml
index 29e97562827..41eec12629d 100644
--- a/.github/workflows/beam_PostCommit_Java_Hadoop_Versions.yml
+++ b/.github/workflows/beam_PostCommit_Java_Hadoop_Versions.yml
@@ -67,11 +67,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'zulu'
-          java-version: '8'
+          java-version: 8
       - name: run validatesRunner script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_InfluxDbIO_IT.yml 
b/.github/workflows/beam_PostCommit_Java_InfluxDbIO_IT.yml
index 4147d1099c8..c80ec6c0fbe 100644
--- a/.github/workflows/beam_PostCommit_Java_InfluxDbIO_IT.yml
+++ b/.github/workflows/beam_PostCommit_Java_InfluxDbIO_IT.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         id: auth
         uses: google-github-actions/auth@v1
diff --git a/.github/workflows/beam_PostCommit_Java_Jpms_Dataflow_Java11.yml 
b/.github/workflows/beam_PostCommit_Java_Jpms_Dataflow_Java11.yml
index 1fd46b95e08..57dca871e59 100644
--- a/.github/workflows/beam_PostCommit_Java_Jpms_Dataflow_Java11.yml
+++ b/.github/workflows/beam_PostCommit_Java_Jpms_Dataflow_Java11.yml
@@ -67,11 +67,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Set up Java 11
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
-          java-version: '11'
+          java-version: 11
       - name: run PostCommit Java Jpms Dataflow Java11 script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_Jpms_Dataflow_Java17.yml 
b/.github/workflows/beam_PostCommit_Java_Jpms_Dataflow_Java17.yml
index ff27bae8c52..02046068c02 100644
--- a/.github/workflows/beam_PostCommit_Java_Jpms_Dataflow_Java17.yml
+++ b/.github/workflows/beam_PostCommit_Java_Jpms_Dataflow_Java17.yml
@@ -67,10 +67,9 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Set up Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
           java-version: |
             17
             8
diff --git a/.github/workflows/beam_PostCommit_Java_Jpms_Direct_Java11.yml 
b/.github/workflows/beam_PostCommit_Java_Jpms_Direct_Java11.yml
index 1dec7b5f54f..61148ace0be 100644
--- a/.github/workflows/beam_PostCommit_Java_Jpms_Direct_Java11.yml
+++ b/.github/workflows/beam_PostCommit_Java_Jpms_Direct_Java11.yml
@@ -67,11 +67,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Set up Java 11
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
-          java-version: '11'
+          java-version: 11
       - name: run PostCommit Java Jpms Direct Java11 script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_Jpms_Direct_Java17.yml 
b/.github/workflows/beam_PostCommit_Java_Jpms_Direct_Java17.yml
index 748a74d2ec1..823cea06ada 100644
--- a/.github/workflows/beam_PostCommit_Java_Jpms_Direct_Java17.yml
+++ b/.github/workflows/beam_PostCommit_Java_Jpms_Direct_Java17.yml
@@ -67,10 +67,9 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Set up Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
           java-version: |
             17
             8
diff --git a/.github/workflows/beam_PostCommit_Java_Jpms_Flink_Java11.yml 
b/.github/workflows/beam_PostCommit_Java_Jpms_Flink_Java11.yml
index 62656517038..2b217630ebf 100644
--- a/.github/workflows/beam_PostCommit_Java_Jpms_Flink_Java11.yml
+++ b/.github/workflows/beam_PostCommit_Java_Jpms_Flink_Java11.yml
@@ -67,11 +67,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Set up Java 11
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
-          java-version: '11'
+          java-version: 11
       - name: run PostCommit Java Jpms Flink Java11 script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_Jpms_Spark_Java11.yml 
b/.github/workflows/beam_PostCommit_Java_Jpms_Spark_Java11.yml
index 745bec641c2..4026ce9a22f 100644
--- a/.github/workflows/beam_PostCommit_Java_Jpms_Spark_Java11.yml
+++ b/.github/workflows/beam_PostCommit_Java_Jpms_Spark_Java11.yml
@@ -67,11 +67,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Set up Java 11
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
-          java-version: '11'
+          java-version: 11
       - name: run PostCommit Java Jpms Spark Java11 script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_Nexmark_Dataflow.yml 
b/.github/workflows/beam_PostCommit_Java_Nexmark_Dataflow.yml
index 8a3ff9a9bb1..d40723af05c 100644
--- a/.github/workflows/beam_PostCommit_Java_Nexmark_Dataflow.yml
+++ b/.github/workflows/beam_PostCommit_Java_Nexmark_Dataflow.yml
@@ -95,6 +95,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Java Nexmark Dataflow (${{ matrix.streaming }} 
${{ matrix.queryLanguage }}) script
         if: matrix.queryLanguage != 'none'
         uses: ./.github/actions/gradle-command-self-hosted-action
diff --git a/.github/workflows/beam_PostCommit_Java_Nexmark_Dataflow_V2.yml 
b/.github/workflows/beam_PostCommit_Java_Nexmark_Dataflow_V2.yml
index 428ea231e77..787ca05a065 100644
--- a/.github/workflows/beam_PostCommit_Java_Nexmark_Dataflow_V2.yml
+++ b/.github/workflows/beam_PostCommit_Java_Nexmark_Dataflow_V2.yml
@@ -95,6 +95,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Java Nexmark Dataflow V2 (streaming = ${{ 
matrix.streaming }}) script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git 
a/.github/workflows/beam_PostCommit_Java_Nexmark_Dataflow_V2_Java.yml 
b/.github/workflows/beam_PostCommit_Java_Nexmark_Dataflow_V2_Java.yml
index 076c030d91e..f06302c0851 100644
--- a/.github/workflows/beam_PostCommit_Java_Nexmark_Dataflow_V2_Java.yml
+++ b/.github/workflows/beam_PostCommit_Java_Nexmark_Dataflow_V2_Java.yml
@@ -97,10 +97,9 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase_1 }} ${{ matrix.java_version 
}} ${{ matrix.job_phrase_2 }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase_1 }} ${{ 
matrix.java_version }} ${{ matrix.job_phrase_2 }})
-      - name: Set up Java${{ matrix.java_version }}
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
           java-version: ${{ matrix.java_version }}
       - name: run PostCommit Java ${{ matrix.java_version }} Nexmark Dataflow 
V2 (streaming = ${{ matrix.streaming }}) script
         uses: ./.github/actions/gradle-command-self-hosted-action
diff --git a/.github/workflows/beam_PostCommit_Java_Nexmark_Direct.yml 
b/.github/workflows/beam_PostCommit_Java_Nexmark_Direct.yml
index a1842c73fe5..837582a484b 100644
--- a/.github/workflows/beam_PostCommit_Java_Nexmark_Direct.yml
+++ b/.github/workflows/beam_PostCommit_Java_Nexmark_Direct.yml
@@ -90,6 +90,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Java Nexmark Direct (${{ matrix.streaming }} ${{ 
matrix.queryLanguage }}) script
         if: matrix.queryLanguage != 'none'
         uses: ./.github/actions/gradle-command-self-hosted-action
diff --git a/.github/workflows/beam_PostCommit_Java_Nexmark_Flink.yml 
b/.github/workflows/beam_PostCommit_Java_Nexmark_Flink.yml
index 76278de19ff..afcc9060491 100644
--- a/.github/workflows/beam_PostCommit_Java_Nexmark_Flink.yml
+++ b/.github/workflows/beam_PostCommit_Java_Nexmark_Flink.yml
@@ -89,6 +89,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Java Nexmark Flink (${{ matrix.streaming }} ${{ 
matrix.queryLanguage }}) script
         if: matrix.queryLanguage != 'none'
         uses: ./.github/actions/gradle-command-self-hosted-action
diff --git a/.github/workflows/beam_PostCommit_Java_Nexmark_Spark.yml 
b/.github/workflows/beam_PostCommit_Java_Nexmark_Spark.yml
index 110cb20c90c..937a843740a 100644
--- a/.github/workflows/beam_PostCommit_Java_Nexmark_Spark.yml
+++ b/.github/workflows/beam_PostCommit_Java_Nexmark_Spark.yml
@@ -89,6 +89,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Java Nexmark Spark (runner = ${{ matrix.runner }} 
queryLanguage = ${{ matrix.queryLanguage }}) script
         if: matrix.queryLanguage != 'none'
         uses: ./.github/actions/gradle-command-self-hosted-action
diff --git a/.github/workflows/beam_PostCommit_Java_PVR_Flink_Streaming.yml 
b/.github/workflows/beam_PostCommit_Java_PVR_Flink_Streaming.yml
index 021378596e7..de5253fe851 100644
--- a/.github/workflows/beam_PostCommit_Java_PVR_Flink_Streaming.yml
+++ b/.github/workflows/beam_PostCommit_Java_PVR_Flink_Streaming.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Java Flink PortableValidatesRunner Streaming 
script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_PVR_Samza.yml 
b/.github/workflows/beam_PostCommit_Java_PVR_Samza.yml
index cf87530639c..912cba9877a 100644
--- a/.github/workflows/beam_PostCommit_Java_PVR_Samza.yml
+++ b/.github/workflows/beam_PostCommit_Java_PVR_Samza.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Java Samza script
         env:
           CLOUDSDK_CONFIG: ${{ env.KUBELET_GCLOUD_CONFIG_PATH}}
diff --git a/.github/workflows/beam_PostCommit_Java_PVR_Spark3_Streaming.yml 
b/.github/workflows/beam_PostCommit_Java_PVR_Spark3_Streaming.yml
index 79eadd75356..b94e40037bd 100644
--- a/.github/workflows/beam_PostCommit_Java_PVR_Spark3_Streaming.yml
+++ b/.github/workflows/beam_PostCommit_Java_PVR_Spark3_Streaming.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Java PortableValidatesRunner Spark3 Streaming 
script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_Sickbay.yml 
b/.github/workflows/beam_PostCommit_Java_Sickbay.yml
index 18ef48b92f7..a9e21f4c9f3 100644
--- a/.github/workflows/beam_PostCommit_Java_Sickbay.yml
+++ b/.github/workflows/beam_PostCommit_Java_Sickbay.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Java Sickbay script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_SingleStoreIO_IT.yml 
b/.github/workflows/beam_PostCommit_Java_SingleStoreIO_IT.yml
index 5af333e645b..ba2c72ffa2c 100644
--- a/.github/workflows/beam_PostCommit_Java_SingleStoreIO_IT.yml
+++ b/.github/workflows/beam_PostCommit_Java_SingleStoreIO_IT.yml
@@ -71,6 +71,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         id: auth
         uses: google-github-actions/auth@v1
diff --git a/.github/workflows/beam_PostCommit_Java_Tpcds_Dataflow.yml 
b/.github/workflows/beam_PostCommit_Java_Tpcds_Dataflow.yml
index d6b63752eed..5fb70ef5612 100644
--- a/.github/workflows/beam_PostCommit_Java_Tpcds_Dataflow.yml
+++ b/.github/workflows/beam_PostCommit_Java_Tpcds_Dataflow.yml
@@ -92,6 +92,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Java Tpcds Dataflow script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_Tpcds_Flink.yml 
b/.github/workflows/beam_PostCommit_Java_Tpcds_Flink.yml
index d2ba0cafc01..fcd87f41326 100644
--- a/.github/workflows/beam_PostCommit_Java_Tpcds_Flink.yml
+++ b/.github/workflows/beam_PostCommit_Java_Tpcds_Flink.yml
@@ -89,6 +89,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Java Tpcds Flink script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_Tpcds_Spark.yml 
b/.github/workflows/beam_PostCommit_Java_Tpcds_Spark.yml
index d93f0e1a8b5..dd1b3a18b8c 100644
--- a/.github/workflows/beam_PostCommit_Java_Tpcds_Spark.yml
+++ b/.github/workflows/beam_PostCommit_Java_Tpcds_Spark.yml
@@ -88,6 +88,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Java Tpcds Spark script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git 
a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow.yml 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow.yml
index bd7f29720fa..4d0357d9215 100644
--- a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow.yml
+++ b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow.yml
@@ -69,11 +69,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'zulu'
-          java-version: '8'
+          java-version: 8
       - name: run validatesRunner script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git 
a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow_JavaVersions.yml
 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow_JavaVersions.yml
index a6afa04f565..62f742f5b5b 100644
--- 
a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow_JavaVersions.yml
+++ 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow_JavaVersions.yml
@@ -71,10 +71,9 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }} ${{ matrix.java_version }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }}) ${{ 
matrix.java_version }}
-      - name: Set up Java${{ matrix.java_version }}
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
           java-version: |
             ${{ matrix.java_version }}
             8
diff --git 
a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow_Streaming.yml 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow_Streaming.yml
index 116f8f6e4a2..175893f5b01 100644
--- 
a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow_Streaming.yml
+++ 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow_Streaming.yml
@@ -69,11 +69,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'zulu'
-          java-version: '8'
+          java-version: 8
       - name: run validatesRunnerStreaming script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git 
a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow_V2.yml 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow_V2.yml
index 55064692a71..723d17cf094 100644
--- a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow_V2.yml
+++ b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow_V2.yml
@@ -69,11 +69,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'zulu'
-          java-version: '8'
+          java-version: 8
       - name: run validatesRunnerV2 script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git 
a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow_V2_Streaming.yml
 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow_V2_Streaming.yml
index 8314db686cc..d81f7cf2752 100644
--- 
a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow_V2_Streaming.yml
+++ 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Dataflow_V2_Streaming.yml
@@ -69,11 +69,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'zulu'
-          java-version: '8'
+          java-version: 8
       - name: run validatesRunnerV2Streaming script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Direct.yml 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Direct.yml
index cf62a789465..03453f0eb64 100644
--- a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Direct.yml
+++ b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Direct.yml
@@ -69,11 +69,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'zulu'
-          java-version: '8'
+          java-version: 8
       - name: run validatesRunner script
         run: ./gradlew :runners:direct-java:validatesRunner
       - name: Archive JUnit Test Results
diff --git 
a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Direct_JavaVersions.yml
 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Direct_JavaVersions.yml
index 2d879fa7d63..b16a20f6c21 100644
--- 
a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Direct_JavaVersions.yml
+++ 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Direct_JavaVersions.yml
@@ -71,10 +71,9 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }} ${{ matrix.java_version }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }}) ${{ 
matrix.java_version }}
-      - name: Set up Java${{ matrix.java_version }}
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
           java-version: |
             ${{ matrix.java_version }}
             8
diff --git 
a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Flink_Java11.yml 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Flink_Java11.yml
index e96f8efb9ae..181483597a9 100644
--- a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Flink_Java11.yml
+++ b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Flink_Java11.yml
@@ -69,10 +69,9 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Set up Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
           java-version: |
             11
             8
diff --git a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Samza.yml 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Samza.yml
index b577b584f0a..986eab3595b 100644
--- a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Samza.yml
+++ b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Samza.yml
@@ -67,11 +67,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'zulu'
-          java-version: '8'
+          java-version: 8
       - name: run validatesRunner script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Spark.yml 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Spark.yml
index 3465ff953da..bc01dac79e9 100644
--- a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Spark.yml
+++ b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Spark.yml
@@ -67,11 +67,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'zulu'
-          java-version: '8'
+          java-version: 8
       - name: run validatesRunner script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git 
a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_SparkStructuredStreaming.yml
 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_SparkStructuredStreaming.yml
index 6df7d3ac35e..404c15e6514 100644
--- 
a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_SparkStructuredStreaming.yml
+++ 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_SparkStructuredStreaming.yml
@@ -67,11 +67,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'zulu'
-          java-version: '8'
+          java-version: 8
       - name: run validatesStructuredStreamingRunnerBatch script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git 
a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Spark_Java11.yml 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Spark_Java11.yml
index 1f82a456827..d8249a17df8 100644
--- a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Spark_Java11.yml
+++ b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Spark_Java11.yml
@@ -69,10 +69,9 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Set up Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
           java-version: |
             11
             8
diff --git 
a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Twister2.yml 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Twister2.yml
index 3bcaff465f1..87db69c308a 100644
--- a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Twister2.yml
+++ b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Twister2.yml
@@ -67,11 +67,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'zulu'
-          java-version: '8'
+          java-version: 8
       - name: run validatesRunner script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_ULR.yml 
b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_ULR.yml
index 9d42ecda4f3..4e3b9c49d47 100644
--- a/.github/workflows/beam_PostCommit_Java_ValidatesRunner_ULR.yml
+++ b/.github/workflows/beam_PostCommit_Java_ValidatesRunner_ULR.yml
@@ -67,15 +67,11 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'zulu'
-          java-version: '8'
-      - name: Install Python
-        uses: actions/setup-python@v4
-        with:
-          python-version: '3.8'
+          java-version: 8
+          python-version: 3.8
       - name: run ulrLoopbackValidatesRunner script
         run: ./gradlew :runners:portability:java:ulrLoopbackValidatesRunner
       - name: Archive JUnit Test Results
diff --git a/.github/workflows/beam_PostCommit_Javadoc.yml 
b/.github/workflows/beam_PostCommit_Javadoc.yml
index a70b37c10a9..fe72554de6f 100644
--- a/.github/workflows/beam_PostCommit_Javadoc.yml
+++ b/.github/workflows/beam_PostCommit_Javadoc.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run aggregateJavadoc script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_PortableJar_Flink.yml 
b/.github/workflows/beam_PostCommit_PortableJar_Flink.yml
index 0140c16a85c..a0d5f51d04a 100644
--- a/.github/workflows/beam_PostCommit_PortableJar_Flink.yml
+++ b/.github/workflows/beam_PostCommit_PortableJar_Flink.yml
@@ -67,8 +67,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
           python-version: 3.8
       - name: run testPipelineJarFlinkRunner script
diff --git a/.github/workflows/beam_PostCommit_PortableJar_Spark.yml 
b/.github/workflows/beam_PostCommit_PortableJar_Spark.yml
index 243effdf063..500c5919d21 100644
--- a/.github/workflows/beam_PostCommit_PortableJar_Spark.yml
+++ b/.github/workflows/beam_PostCommit_PortableJar_Spark.yml
@@ -67,8 +67,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
           python-version: 3.8
       - name: run testPipelineJarSparkRunner script
diff --git a/.github/workflows/beam_PostCommit_Python.yml 
b/.github/workflows/beam_PostCommit_Python.yml
index e439b50d531..e3e4ce92751 100644
--- a/.github/workflows/beam_PostCommit_Python.yml
+++ b/.github/workflows/beam_PostCommit_Python.yml
@@ -71,8 +71,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }} ${{ matrix.python_version }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }} ${{ 
matrix.python_version }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
           python-version: ${{ matrix.python_version }}
       - name: Install docker compose
diff --git a/.github/workflows/beam_PostCommit_Python_Arm.yml 
b/.github/workflows/beam_PostCommit_Python_Arm.yml
index 065c917f868..f28d6b1da78 100644
--- a/.github/workflows/beam_PostCommit_Python_Arm.yml
+++ b/.github/workflows/beam_PostCommit_Python_Arm.yml
@@ -73,8 +73,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }} ${{ matrix.python_version }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }} ${{ 
matrix.python_version }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
           python-version: ${{ matrix.python_version }}
       - name: Install docker compose
diff --git a/.github/workflows/beam_PostCommit_Python_Nexmark_Direct.yml 
b/.github/workflows/beam_PostCommit_Python_Nexmark_Direct.yml
index c63bcf2ecad..9f00b6f163d 100644
--- a/.github/workflows/beam_PostCommit_Python_Nexmark_Direct.yml
+++ b/.github/workflows/beam_PostCommit_Python_Nexmark_Direct.yml
@@ -112,8 +112,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
           python-version: 3.8
       - name: run Java Testing Nexmark (query ${{ matrix.query }})
diff --git a/.github/workflows/beam_PostCommit_Python_Xlang_Gcp_Dataflow.yml 
b/.github/workflows/beam_PostCommit_Python_Xlang_Gcp_Dataflow.yml
index 291de49c3bb..65d3f70d130 100644
--- a/.github/workflows/beam_PostCommit_Python_Xlang_Gcp_Dataflow.yml
+++ b/.github/workflows/beam_PostCommit_Python_Xlang_Gcp_Dataflow.yml
@@ -67,8 +67,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
           python-version: |
             3.8
diff --git a/.github/workflows/beam_PostCommit_Python_Xlang_Gcp_Direct.yml 
b/.github/workflows/beam_PostCommit_Python_Xlang_Gcp_Direct.yml
index cf061f47e67..00bcabf3b6a 100644
--- a/.github/workflows/beam_PostCommit_Python_Xlang_Gcp_Direct.yml
+++ b/.github/workflows/beam_PostCommit_Python_Xlang_Gcp_Direct.yml
@@ -67,8 +67,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
           python-version: |
             3.8
diff --git a/.github/workflows/beam_PostCommit_Python_Xlang_IO_Dataflow.yml 
b/.github/workflows/beam_PostCommit_Python_Xlang_IO_Dataflow.yml
index 069b9965517..0e73b0e4bc8 100644
--- a/.github/workflows/beam_PostCommit_Python_Xlang_IO_Dataflow.yml
+++ b/.github/workflows/beam_PostCommit_Python_Xlang_IO_Dataflow.yml
@@ -67,8 +67,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
           python-version: |
             3.8
diff --git a/.github/workflows/beam_PostCommit_SQL.yml 
b/.github/workflows/beam_PostCommit_SQL.yml
index 1ad8e0567cf..0ac8af3c6bb 100644
--- a/.github/workflows/beam_PostCommit_SQL.yml
+++ b/.github/workflows/beam_PostCommit_SQL.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit SQL script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Sickbay_Python.yml 
b/.github/workflows/beam_PostCommit_Sickbay_Python.yml
index 7516a6003a2..b01ee16ade1 100644
--- a/.github/workflows/beam_PostCommit_Sickbay_Python.yml
+++ b/.github/workflows/beam_PostCommit_Sickbay_Python.yml
@@ -73,8 +73,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase_1 }} ${{ matrix.python_version 
}} ${{ matrix.job_phrase_2 }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase_1 }} ${{ 
matrix.python_version }} ${{ matrix.job_phrase_2 }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
           python-version: ${{ matrix.python_version }}
       - name: Set PY_VER_CLEAN
diff --git a/.github/workflows/beam_PostCommit_TransformService_Direct.yml 
b/.github/workflows/beam_PostCommit_TransformService_Direct.yml
index 327b50f7840..a180adf810b 100644
--- a/.github/workflows/beam_PostCommit_TransformService_Direct.yml
+++ b/.github/workflows/beam_PostCommit_TransformService_Direct.yml
@@ -68,14 +68,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }} ${{ matrix.python_version }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }} ${{ 
matrix.python_version }})
-      - name: Set up Java 11
-        uses: actions/[email protected]
-        with:
-          distribution: 'temurin'
-          java-version: '11'
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
+          java-version: 11
           python-version: |
             3.8
             3.11
diff --git a/.github/workflows/beam_PostCommit_Website_Publish.yml 
b/.github/workflows/beam_PostCommit_Website_Publish.yml
index e5759e39021..047f9564c37 100644
--- a/.github/workflows/beam_PostCommit_Website_Publish.yml
+++ b/.github/workflows/beam_PostCommit_Website_Publish.yml
@@ -56,6 +56,8 @@ jobs:
     name: beam_PostCommit_Website_Publish
     steps:
       - uses: actions/checkout@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Website Publish script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_Website_Test.yml 
b/.github/workflows/beam_PostCommit_Website_Test.yml
index a73d971f4b6..3782b9ca17d 100644
--- a/.github/workflows/beam_PostCommit_Website_Test.yml
+++ b/.github/workflows/beam_PostCommit_Website_Test.yml
@@ -67,6 +67,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PostCommit Website Test script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PostCommit_XVR_Direct.yml 
b/.github/workflows/beam_PostCommit_XVR_Direct.yml
index 8a0c4691b85..c63969051a0 100644
--- a/.github/workflows/beam_PostCommit_XVR_Direct.yml
+++ b/.github/workflows/beam_PostCommit_XVR_Direct.yml
@@ -68,8 +68,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }} ${{ matrix.python_version }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }} ${{ 
matrix.python_version }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
           python-version: |
             3.8
diff --git a/.github/workflows/beam_PostCommit_XVR_Flink.yml 
b/.github/workflows/beam_PostCommit_XVR_Flink.yml
index 3e5a5889275..ea6e0b55c76 100644
--- a/.github/workflows/beam_PostCommit_XVR_Flink.yml
+++ b/.github/workflows/beam_PostCommit_XVR_Flink.yml
@@ -69,8 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }} ${{ matrix.python_version }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }} ${{ 
matrix.python_version }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
           python-version: |
             3.8
diff --git a/.github/workflows/beam_PostCommit_XVR_GoUsingJava_Dataflow.yml 
b/.github/workflows/beam_PostCommit_XVR_GoUsingJava_Dataflow.yml
index 64c87c92c5e..2d37e0522c9 100644
--- a/.github/workflows/beam_PostCommit_XVR_GoUsingJava_Dataflow.yml
+++ b/.github/workflows/beam_PostCommit_XVR_GoUsingJava_Dataflow.yml
@@ -67,10 +67,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          python-version: '3.8'
+          python-version: 3.8
       - name: run XVR GoUsingJava Dataflow script
         env:
           USER: github-actions
diff --git a/.github/workflows/beam_PostCommit_XVR_JavaUsingPython_Dataflow.yml 
b/.github/workflows/beam_PostCommit_XVR_JavaUsingPython_Dataflow.yml
index 4f3cf65ce5d..494ab1e277d 100644
--- a/.github/workflows/beam_PostCommit_XVR_JavaUsingPython_Dataflow.yml
+++ b/.github/workflows/beam_PostCommit_XVR_JavaUsingPython_Dataflow.yml
@@ -68,8 +68,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }} ${{ matrix.python_version }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }} ${{ 
matrix.python_version }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
           python-version: |
             3.8
diff --git 
a/.github/workflows/beam_PostCommit_XVR_PythonUsingJavaSQL_Dataflow.yml 
b/.github/workflows/beam_PostCommit_XVR_PythonUsingJavaSQL_Dataflow.yml
index f000d1956f0..52adbc2ad82 100644
--- a/.github/workflows/beam_PostCommit_XVR_PythonUsingJavaSQL_Dataflow.yml
+++ b/.github/workflows/beam_PostCommit_XVR_PythonUsingJavaSQL_Dataflow.yml
@@ -67,8 +67,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
           python-version: 3.11
       - name: run PostCommit XVR PythonUsingJavaSQL Dataflow script
diff --git a/.github/workflows/beam_PostCommit_XVR_PythonUsingJava_Dataflow.yml 
b/.github/workflows/beam_PostCommit_XVR_PythonUsingJava_Dataflow.yml
index fdc3798999d..796544539dc 100644
--- a/.github/workflows/beam_PostCommit_XVR_PythonUsingJava_Dataflow.yml
+++ b/.github/workflows/beam_PostCommit_XVR_PythonUsingJava_Dataflow.yml
@@ -68,8 +68,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }} ${{ matrix.python_version }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }} ${{ 
matrix.python_version }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
           python-version: |
             3.8
diff --git a/.github/workflows/beam_PostCommit_XVR_Samza.yml 
b/.github/workflows/beam_PostCommit_XVR_Samza.yml
index 486a45159db..0f08490e415 100644
--- a/.github/workflows/beam_PostCommit_XVR_Samza.yml
+++ b/.github/workflows/beam_PostCommit_XVR_Samza.yml
@@ -68,8 +68,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }} ${{ matrix.python_version }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }} ${{ 
matrix.python_version }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
           python-version: |
             3.8
diff --git a/.github/workflows/beam_PostCommit_XVR_Spark3.yml 
b/.github/workflows/beam_PostCommit_XVR_Spark3.yml
index 5524f66c6af..f49765381fa 100644
--- a/.github/workflows/beam_PostCommit_XVR_Spark3.yml
+++ b/.github/workflows/beam_PostCommit_XVR_Spark3.yml
@@ -68,8 +68,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }} ${{ matrix.python_version }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }} ${{ 
matrix.python_version }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
           python-version: |
             3.8
diff --git a/.github/workflows/beam_PreCommit_Java.yml 
b/.github/workflows/beam_PreCommit_Java.yml
index e1a3361c0cf..ea3340beeba 100644
--- a/.github/workflows/beam_PreCommit_Java.yml
+++ b/.github/workflows/beam_PreCommit_Java.yml
@@ -175,6 +175,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Java PreCommit script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git 
a/.github/workflows/beam_PreCommit_Java_Amazon-Web-Services2_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Amazon-Web-Services2_IO_Direct.yml
index 0a117ec9cf9..4591fcd3dac 100644
--- a/.github/workflows/beam_PreCommit_Java_Amazon-Web-Services2_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Amazon-Web-Services2_IO_Direct.yml
@@ -100,6 +100,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Amazon-Web-Services2 IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git 
a/.github/workflows/beam_PreCommit_Java_Amazon-Web-Services_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Amazon-Web-Services_IO_Direct.yml
index 2a8061657fc..960c5958708 100644
--- a/.github/workflows/beam_PreCommit_Java_Amazon-Web-Services_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Amazon-Web-Services_IO_Direct.yml
@@ -100,6 +100,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Amazon-Web-Services IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Amqp_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Amqp_IO_Direct.yml
index 093afbe0583..e23ccea56d8 100644
--- a/.github/workflows/beam_PreCommit_Java_Amqp_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Amqp_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Amqp IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Azure_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Azure_IO_Direct.yml
index 013bd587d3d..1b997178aa6 100644
--- a/.github/workflows/beam_PreCommit_Java_Azure_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Azure_IO_Direct.yml
@@ -100,6 +100,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Azure IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Cassandra_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Cassandra_IO_Direct.yml
index 7713c026ea8..e026a1536fb 100644
--- a/.github/workflows/beam_PreCommit_Java_Cassandra_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Cassandra_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Cassandra IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Cdap_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Cdap_IO_Direct.yml
index 08650c314f2..b1c324720b3 100644
--- a/.github/workflows/beam_PreCommit_Java_Cdap_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Cdap_IO_Direct.yml
@@ -86,6 +86,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Cdap IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Clickhouse_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Clickhouse_IO_Direct.yml
index 9d2cbcffb40..f20daacd89a 100644
--- a/.github/workflows/beam_PreCommit_Java_Clickhouse_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Clickhouse_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Clickhouse IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Csv_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Csv_IO_Direct.yml
index e2b331c235b..cf7f99605c2 100644
--- a/.github/workflows/beam_PreCommit_Java_Csv_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Csv_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Csv IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Debezium_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Debezium_IO_Direct.yml
index 5497926c305..ac68cc6040f 100644
--- a/.github/workflows/beam_PreCommit_Java_Debezium_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Debezium_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Debezium IO build task
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_ElasticSearch_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_ElasticSearch_IO_Direct.yml
index ad02187c731..e6176729b37 100644
--- a/.github/workflows/beam_PreCommit_Java_ElasticSearch_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_ElasticSearch_IO_Direct.yml
@@ -84,6 +84,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run ElasticSearch IO build task
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Examples_Dataflow_Java11.yml 
b/.github/workflows/beam_PreCommit_Java_Examples_Dataflow_Java11.yml
index b12590c0160..132665df05a 100644
--- a/.github/workflows/beam_PreCommit_Java_Examples_Dataflow_Java11.yml
+++ b/.github/workflows/beam_PreCommit_Java_Examples_Dataflow_Java11.yml
@@ -103,11 +103,10 @@ jobs:
           export_default_credentials: true
       # The workflow installs java 11 and as default jvm. This is different 
from
       # PreCommit_Java_Examples_Dataflow_Java17 where the build system and 
sources are compiled with Java8
-      - name: Set up Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
-          java-version: '11'
+          java-version: 11
       - name: run javaExamplesDataflowPrecommit script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Examples_Dataflow_Java17.yml 
b/.github/workflows/beam_PreCommit_Java_Examples_Dataflow_Java17.yml
index d4a55aa3a82..6ae9eaf2572 100644
--- a/.github/workflows/beam_PreCommit_Java_Examples_Dataflow_Java17.yml
+++ b/.github/workflows/beam_PreCommit_Java_Examples_Dataflow_Java17.yml
@@ -94,10 +94,9 @@ jobs:
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
       # The test requires Java 17 and Java 8 versions.
       # Java 8 is installed second because JAVA_HOME needs to point to Java 8.
-      - name: Set up Java 17 and 8
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
           java-version: |
             17
             8
diff --git 
a/.github/workflows/beam_PreCommit_Java_File-schema-transform_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_File-schema-transform_IO_Direct.yml
index aeb9ed6d505..2446eb972c6 100644
--- a/.github/workflows/beam_PreCommit_Java_File-schema-transform_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_File-schema-transform_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run File-schema-transform IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_GCP_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_GCP_IO_Direct.yml
index dc937f2abcd..e5ef36c0045 100644
--- a/.github/workflows/beam_PreCommit_Java_GCP_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_GCP_IO_Direct.yml
@@ -100,6 +100,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PreCommit Java GCP IO Direct script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_HBase_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_HBase_IO_Direct.yml
index c71c464c933..dce33b36b9c 100644
--- a/.github/workflows/beam_PreCommit_Java_HBase_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_HBase_IO_Direct.yml
@@ -84,6 +84,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run HBase IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_HCatalog_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_HCatalog_IO_Direct.yml
index ed99e58ca0e..85723824ac5 100644
--- a/.github/workflows/beam_PreCommit_Java_HCatalog_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_HCatalog_IO_Direct.yml
@@ -84,6 +84,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run HCatalog IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Hadoop_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Hadoop_IO_Direct.yml
index 4f90aceef9e..ec3a0c5bd83 100644
--- a/.github/workflows/beam_PreCommit_Java_Hadoop_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Hadoop_IO_Direct.yml
@@ -108,6 +108,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Hadoop IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_IOs_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_IOs_Direct.yml
index 1137d9fec9e..4a221a91100 100644
--- a/.github/workflows/beam_PreCommit_Java_IOs_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_IOs_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Java IOs PreCommit script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_InfluxDb_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_InfluxDb_IO_Direct.yml
index ac35176e551..67ee59b7c4f 100644
--- a/.github/workflows/beam_PreCommit_Java_InfluxDb_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_InfluxDb_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run InfluxDb IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_JDBC_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_JDBC_IO_Direct.yml
index d2ef342e53c..4b86f8b2303 100644
--- a/.github/workflows/beam_PreCommit_Java_JDBC_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_JDBC_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run JDBC IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Jms_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Jms_IO_Direct.yml
index 223c90cd6b7..686cc759ca3 100644
--- a/.github/workflows/beam_PreCommit_Java_Jms_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Jms_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Jms IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Kafka_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Kafka_IO_Direct.yml
index 61ecc1d304c..86d59f7696f 100644
--- a/.github/workflows/beam_PreCommit_Java_Kafka_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Kafka_IO_Direct.yml
@@ -90,6 +90,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Kafka IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Kinesis_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Kinesis_IO_Direct.yml
index 8cca3951ddd..bfe0d50ec04 100644
--- a/.github/workflows/beam_PreCommit_Java_Kinesis_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Kinesis_IO_Direct.yml
@@ -100,6 +100,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Kinesis IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Kudu_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Kudu_IO_Direct.yml
index bc3d257d1db..55c81bb501a 100644
--- a/.github/workflows/beam_PreCommit_Java_Kudu_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Kudu_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Kudu IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_MongoDb_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_MongoDb_IO_Direct.yml
index b8d28c129d3..563c8714fbf 100644
--- a/.github/workflows/beam_PreCommit_Java_MongoDb_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_MongoDb_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run MongoDb IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Mqtt_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Mqtt_IO_Direct.yml
index 7b19949ee65..b85697d7e39 100644
--- a/.github/workflows/beam_PreCommit_Java_Mqtt_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Mqtt_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Mqtt IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Neo4j_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Neo4j_IO_Direct.yml
index 26b4637598b..21f746ef2ce 100644
--- a/.github/workflows/beam_PreCommit_Java_Neo4j_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Neo4j_IO_Direct.yml
@@ -84,6 +84,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Neo4j IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_PVR_Flink_Batch.yml 
b/.github/workflows/beam_PreCommit_Java_PVR_Flink_Batch.yml
index 602bb8750ae..eb2f85b5e10 100644
--- a/.github/workflows/beam_PreCommit_Java_PVR_Flink_Batch.yml
+++ b/.github/workflows/beam_PreCommit_Java_PVR_Flink_Batch.yml
@@ -88,6 +88,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run validatesPortableRunnerBatch script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_PVR_Flink_Docker.yml 
b/.github/workflows/beam_PreCommit_Java_PVR_Flink_Docker.yml
index b2f0c66c334..b3b5bd5b344 100644
--- a/.github/workflows/beam_PreCommit_Java_PVR_Flink_Docker.yml
+++ b/.github/workflows/beam_PreCommit_Java_PVR_Flink_Docker.yml
@@ -93,6 +93,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run PreCommit Java PVR Flink Docker script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Parquet_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Parquet_IO_Direct.yml
index 4a725129faa..9e52618edf9 100644
--- a/.github/workflows/beam_PreCommit_Java_Parquet_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Parquet_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Parquet IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Pulsar_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Pulsar_IO_Direct.yml
index cac0872d902..b60f53cc31f 100644
--- a/.github/workflows/beam_PreCommit_Java_Pulsar_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Pulsar_IO_Direct.yml
@@ -100,6 +100,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Pulsar IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_RabbitMq_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_RabbitMq_IO_Direct.yml
index 4983a84a126..d917c2830f5 100644
--- a/.github/workflows/beam_PreCommit_Java_RabbitMq_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_RabbitMq_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run RabbitMq IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Redis_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Redis_IO_Direct.yml
index 51970fcdff1..91095a000e1 100644
--- a/.github/workflows/beam_PreCommit_Java_Redis_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Redis_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Redis IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_SingleStore_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_SingleStore_IO_Direct.yml
index 1cae0b51872..b380e96b813 100644
--- a/.github/workflows/beam_PreCommit_Java_SingleStore_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_SingleStore_IO_Direct.yml
@@ -84,6 +84,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run SingleStore IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Snowflake_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Snowflake_IO_Direct.yml
index 7d28989b769..fab5fd4be69 100644
--- a/.github/workflows/beam_PreCommit_Java_Snowflake_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Snowflake_IO_Direct.yml
@@ -86,6 +86,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Snowflake IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Solr_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Solr_IO_Direct.yml
index b0096415b06..06ed141281d 100644
--- a/.github/workflows/beam_PreCommit_Java_Solr_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Solr_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Solr IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Spark3_Versions.yml 
b/.github/workflows/beam_PreCommit_Java_Spark3_Versions.yml
index 42b9a244008..aaab3016480 100644
--- a/.github/workflows/beam_PreCommit_Java_Spark3_Versions.yml
+++ b/.github/workflows/beam_PreCommit_Java_Spark3_Versions.yml
@@ -91,13 +91,10 @@ jobs:
           service_account_key: ${{ secrets.GCP_SA_KEY }}
           project_id: ${{ secrets.GCP_PROJECT_ID }}
           export_default_credentials: true
-      - name: Install Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'zulu'
-          java-version: '8'
-          cache: 'gradle'
-          check-latest: true
+          java-version: 8
       - name: run sparkVersionsTest script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Splunk_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Splunk_IO_Direct.yml
index 57adc64576c..f31ad63d1cf 100644
--- a/.github/workflows/beam_PreCommit_Java_Splunk_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Splunk_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Splunk IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Thrift_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Thrift_IO_Direct.yml
index 88eabd1e5c8..bb22fa8aaca 100644
--- a/.github/workflows/beam_PreCommit_Java_Thrift_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Thrift_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Thrift IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Java_Tika_IO_Direct.yml 
b/.github/workflows/beam_PreCommit_Java_Tika_IO_Direct.yml
index 62f96aec254..1dbb51bdf2a 100644
--- a/.github/workflows/beam_PreCommit_Java_Tika_IO_Direct.yml
+++ b/.github/workflows/beam_PreCommit_Java_Tika_IO_Direct.yml
@@ -82,6 +82,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Tika IO build script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Kotlin_Examples.yml 
b/.github/workflows/beam_PreCommit_Kotlin_Examples.yml
index f3e6e36a3c2..613a082a74f 100644
--- a/.github/workflows/beam_PreCommit_Kotlin_Examples.yml
+++ b/.github/workflows/beam_PreCommit_Kotlin_Examples.yml
@@ -94,13 +94,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'zulu'
-          java-version: '8'
-          cache: 'gradle'
-          check-latest: true
+          java-version: 8
       - name: run Kotlin Examples script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Portable_Python.yml 
b/.github/workflows/beam_PreCommit_Portable_Python.yml
index c1302468a71..1540600b720 100644
--- a/.github/workflows/beam_PreCommit_Portable_Python.yml
+++ b/.github/workflows/beam_PreCommit_Portable_Python.yml
@@ -99,16 +99,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }} ${{ matrix.python_version }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }} ${{ 
matrix.python_version }})
-      - name: Install Java
-        uses: actions/[email protected]
-        with:
-          distribution: 'zulu'
-          java-version: '8'
-          cache: 'gradle'
-          check-latest: true
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
+          java-version: 8
           python-version: |
             ${{ matrix.python_version }}
             3.8
diff --git a/.github/workflows/beam_PreCommit_Python_PVR_Flink.yml 
b/.github/workflows/beam_PreCommit_Python_PVR_Flink.yml
index f5457122e69..2725cc383f2 100644
--- a/.github/workflows/beam_PreCommit_Python_PVR_Flink.yml
+++ b/.github/workflows/beam_PreCommit_Python_PVR_Flink.yml
@@ -100,8 +100,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Install Python
-        uses: actions/setup-python@v4
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
           python-version: 3.11
       - name: run Python PVR Flink PreCommit script
diff --git a/.github/workflows/beam_PreCommit_SQL.yml 
b/.github/workflows/beam_PreCommit_SQL.yml
index 1fe577d759e..f4a4e30a01f 100644
--- a/.github/workflows/beam_PreCommit_SQL.yml
+++ b/.github/workflows/beam_PreCommit_SQL.yml
@@ -78,11 +78,10 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Set up Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
-          java-version: '11'
+          java-version: 11
       - name: Build and Test
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_SQL_Java11.yml 
b/.github/workflows/beam_PreCommit_SQL_Java11.yml
index 4acbecc8d0f..92b8fe36649 100644
--- a/.github/workflows/beam_PreCommit_SQL_Java11.yml
+++ b/.github/workflows/beam_PreCommit_SQL_Java11.yml
@@ -78,19 +78,12 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
-      - name: Set up Java
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
-          java-version: '11'
-      - name: Install Go
-        uses: actions/setup-go@v4
-        with:
-          go-version: '1.21'
-      - name: Install Python
-        uses: actions/setup-python@v4
-        with:
-          python-version: '3.8'
+          java-version: 11
+          python-version: 3.8
+          go-version: 1.21
       - name: Install Flutter
         uses: subosito/flutter-action@v2
         with:
diff --git a/.github/workflows/beam_PreCommit_SQL_Java17.yml 
b/.github/workflows/beam_PreCommit_SQL_Java17.yml
index a5899fff483..7d661717761 100644
--- a/.github/workflows/beam_PreCommit_SQL_Java17.yml
+++ b/.github/workflows/beam_PreCommit_SQL_Java17.yml
@@ -80,20 +80,13 @@ jobs:
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
 # The test requires Java 17 and Java 8 versions.
 # Java 8 is installed second because JAVA_HOME needs to point to Java 8.
-      - name: Set up Java 17
-        uses: actions/[email protected]
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
         with:
-          distribution: 'temurin'
-          java-version: '17'
-      - name: Set up Java 8
-        uses: actions/[email protected]
-        with:
-          distribution: 'temurin'
-          java-version: '8'
-      - name: Install Python
-        uses: actions/setup-python@v4
-        with:
-          python-version: '3.8'
+          java-version: |
+            17
+            8
+          python-version: 3.8
       - name: Build and Test
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_PreCommit_Spotless.yml 
b/.github/workflows/beam_PreCommit_Spotless.yml
index a637addf862..b4bd436a19f 100644
--- a/.github/workflows/beam_PreCommit_Spotless.yml
+++ b/.github/workflows/beam_PreCommit_Spotless.yml
@@ -92,6 +92,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: run Spotless PreCommit script
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_Prober_CommunityMetrics.yml 
b/.github/workflows/beam_Prober_CommunityMetrics.yml
index d22b7db8309..ce788aca216 100644
--- a/.github/workflows/beam_Prober_CommunityMetrics.yml
+++ b/.github/workflows/beam_Prober_CommunityMetrics.yml
@@ -69,6 +69,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Health check probes for the Community Metrics infrastructure
         uses: ./.github/actions/gradle-command-self-hosted-action
         with:
diff --git a/.github/workflows/beam_Publish_Docker_Snapshots.yml 
b/.github/workflows/beam_Publish_Docker_Snapshots.yml
index cf2520f4635..01b846eb65d 100644
--- a/.github/workflows/beam_Publish_Docker_Snapshots.yml
+++ b/.github/workflows/beam_Publish_Docker_Snapshots.yml
@@ -68,6 +68,8 @@ jobs:
           comment_phrase: ${{ matrix.job_phrase }}
           github_token: ${{ secrets.GITHUB_TOKEN }}
           github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
+      - name: Setup environment
+        uses: ./.github/actions/setup-environment-action
       - name: Authenticate on GCP
         uses: google-github-actions/setup-gcloud@v0
         with:

Reply via email to