Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
76 commits
Select commit Hold shift + click to select a range
98ff5f1
Support logging the key during a KeyCommitTooLarge if EnableHotKeyLog…
rwiggles Jul 14, 2026
46b00af
Update runners/google-cloud-dataflow-java/worker/src/main/java/org/ap…
rwiggles Jul 14, 2026
7b84c19
Update runners/google-cloud-dataflow-java/worker/src/main/java/org/ap…
rwiggles Jul 14, 2026
f186962
Update runners/google-cloud-dataflow-java/worker/src/test/java/org/ap…
rwiggles Jul 14, 2026
692dffb
gemini review responses
rwiggles Jul 14, 2026
f9a0555
Fix imports
rwiggles Jul 14, 2026
b745207
one more
rwiggles Jul 14, 2026
c8a7649
one more attempt
rwiggles Jul 15, 2026
df5415c
one more attempt
rwiggles Jul 15, 2026
dd9f215
formatting fix
rwiggles Jul 15, 2026
c11f60b
Bump actions/checkout from 6 to 7 (#39335)
dependabot[bot] Jul 15, 2026
0136c36
Bump cloud.google.com/go/datastore from 1.24.0 to 1.25.0 in /sdks (#3…
dependabot[bot] Jul 15, 2026
09f09d4
Bump github.com/aws/aws-sdk-go-v2/feature/s3/manager in /sdks (#39334)
dependabot[bot] Jul 15, 2026
604e177
Add Spark JVM --add-opens for (Nexmark, TPC-DS, PortableJar) (#39337)
aIbrahiim Jul 15, 2026
1738d11
fix: add retries and query parameter encoding for GitHub API requests…
raman118 Jul 1, 2026
a06c857
fix: add Apache license header to test_sending.py
raman118 Jul 1, 2026
9e6ac08
Move validation to StreamingModeExecutionContext
rwiggles Jul 17, 2026
18f7042
remove unused import
rwiggles Jul 17, 2026
9ab7d50
respond to comments
rwiggles Jul 22, 2026
e4fa9e5
bugfix
rwiggles Jul 22, 2026
f6a5931
Update runners/google-cloud-dataflow-java/worker/src/main/java/org/ap…
rwiggles Jul 22, 2026
9dab803
respond to comments
rwiggles Jul 22, 2026
5c0b302
log the fused stage name instead of the computation name in more places
rwiggles Jul 28, 2026
1d151cf
Switch logging to fused stage name in more places. This simplifies op…
rwiggles Jul 30, 2026
7d1fc11
Bump cloud.google.com/go/spanner from 1.93.0 to 1.94.0 in /sdks (#39550)
dependabot[bot] Jul 30, 2026
8049942
confusion
rwiggles Jul 30, 2026
4e2f073
Fix DataflowOutputCounter calculation for ValueInEmptyWindows (#39487)
shunping Jul 30, 2026
e54f2cc
[IcebergIO] Upgrade Iceberg dependency to 1.11.0 (#39559)
peterphitran Jul 30, 2026
42a47c3
Clean up legacy references to apitools in GCS I/O (#39433)
jrmccluskey Jul 31, 2026
4dfdf4f
[Iceberg] Make timestamptz return new Timestamp.MICROS logical type (…
ahmedabu98 Jul 31, 2026
f14b5cd
Fix flaky unit test to pass post-submit checks (#39562)
ian-Liaozy Jul 31, 2026
d64c6b6
Bump github/codeql-action from 4 to 4.37.3 (#39564)
dependabot[bot] Jul 31, 2026
f39e524
Support IBM MQ for Python JmsIO (#39467)
Abacn Jul 31, 2026
cbb0b60
use Java 17 harness (#39570)
aIbrahiim Jul 31, 2026
ef2cfd6
Remove remaining artifacts from dataflow apitools client (#39439)
jrmccluskey Jul 31, 2026
5daa73b
update containers (#39575)
ahmedabu98 Aug 1, 2026
efd61f9
Fix flaky FileIOTest.testMatchWatchForNewFiles test under CI filesyst…
bvolpato Aug 3, 2026
9db21f9
Bump google.golang.org/grpc from 1.82.1 to 1.83.0 in /sdks (#39585)
dependabot[bot] Aug 3, 2026
83874ed
Bump github/codeql-action from 4.37.3 to 4.37.4 (#39586)
dependabot[bot] Aug 3, 2026
f72fecd
Support core dump analysis with pystack and gdb. (#39484)
tvalentyn Aug 3, 2026
b0a6a9c
Bump github.com/nats-io/nats-server/v2 from 2.14.3 to 2.14.4 in /sdks…
dependabot[bot] Aug 3, 2026
50379cc
[Docs] Update Flink version references on the Flink runner page (#39212)
Eliaaazzz Aug 3, 2026
eb31b78
Fix dataframe CSV tests on Windows (#39563)
Guflly Aug 3, 2026
c9ca79f
Support array-valued schema options in Python (#39583)
bvolpato Aug 3, 2026
8399607
Feat: new cleaning rule to orphaned subscriptions (#39538)
HansMarcus01 Aug 3, 2026
a37a9ef
[Docs] Add CHANGES entries for Python UnboundedSource and Watch (#39579)
Eliaaazzz Aug 3, 2026
5cae01d
Fix internal test failure after #39487 (#39591)
shunping Aug 3, 2026
6d684f1
Add query_output_schema to ReadFromBigQuery for BEAM_ROW + query supp…
nikitagrover19 Aug 3, 2026
bcdbffd
[DebeziumIO] Upgrade to Debezium 3.5.2.Final (#39569)
tkaymak Aug 3, 2026
b000b56
[Python] Bound Watch state with a timestamp cursor (#39090)
Eliaaazzz Aug 3, 2026
dced819
Redistribute - trace propagation (#39590)
stankiewicz Aug 3, 2026
cb731f3
update containers (#39596)
ahmedabu98 Aug 3, 2026
28cf5e1
remove gsutil usage (#39448)
derrickaw Aug 3, 2026
ce8042c
[Iceberg CDC] Add Changelog readers and update resolver (#38837)
ahmedabu98 Aug 3, 2026
4711eb3
Update activemq to 5.19.5 (#39593)
jrmccluskey Aug 4, 2026
1ccc443
Potential fix for environment variable built from user-controlled sou…
derrickaw Aug 4, 2026
bfb1470
syncing
rwiggles Aug 5, 2026
3334dc1
Part 1: Log systemName in DataflowWorkUnitClient, Commit, and core wo…
rwiggles Aug 4, 2026
3c9d4fd
Create span in spanner CDC to start new trace when otel is enabled. (…
stankiewicz Aug 4, 2026
9f15b2d
Fix OpenTelemetry dependencies in published POMs (#39608)
bvolpato Aug 4, 2026
715e730
Bump github.com/aws/aws-sdk-go-v2/config in /sdks (#39606)
dependabot[bot] Aug 4, 2026
175a9a4
Bump github.com/aws/aws-sdk-go-v2/service/s3 in /sdks (#39609)
dependabot[bot] Aug 4, 2026
90d02f5
Bump com.gradle.common-custom-user-data-gradle-plugin (#39602)
dependabot[bot] Aug 4, 2026
f80e85b
[Go SDK] Add GroupIntoBatches transform (#19868) (#38220)
florian-trehaut Aug 4, 2026
2776dfa
Bump github.com/aws/aws-sdk-go-v2/feature/s3/manager in /sdks (#39605)
dependabot[bot] Aug 4, 2026
65e0538
Bump zizmorcore/zizmor-action from 0.6.1 to 0.6.2 (#39604)
dependabot[bot] Aug 5, 2026
49fdfcb
Adds the Delta Lake CDC read transforms to the Managed I/O API (#39599)
chamikaramj Aug 5, 2026
2d1743d
mention otel in changes (#39618)
stankiewicz Aug 5, 2026
5c96e0d
Support sharded coder for Prism runner cross-lang (#39623)
Abacn Aug 5, 2026
b37b5be
Fix Dataflow ValueProvider serialization (#39614)
bvolpato Aug 5, 2026
df5737b
Deflake JmsIO tests (#39571)
Abacn Aug 5, 2026
469d442
[Docs] Add a contributor guide for running Python on a local Flink cl…
Eliaaazzz Aug 5, 2026
a5c3bf3
fix PostCommit Python Dependency
aIbrahiim Aug 5, 2026
5bc8cfc
fix(dataframe): claim remaining restriction range on empty/header-onl…
ManvithPanyam Aug 5, 2026
2194293
[Iceberg CDC] Finish wiring CDC source together and add external API …
ahmedabu98 Aug 5, 2026
22a11b8
Updates CHANGES.md to include Delta Lake CDC
chamikaramj Aug 5, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/trigger_files/IO_Iceberg_Integration_Tests.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{
"comment": "Modify this file in a trivial way to cause this test suite to run.",
"modification": 2
"modification": 1
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{
"comment": "Modify this file in a trivial way to cause this test suite to run.",
"modification": 2
"modification": 1
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{
"comment": "Modify this file in a trivial way to cause this test suite to run.",
"modification": 1
"modification": 3
}
4 changes: 2 additions & 2 deletions .github/trigger_files/beam_PostCommit_Python_Dependency.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{
"comment": "Modify this file in a trivial way to cause this test suite to run",
"modification": 3
}
"modification": 4
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{
"comment": "Modify this file in a trivial way to cause this test suite to run",
"modification": 2
"modification": 3
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{
"comment": "Modify this file in a trivial way to cause this test suite to run",
"modification": 1
"modification": 2
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{
"comment": "Modify this file in a trivial way to cause this test suite to run",
"modification": 5
"modification": 7
}
2 changes: 0 additions & 2 deletions .github/workflows/beam_PostCommit_Java_Delta_IO_Dataflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,8 +64,6 @@ jobs:
job_phrase: ["Run PostCommit Java Delta IO Dataflow"]
steps:
- uses: actions/checkout@v7
with:
persist-credentials: false
- name: Setup repository
uses: ./.github/actions/setup-action
with:
Expand Down
18 changes: 17 additions & 1 deletion .github/workflows/beam_PreCommit_GHA.yml
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,22 @@ jobs:
comment_phrase: ${{ matrix.job_phrase }}
github_token: ${{ secrets.GITHUB_TOKEN }}
github_job: ${{ matrix.job_name }} (${{ matrix.job_phrase }})
- name: Check for gsutil references
run: |
echo "Checking codebase for gsutil..."
# Search for 'gsutil', excluding this workflow file itself to avoid false positives.
if git grep -n "gsutil" -- ':!.github/workflows/beam_PreCommit_GHA.yml'; then
echo "ERROR: Found references to gsutil in the codebase. Please use 'gcloud storage' instead."
exit 1
elif [ "$(date +%Y%m)" -ge 202704 ]; then
echo "ERROR: Current date is April 2027 or later."
echo "Please verify gsutil deprecation date is still March 2027 (Reference: https://docs.cloud.google.com/storage/docs/gsutil)."
echo "If so, then delete this workflow step."
exit 1
else
echo "SUCCESS: No references to gsutil found."
fi
shell: bash
- name: Setup environment
uses: ./.github/actions/setup-environment-action
with:
Expand All @@ -90,7 +106,7 @@ jobs:
- name: Validate GHA Allowlist
uses: apache/infrastructure-actions/allowlist-check@main # zizmor: ignore[unpinned-uses]
- name: Run zizmor
uses: zizmorcore/zizmor-action@6fc4b006235f201fdab3722e17240ab420d580e5 # v0.6.1
uses: zizmorcore/zizmor-action@3dc1ecc9bcb9e94e9b2c709687979e1298497054 # v0.6.2
with:
advanced-security: true
- name: run GHA PreCommit script
Expand Down
17 changes: 15 additions & 2 deletions .github/workflows/beam_Publish_Beam_SDK_Snapshots.yml
Original file line number Diff line number Diff line change
Expand Up @@ -90,8 +90,21 @@ jobs:
# This is needed to run pipelines that use the default environment at HEAD, for example, when a
# pipeline uses an expansion service built from HEAD.
run: |
BEAM_VERSION_LINE=$(cat gradle.properties | grep "sdk_version")
echo "BEAM_VERSION=${BEAM_VERSION_LINE#*sdk_version=}" >> $GITHUB_ENV
BEAM_VERSION_LINE=$(grep -m1 '^sdk_version=' gradle.properties || true)
if [ -z "$BEAM_VERSION_LINE" ]; then
echo "Could not find sdk_version in gradle.properties"
exit 1
fi

BEAM_VERSION="${BEAM_VERSION_LINE#sdk_version=}"

# Prevent environment file injection via CR/LF.
if [[ "$BEAM_VERSION" =~ [$'\r\n'] ]]; then
echo "Invalid sdk_version: contains newline characters"
exit 1
fi

printf 'BEAM_VERSION=%s\n' "$BEAM_VERSION" >> "$GITHUB_ENV"
- name: Set latest tag only on master branch
if: github.ref == 'refs/heads/master'
run: echo "LATEST_TAG=,latest" >> $GITHUB_ENV
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/build_wheels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -201,7 +201,7 @@ jobs:
if: needs.check_env_variables.outputs.gcp-variables-set == 'true' && github.event_name != 'pull_request'
steps:
- name: Remove existing files on GCS bucket
run: gsutil rm -r ${GCP_PATH} || true
run: gcloud storage rm -r ${GCP_PATH} || true

upload_source_to_gcs:
name: Upload python source distribution to GCS bucket
Expand All @@ -217,7 +217,7 @@ jobs:
name: source_zip
path: source/
- name: Copy sources to GCS bucket
run: gsutil cp -r -a public-read source/* ${GCP_PATH}
run: gcloud storage cp -r --predefined-acl=publicRead source/* ${GCP_PATH}

build_wheels:
name: Build python ${{matrix.py_version}} wheels on ${{matrix.os_python.arch}} for ${{ matrix.os_python.os }}
Expand Down Expand Up @@ -330,7 +330,7 @@ jobs:
merge-multiple: true
path: wheelhouse/
- name: Copy wheels to GCS bucket
run: gsutil cp -r -a public-read wheelhouse/* ${GCP_PATH}
run: gcloud storage cp -r --predefined-acl=publicRead wheelhouse/* ${GCP_PATH}
- name: Create github action information file on GCS bucket
run: |
cat > github_action_info <<EOF
Expand All @@ -348,9 +348,9 @@ jobs:
GITHUB_BASE_REF=$GITHUB_BASE_REF
EOF
echo $(cat github_action_info)
gsutil cp -a public-read github_action_info ${GCP_PATH}
gcloud storage cp --predefined-acl=publicRead github_action_info ${GCP_PATH}
- name: Upload GitHub event file to GCS bucket
run: gsutil cp -a public-read ${GITHUB_EVENT_PATH} ${GCP_PATH}
run: gcloud storage cp --predefined-acl=publicRead ${GITHUB_EVENT_PATH} ${GCP_PATH}

list_files_on_gcs:
name: List files on Google Cloud Storage Bucket
Expand All @@ -361,7 +361,7 @@ jobs:
if: needs.check_env_variables.outputs.gcp-variables-set == 'true' && github.event_name != 'pull_request'
steps:
- name: List file on Google Cloud Storage Bucket
run: gsutil ls "${GCP_PATH}*"
run: gcloud storage ls "${GCP_PATH}*"

branch_repo_nightly:
permissions:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,7 @@ jobs:

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v4
uses: github/codeql-action/init@v4.37.4
with:
languages: ${{ matrix.language }}
build-mode: ${{ matrix.build-mode }}
Expand Down Expand Up @@ -192,6 +192,6 @@ jobs:
fi

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v4
uses: github/codeql-action/analyze@v4.37.4
with:
category: "/language:${{matrix.language}}"
12 changes: 6 additions & 6 deletions .github/workflows/run_rc_validation_go_wordcount.yml
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ jobs:
# --- Prism Steps ---
- name: Download Input File from GCS (Prism)
working-directory: ./${{ steps.setup_go.outputs.work_dir }}
run: gsutil cp ${{ env.GCS_INPUT_PATH }} ./kinglear.txt
run: gcloud storage cp ${{ env.GCS_INPUT_PATH }} ./kinglear.txt

- name: Run Go WordCount with PrismRunner
working-directory: ./${{ steps.setup_go.outputs.work_dir }}
Expand Down Expand Up @@ -118,17 +118,17 @@ jobs:
--environment_config=apache/beam_go_sdk:${{ env.CONTAINER_TAG }}

- name: Check Dataflow Output in GCS
working-directory: ./${{ steps.setup_go.outputs.work_dir }} # Added working directory for consistency, though not strictly needed for gsutil
working-directory: ./${{ steps.setup_go.outputs.work_dir }} # Added working directory for consistency, though not strictly needed for gcloud storage
env:
# Re-define the output path pattern for checking
GCS_OUTPUT_PATH_PATTERN: ${{ env.GCS_OUTPUT_PREFIX }}/${{ env.RC_TAG }}/dataflow/output*
run: |
echo "Checking for Dataflow output files in GCS at: $GCS_OUTPUT_PATH_PATTERN"
# Use gsutil stat. The -q flag suppresses errors for non-existent files,
# allowing us to check the exit code. Exit code 0 means found, 1 means not found.
if gsutil -q stat $GCS_OUTPUT_PATH_PATTERN; then
# Use gcloud storage ls. Redirect stdout/stderr to suppress output.
# Exit code 0 means found, non-zero means not found.
if gcloud storage ls $GCS_OUTPUT_PATH_PATTERN > /dev/null 2>&1; then
echo "Output files found in GCS."
FILE_COUNT=$(gsutil ls $GCS_OUTPUT_PATH_PATTERN | wc -l)
FILE_COUNT=$(gcloud storage ls $GCS_OUTPUT_PATH_PATTERN | wc -l)
if [ "$FILE_COUNT" -gt 0 ]; then echo "Found $FILE_COUNT output file(s)."; else echo "Error: Output path exists but contains no files."; exit 1; fi
else
echo "Error: Output files not found in GCS at $GCS_OUTPUT_PATH_PATTERN"
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/run_rc_validation_python_mobile_gaming.yml
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,7 @@ jobs:
- name: Create GCS Bucket (if needed - reusing input bucket)
run: |
echo "Ensuring GCS Bucket exists: ${{ env.GCS_BUCKET }} in project ${{ env.GCP_PROJECT_ID }}"
gsutil mb -p ${{ env.GCP_PROJECT_ID }} ${{ env.GCS_BUCKET }} || echo "Bucket ${{ env.GCS_BUCKET }} likely already exists."
gcloud storage buckets create ${{ env.GCS_BUCKET }} --project=${{ env.GCP_PROJECT_ID }} || echo "Bucket ${{ env.GCS_BUCKET }} likely already exists."
shell: bash

- name: Create PubSub Topic
Expand Down Expand Up @@ -533,8 +533,8 @@ jobs:
if: always()
run: |
echo "Deleting objects in GCS Bucket: ${{ env.GCS_BUCKET }}/temp/"
gsutil -m rm -r "${{ env.GCS_BUCKET }}/temp/leaderboard/**" || echo "Failed to delete objects in GCS leaderboard temp folder."
gsutil -m rm -r "${{ env.GCS_BUCKET }}/temp/gamestats/**" || echo "Failed to delete objects in GCS gamestats temp folder."
gcloud storage rm -r "${{ env.GCS_BUCKET }}/temp/leaderboard/**" || echo "Failed to delete objects in GCS leaderboard temp folder."
gcloud storage rm -r "${{ env.GCS_BUCKET }}/temp/gamestats/**" || echo "Failed to delete objects in GCS gamestats temp folder."
echo "Removing local log and jobid files..."
rm -f leaderboard_dataflow_submit.log gamestats_dataflow_submit.log injector_run.log
rm -f leaderboard_dataflow_jobid.txt # Remove Leaderboard jobid file here
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/run_rc_validation_python_yaml.yml
Original file line number Diff line number Diff line change
Expand Up @@ -265,9 +265,9 @@ jobs:
sleep 60
# Check if any files matching the pattern exist within the unique output folder.
echo "Checking for files matching pattern: ${OUTPUT_PATTERN}"
if gsutil ls "${OUTPUT_PATTERN}" > /dev/null 2>&1; then
if gcloud storage ls "${OUTPUT_PATTERN}" > /dev/null 2>&1; then
echo "SUCCESS: Found output files matching pattern in GCS."
gsutil ls "${OUTPUT_PATTERN}" # List found files
gcloud storage ls "${OUTPUT_PATTERN}" # List found files
else
echo "ERROR: No output files found matching pattern '${OUTPUT_PATTERN}' in GCS bucket."
exit 1
Expand All @@ -280,7 +280,7 @@ jobs:
run: |
echo "Deleting unique run folder in GCS: ${GCS_UNIQUE_FOLDER_PREFIX}"
# Delete the entire unique folder for this run, including temp, staging, and output
gsutil -m rm -r "${GCS_UNIQUE_FOLDER_PREFIX}" || echo "Failed to delete unique run folder ${GCS_UNIQUE_FOLDER_PREFIX} in GCS. Manual cleanup might be required."
gcloud storage rm -r "${GCS_UNIQUE_FOLDER_PREFIX}" || echo "Failed to delete unique run folder ${GCS_UNIQUE_FOLDER_PREFIX} in GCS. Manual cleanup might be required."

echo "Removing local log, yaml, and jobid files..."
rm -f yaml_dataflow_submit.log ${{ env.YAML_PIPELINE_FILE }} yaml_dataflow_jobid.txt
Expand Down
2 changes: 1 addition & 1 deletion .test-infra/dataproc/flink_cluster.sh
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ YARN_APPLICATION_MASTER=""

function upload_init_actions() {
echo "Uploading initialization actions to GCS bucket: $GCS_BUCKET"
gsutil cp -r $INIT_ACTIONS_FOLDER_NAME/* $GCS_BUCKET/$INIT_ACTIONS_FOLDER_NAME
gcloud storage cp -r $INIT_ACTIONS_FOLDER_NAME/* $GCS_BUCKET/$INIT_ACTIONS_FOLDER_NAME
}

function get_leader() {
Expand Down
1 change: 1 addition & 0 deletions .test-infra/metrics/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@ composeUp {
dependsOn "createEmptyConfig"
}
dockerCompose {
projectName = 'beammetrics'
environment.put 'DOCKER_CONFIG', project.rootProject.buildDir
}

Expand Down
9 changes: 4 additions & 5 deletions .test-infra/metrics/influxdb/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,13 @@
# limitations under the License.
################################################################################

FROM python:3.10-slim

RUN pip install --no-cache-dir gsutil
FROM alpine:latest

WORKDIR /

RUN gsutil cp gs://apache-beam-testing-metrics/influxdb-backup.tar.gz . && \
tar xzf influxdb-backup.tar.gz
RUN apk add --no-cache curl tar && \
curl -sS https://storage.googleapis.com/apache-beam-testing-metrics/influxdb-backup.tar.gz -o influxdb-backup.tar.gz && \
tar xzf influxdb-backup.tar.gz


FROM influxdb:1.8.0
Expand Down
24 changes: 0 additions & 24 deletions .test-infra/metrics/influxdb/gsutil/.boto

This file was deleted.

25 changes: 0 additions & 25 deletions .test-infra/metrics/influxdb/gsutil/Dockerfile

This file was deleted.

7 changes: 5 additions & 2 deletions .test-infra/metrics/kubernetes/beam-influxdb-autobackup.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,12 @@ spec:
- mountPath: /backup
name: shared-data
- name: copy-to-gsc-bucket
image: gcr.io/apache-beam-testing/gsutil
image: gcr.io/google.com/cloudsdktool/google-cloud-cli:stable-slim
env:
- name: CLOUDSDK_CORE_PROJECT
value: apache-beam-testing
command: ['sh', '-c', 'tar czf influxdb-backup.tar.gz /backup
&& gsutil cp influxdb-backup.tar.gz
&& gcloud storage cp influxdb-backup.tar.gz
gs://apache-beam-testing-metrics/']
volumeMounts:
- mountPath: /backup
Expand Down
15 changes: 10 additions & 5 deletions .test-infra/tools/stale_cleaner.py
Original file line number Diff line number Diff line change
Expand Up @@ -336,10 +336,13 @@ def _active_resources(self) -> dict:
for subscription in self.client.list_subscriptions(request={"project": self.project_path}):
subscription_name = subscription.name
# Apply prefix filtering if prefixes are defined
if not self.prefixes or any(subscription_name.startswith(f"{self.project_path}/subscriptions/{prefix}") for prefix in self.prefixes):
# Check if the subscription has a topic associated with it
if subscription.detached:
if subscription.detached:
d[subscription_name] = GoogleCloudResource(resource_name=subscription_name, clock=self.clock)
#Only attached subscriptions with the NYC taxi prefix are eligible.
elif any(
subscription_name.startswith(f"{self.project_path}/subscriptions/{prefix}") for prefix in self.prefixes
):
d[subscription_name] = GoogleCloudResource(resource_name=subscription_name, clock=self.clock)

return d

Expand Down Expand Up @@ -416,8 +419,10 @@ def clean_pubsub_subscriptions():
project_id = DEFAULT_PROJECT_ID
bucket_name = DEFAULT_BUCKET_NAME

# No prefixes are defined for subscriptions so we will delete all stale subscriptions
prefixes = []
# Restrict subscription cleanup to the NYC taxi prefix only.
prefixes = [
"taxirides-realtime_beam_",
]

# Create a PubSubSubscriptionCleaner instance
cleaner = PubSubSubscriptionCleaner(project_id=project_id, bucket_name=bucket_name,
Expand Down
Loading
Loading