diff --git a/bigquery-datatransfer/snippets/manage_transfer_configs.py b/bigquery-datatransfer/snippets/manage_transfer_configs.py index cd865455c10..772a0424ffd 100644 --- a/bigquery-datatransfer/snippets/manage_transfer_configs.py +++ b/bigquery-datatransfer/snippets/manage_transfer_configs.py @@ -104,6 +104,38 @@ def update_credentials_with_service_account(override_values={}): # Return the config name for testing purposes, so that it can be deleted. return transfer_config +def disable_config(override_values={}): + # [START bigquerydatatransfer_disable_config] + from google.cloud import bigquery_datatransfer + from google.protobuf import field_mask_pb2 + + transfer_client = bigquery_datatransfer.DataTransferServiceClient() + + transfer_config_name = "projects/1234/locations/us/transferConfigs/abcd" + # [END bigquerydatatransfer_disable_config] + # To facilitate testing, we replace values with alternatives + # provided by the testing harness. + transfer_config_name = override_values.get( + "transfer_config_name", transfer_config_name + ) + # [START bigquerydatatransfer_disable_config] + + transfer_config = bigquery_datatransfer.TransferConfig(name=transfer_config_name) + transfer_config.disabled = True + + transfer_config = transfer_client.update_transfer_config( + { + "transfer_config": transfer_config, + "update_mask": field_mask_pb2.FieldMask(paths=["disabled"]), + } + ) + + print(f"Updated config: '{transfer_config.name}'") + print(f"Is config disabled: '{transfer_config.disabled}'") + # [END bigquerydatatransfer_disable_config] + # Return the config name for testing purposes, so that it can be deleted. + return transfer_config + def schedule_backfill_manual_transfer(override_values={}): # [START bigquerydatatransfer_schedule_backfill]