From 95d5ecd9ca641b99a8f89caa7228d1b0ccff1c0a Mon Sep 17 00:00:00 2001 From: Shubhangi Singh Date: Wed, 1 Oct 2025 20:45:29 +0000 Subject: [PATCH 1/4] refactor --- .../storage_control_anywhere_cache_test.rb | 12 +++--- .../storage_control_create_anywhere_cache.rb | 39 +++++++++++++------ .../storage_control_disable_anywhere_cache.rb | 26 ++++++++----- .../storage_control_get_anywhere_cache.rb | 24 +++++++----- .../storage_control_pause_anywhere_cache.rb | 26 ++++++++----- .../storage_control_resume_anywhere_cache.rb | 28 ++++++++----- .../storage_control_update_anywhere_cache.rb | 33 +++++++++++----- 7 files changed, 125 insertions(+), 63 deletions(-) diff --git a/google-cloud-storage-control/samples/acceptance/storage_control_anywhere_cache_test.rb b/google-cloud-storage-control/samples/acceptance/storage_control_anywhere_cache_test.rb index 0e42b17feee1..393b3aea8294 100644 --- a/google-cloud-storage-control/samples/acceptance/storage_control_anywhere_cache_test.rb +++ b/google-cloud-storage-control/samples/acceptance/storage_control_anywhere_cache_test.rb @@ -40,7 +40,7 @@ out_create, _err = capture_io do create_anywhere_cache bucket_name: bucket_name, zone: zone end - assert_includes out_create, "AnywhereCache created - #{anywhere_cache_name}" + assert_includes out_create, "Successfully running anywhereCache - #{anywhere_cache_name}" out_list, _err = capture_io do list_anywhere_caches bucket_name: bucket_name @@ -50,26 +50,26 @@ out_get, _err = capture_io do get_anywhere_cache bucket_name: bucket_name, anywhere_cache_id: zone end - assert_includes out_get, "AnywhereCache #{anywhere_cache_name} fetched" + assert_includes out_get, "Successfully fetched anywhereCache - #{anywhere_cache_name}" out_update, _err = capture_io do update_anywhere_cache bucket_name: bucket_name, anywhere_cache_id: zone end - assert_includes out_update, "AnywhereCache #{anywhere_cache_name} updated" + assert_includes out_update, "Successfully updated anywhereCache - #{anywhere_cache_name}" out_pause, _err = capture_io do pause_anywhere_cache bucket_name: bucket_name, anywhere_cache_id: zone end - assert_includes out_pause, "AnywhereCache #{anywhere_cache_name} paused" + assert_includes out_pause, "Successfully paused anywhereCache - #{anywhere_cache_name}" out_resume, _err = capture_io do resume_anywhere_cache bucket_name: bucket_name, anywhere_cache_id: zone end - assert_includes out_resume, "AnywhereCache #{anywhere_cache_name} running" + assert_includes out_resume, "Successfully resumed anywhereCache - #{anywhere_cache_name}" out_disable, _err = capture_io do disable_anywhere_cache bucket_name: bucket_name, anywhere_cache_id: zone end - assert_includes out_disable, "AnywhereCache #{anywhere_cache_name} disabled" + assert_includes out_disable, "Successfully disabled anywhereCache for #{anywhere_cache_name}" end end diff --git a/google-cloud-storage-control/samples/storage_control_create_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_create_anywhere_cache.rb index 8bf99bc0af61..df5035d82c08 100644 --- a/google-cloud-storage-control/samples/storage_control_create_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_create_anywhere_cache.rb @@ -15,13 +15,25 @@ # [START storage_control_create_anywhere_cache] require "google/cloud/storage/control" +# Creates a new Anywhere Cache for a specified bucket and waits for it +# to become active. +# +# This method initiates the creation of an Anywhere Cache in the given zone for +# the specified bucket. After sending the creation request, it polls the status +# of the cache with an exponential backoff strategy until the cache's state is +# "running". Progress and final status are printed to the console. +# +# @param bucket_name [String] The name of the bucket. +# @param zone [String] The zone where the Anywhere Cache instance should be +# located (e.g., "us-east1-b"). +# +# @example +# create_anywhere_cache( +# bucket_name: "your-unique-bucket-name", +# zone: "us-east1-b" +# ) +# def create_anywhere_cache bucket_name:, zone: - # The Name of your GCS bucket - # bucket_name = "your-unique-bucket-name" - - # Zone where you want to create cache - # zone = "your-zone-name" - # Create a client object. The client can be reused for multiple calls. storage_control_client = Google::Cloud::Storage::Control.storage_control # Set project to "_" to signify global bucket @@ -48,16 +60,21 @@ def create_anywhere_cache bucket_name:, zone: result = storage_control_client.get_anywhere_cache get_request min_delay = 180 # 3 minutes max_delay = 900 # 15 minutes - while result.state != "running" - puts "Cache not running yet, current state is #{result.state}. Retrying in #{min_delay} seconds." + while result.state&.downcase != "running" + unless ["paused", "disabled", "creating"].include? result.state&.downcase + raise Google::Cloud::Error, + "AnywhereCache operation failed on the backend with state #{result.state&.downcase}." + end + puts "Cache not running yet, current state is #{result.state&.downcase}. Retrying in #{min_delay} seconds." sleep min_delay min_delay = [min_delay * 2, max_delay].min # Exponential backoff with a max delay result = storage_control_client.get_anywhere_cache get_request end - puts "AnywhereCache created - #{result.name}" - rescue Google::Cloud::Error => e - puts "Error creating AnywhereCache: #{e.message}" + message = "Successfully created anywhereCache - #{result.name}" + rescue StandardError => e + message = "Failed to create AnywhereCache. Error: #{e.message}" end + puts message end # [END storage_control_create_anywhere_cache] create_anywhere_cache bucket_name: ARGV.shift, zone: ARGV.shift if $PROGRAM_NAME == __FILE__ diff --git a/google-cloud-storage-control/samples/storage_control_disable_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_disable_anywhere_cache.rb index 03d6b7c09cf5..2726e91e996f 100644 --- a/google-cloud-storage-control/samples/storage_control_disable_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_disable_anywhere_cache.rb @@ -15,13 +15,21 @@ # [START storage_control_disable_anywhere_cache] require "google/cloud/storage/control" +# Disables a specific Anywhere Cache instance for a bucket. +# This operation disables the cache but does not delete it. A disabled cache +# can be re-enabled later. +# +# @param bucket_name [String] The name of the bucket. +# @param anywhere_cache_id [String] A value that, along with the bucket's +# name, uniquely identifies the cache instance (e.g., "us-east1-b"). +# +# @example +# disable_anywhere_cache( +# bucket_name: "your-unique-bucket-name", +# anywhere_cache_id: "us-east1-b" +# ) +# def disable_anywhere_cache bucket_name:, anywhere_cache_id: - # The Name of your GCS bucket - # bucket_name = "your-unique-bucket-name" - - # A value that, along with the bucket's name, uniquely identifies the cache - # anywhere_cache_id = "us-east1-b" - # Create a client object. The client can be reused for multiple calls. storage_control_client = Google::Cloud::Storage::Control.storage_control # Set project to "_" to signify global bucket @@ -36,9 +44,9 @@ def disable_anywhere_cache bucket_name:, anywhere_cache_id: # The cache can be re-enabled later. begin result = storage_control_client.disable_anywhere_cache request - puts "AnywhereCache #{result.name} #{result.state}" - rescue Google::Cloud::Error => e - puts "Error disabling AnywhereCache: #{e.message}" + puts "Successfully #{result.state} anywhereCache - #{result.name}" + rescue StandardError => e + puts "Error disabling anywhereCache: #{e.message}" end end # [END storage_control_disable_anywhere_cache] diff --git a/google-cloud-storage-control/samples/storage_control_get_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_get_anywhere_cache.rb index 65b321fc0ccf..a8e84b679438 100644 --- a/google-cloud-storage-control/samples/storage_control_get_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_get_anywhere_cache.rb @@ -15,13 +15,19 @@ # [START storage_control_get_anywhere_cache] require "google/cloud/storage/control" +# Retrieves an Anywhere Cache configuration for a given bucket. +# +# @param bucket_name [String] The name of the bucket. +# @param anywhere_cache_id [String] A value that, along with the bucket's +# name, uniquely identifies the cache. (e.g. "us-east1-b") +# +# @example +# get_anywhere_cache( +# bucket_name: "your-unique-bucket-name", +# anywhere_cache_id: "us-east1-b" +# ) +# def get_anywhere_cache bucket_name:, anywhere_cache_id: - # The Name of your GCS bucket - # bucket_name = "your-unique-bucket-name" - - # A value that, along with the bucket's name, uniquely identifies the cache - # anywhere_cache_id = "us-east1-b" - # Create a client object. The client can be reused for multiple calls. storage_control_client = Google::Cloud::Storage::Control.storage_control # Set project to "_" to signify global bucket @@ -38,9 +44,9 @@ def get_anywhere_cache bucket_name:, anywhere_cache_id: begin result = storage_control_client.get_anywhere_cache request - puts "AnywhereCache #{result.name} fetched" - rescue Google::Cloud::Error => e - puts "Error fetching AnywhereCache: #{e.message}" + puts "Successfully fetched anywhereCache - #{result.name}" + rescue StandardError => e + puts "Error fetching anywhereCache: #{e.message}" end end # [END storage_control_get_anywhere_cache] diff --git a/google-cloud-storage-control/samples/storage_control_pause_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_pause_anywhere_cache.rb index 6c48d53e62a9..f2076c66dd03 100644 --- a/google-cloud-storage-control/samples/storage_control_pause_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_pause_anywhere_cache.rb @@ -15,13 +15,21 @@ # [START storage_control_pause_anywhere_cache] require "google/cloud/storage/control" +# Pauses a specific Anywhere Cache instance in a Cloud Storage bucket. +# This operation does not delete the cache; it can be resumed later using +# the `resume_anywhere_cache` method. +# +# @param bucket_name [String] The name of the Cloud Storage bucket. +# @param anywhere_cache_id [String] The ID of the Anywhere Cache instance to pause. +# This is often the zone where the cache is located, e.g., "us-east1-b". +# +# @example +# pause_anywhere_cache( +# bucket_name: "your-unique-bucket-name", +# anywhere_cache_id: "us-east1-b" +# ) +# def pause_anywhere_cache bucket_name:, anywhere_cache_id: - # The Name of your GCS bucket - # bucket_name = "your-unique-bucket-name" - - # A value that, along with the bucket's name, uniquely identifies the cache - # anywhere_cache_id = "us-east1-b" - # Create a client object. The client can be reused for multiple calls. storage_control_client = Google::Cloud::Storage::Control.storage_control # Set project to "_" to signify global bucket @@ -37,9 +45,9 @@ def pause_anywhere_cache bucket_name:, anywhere_cache_id: # The cache is paused in the specified bucket. begin result = storage_control_client.pause_anywhere_cache request - puts "AnywhereCache #{result.name} #{result.state}" - rescue Google::Cloud::Error => e - puts "Error pausing AnywhereCache: #{e.message}" + puts "Successfully #{result.state&.downcase} anywhereCache - #{result.name}" + rescue StandardError => e + puts "Error pausing anywhereCache: #{e.message}" end end # [END storage_control_pause_anywhere_cache] diff --git a/google-cloud-storage-control/samples/storage_control_resume_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_resume_anywhere_cache.rb index 43dce8488410..a9e5174751a4 100644 --- a/google-cloud-storage-control/samples/storage_control_resume_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_resume_anywhere_cache.rb @@ -15,13 +15,23 @@ # [START storage_control_resume_anywhere_cache] require "google/cloud/storage/control" +# Resumes a paused Anywhere Cache instance. +# +# This method sends a request to the Storage Control API to resume a +# specific Anywhere Cache that was previously paused. +# +# @param bucket_name [String] The name of the bucket +# containing the cache. +# @param anywhere_cache_id [String] The unique identifier for the Anywhere +# Cache instance within the bucket. For example: "us-east1-b". +# +# @example +# resume_anywhere_cache( +# bucket_name: "your-unique-bucket-name", +# anywhere_cache_id: "us-east1-b" +# ) +# def resume_anywhere_cache bucket_name:, anywhere_cache_id: - # The Name of your GCS bucket - # bucket_name = "your-unique-bucket-name" - - # A value that, along with the bucket's name, uniquely identifies the cache - # anywhere_cache_id = "us-east1-b" - # Create a client object. The client can be reused for multiple calls. storage_control_client = Google::Cloud::Storage::Control.storage_control # Set project to "_" to signify global bucket @@ -37,9 +47,9 @@ def resume_anywhere_cache bucket_name:, anywhere_cache_id: # The cache is identified by the specified ID. begin result = storage_control_client.resume_anywhere_cache request - puts "AnywhereCache #{result.name} #{result.state}" - rescue Google::Cloud::Error => e - puts "Error resuming AnywhereCache: #{e.message}" + puts "Successfully resumed anywhereCache - #{result.name}" + rescue StandardError => e + puts "Error resuming anywhereCache: #{e.message}" end end # [END storage_control_resume_anywhere_cache] diff --git a/google-cloud-storage-control/samples/storage_control_update_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_update_anywhere_cache.rb index 8dd3c5a43cac..3ee154e9cf40 100644 --- a/google-cloud-storage-control/samples/storage_control_update_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_update_anywhere_cache.rb @@ -15,12 +15,21 @@ # [START storage_control_update_anywhere_cache] require "google/cloud/storage/control" +# Updates an existing Anywhere Cache for a specified +# bucket. After initiating the update, it polls the cache's status with +# exponential backoff until the cache state becomes "running". +# +# @param bucket_name [String] The name of the GCS bucket containing the cache. +# @param anywhere_cache_id [String] The unique identifier for the Anywhere Cache. +# e.g. "us-east1-b" +# +# @example +# update_anywhere_cache( +# bucket_name: "your-unique-bucket-name", +# anywhere_cache_id: "us-east1-b" +# ) +# def update_anywhere_cache bucket_name:, anywhere_cache_id: - # The Name of your GCS bucket - # bucket_name = "your-unique-bucket-name" - # A value that, along with the bucket's name, uniquely identifies the cache - # anywhere_cache_id = "us-east1-b" - # Create a client object. The client can be reused for multiple calls. storage_control_client = Google::Cloud::Storage::Control.storage_control # Set project to "_" to signify global bucket @@ -49,15 +58,19 @@ def update_anywhere_cache bucket_name:, anywhere_cache_id: result = storage_control_client.get_anywhere_cache get_request min_delay = 120 # 2 minutes max_delay = 600 # 10 minutes - while result.state != "running" - puts "Cache not running yet, current state is #{result.state}. Retrying in #{min_delay} seconds." + while result.state&.downcase != "running" + unless ["paused", "disabled", "creating"].include? result.state&.downcase + raise Google::Cloud::Error, + "AnywhereCache operation failed on the backend with state #{result.state&.downcase}." + end + puts "Cache not running yet, current state is #{result.state&.downcase}. Retrying in #{min_delay} seconds." sleep min_delay min_delay = [min_delay * 2, max_delay].min # Exponential backoff with a max delay result = storage_control_client.get_anywhere_cache get_request end - puts "AnywhereCache #{result.name} updated" - rescue Google::Cloud::Error => e - puts "Error updating AnywhereCache: #{e.message}" + puts "Successfully updated anywhereCache - #{result.name}" + rescue StandardError => e + puts "Error updating anywhereCache: #{e.message}" end end # [END storage_control_update_anywhere_cache] From 53065cabd4158f309a454bc300e98c2d947bff35 Mon Sep 17 00:00:00 2001 From: Shubhangi Singh Date: Wed, 1 Oct 2025 21:01:44 +0000 Subject: [PATCH 2/4] refactor --- .../samples/acceptance/storage_control_anywhere_cache_test.rb | 4 ++-- .../samples/storage_control_create_anywhere_cache.rb | 2 +- .../samples/storage_control_disable_anywhere_cache.rb | 4 ++-- .../samples/storage_control_get_anywhere_cache.rb | 4 ++-- .../samples/storage_control_pause_anywhere_cache.rb | 2 +- .../samples/storage_control_resume_anywhere_cache.rb | 2 +- .../samples/storage_control_update_anywhere_cache.rb | 2 +- 7 files changed, 10 insertions(+), 10 deletions(-) diff --git a/google-cloud-storage-control/samples/acceptance/storage_control_anywhere_cache_test.rb b/google-cloud-storage-control/samples/acceptance/storage_control_anywhere_cache_test.rb index 393b3aea8294..1152a9c7cae6 100644 --- a/google-cloud-storage-control/samples/acceptance/storage_control_anywhere_cache_test.rb +++ b/google-cloud-storage-control/samples/acceptance/storage_control_anywhere_cache_test.rb @@ -40,7 +40,7 @@ out_create, _err = capture_io do create_anywhere_cache bucket_name: bucket_name, zone: zone end - assert_includes out_create, "Successfully running anywhereCache - #{anywhere_cache_name}" + assert_includes out_create, "Successfully created anywhereCache - #{anywhere_cache_name}" out_list, _err = capture_io do list_anywhere_caches bucket_name: bucket_name @@ -70,6 +70,6 @@ out_disable, _err = capture_io do disable_anywhere_cache bucket_name: bucket_name, anywhere_cache_id: zone end - assert_includes out_disable, "Successfully disabled anywhereCache for #{anywhere_cache_name}" + assert_includes out_disable, "Successfully disabled anywhereCache - #{anywhere_cache_name}" end end diff --git a/google-cloud-storage-control/samples/storage_control_create_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_create_anywhere_cache.rb index df5035d82c08..91af49b0ff38 100644 --- a/google-cloud-storage-control/samples/storage_control_create_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_create_anywhere_cache.rb @@ -71,7 +71,7 @@ def create_anywhere_cache bucket_name:, zone: result = storage_control_client.get_anywhere_cache get_request end message = "Successfully created anywhereCache - #{result.name}" - rescue StandardError => e + rescue Google::Cloud::Error => e message = "Failed to create AnywhereCache. Error: #{e.message}" end puts message diff --git a/google-cloud-storage-control/samples/storage_control_disable_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_disable_anywhere_cache.rb index 2726e91e996f..a0a912ef816a 100644 --- a/google-cloud-storage-control/samples/storage_control_disable_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_disable_anywhere_cache.rb @@ -44,8 +44,8 @@ def disable_anywhere_cache bucket_name:, anywhere_cache_id: # The cache can be re-enabled later. begin result = storage_control_client.disable_anywhere_cache request - puts "Successfully #{result.state} anywhereCache - #{result.name}" - rescue StandardError => e + puts "Successfully #{result.state&.downcase} anywhereCache - #{result.name}" + rescue Google::Cloud::Error => e puts "Error disabling anywhereCache: #{e.message}" end end diff --git a/google-cloud-storage-control/samples/storage_control_get_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_get_anywhere_cache.rb index a8e84b679438..1b3c902ee250 100644 --- a/google-cloud-storage-control/samples/storage_control_get_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_get_anywhere_cache.rb @@ -45,8 +45,8 @@ def get_anywhere_cache bucket_name:, anywhere_cache_id: begin result = storage_control_client.get_anywhere_cache request puts "Successfully fetched anywhereCache - #{result.name}" - rescue StandardError => e - puts "Error fetching anywhereCache: #{e.message}" + rescue Google::Cloud::Error => e + puts "Error Fetching AnywhereCache: #{e.message}" end end # [END storage_control_get_anywhere_cache] diff --git a/google-cloud-storage-control/samples/storage_control_pause_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_pause_anywhere_cache.rb index f2076c66dd03..2ca11a066113 100644 --- a/google-cloud-storage-control/samples/storage_control_pause_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_pause_anywhere_cache.rb @@ -46,7 +46,7 @@ def pause_anywhere_cache bucket_name:, anywhere_cache_id: begin result = storage_control_client.pause_anywhere_cache request puts "Successfully #{result.state&.downcase} anywhereCache - #{result.name}" - rescue StandardError => e + rescue Google::Cloud::Error => e puts "Error pausing anywhereCache: #{e.message}" end end diff --git a/google-cloud-storage-control/samples/storage_control_resume_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_resume_anywhere_cache.rb index a9e5174751a4..a7502be2d85a 100644 --- a/google-cloud-storage-control/samples/storage_control_resume_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_resume_anywhere_cache.rb @@ -48,7 +48,7 @@ def resume_anywhere_cache bucket_name:, anywhere_cache_id: begin result = storage_control_client.resume_anywhere_cache request puts "Successfully resumed anywhereCache - #{result.name}" - rescue StandardError => e + rescue Google::Cloud::Error => e puts "Error resuming anywhereCache: #{e.message}" end end diff --git a/google-cloud-storage-control/samples/storage_control_update_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_update_anywhere_cache.rb index 3ee154e9cf40..8ea7f57fa4e8 100644 --- a/google-cloud-storage-control/samples/storage_control_update_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_update_anywhere_cache.rb @@ -69,7 +69,7 @@ def update_anywhere_cache bucket_name:, anywhere_cache_id: result = storage_control_client.get_anywhere_cache get_request end puts "Successfully updated anywhereCache - #{result.name}" - rescue StandardError => e + rescue Google::Cloud::Error => e puts "Error updating anywhereCache: #{e.message}" end end From 5e83cc995e0698565f01a9a511b489b173e9a3f7 Mon Sep 17 00:00:00 2001 From: Shubhangi Singh Date: Tue, 7 Oct 2025 13:16:05 +0000 Subject: [PATCH 3/4] refactor --- .../samples/acceptance/helper.rb | 7 +++++-- .../storage_control_anywhere_cache_test.rb | 12 ++++++------ .../samples/storage_control_create_anywhere_cache.rb | 8 ++++++-- .../storage_control_disable_anywhere_cache.rb | 4 ++-- .../samples/storage_control_get_anywhere_cache.rb | 4 ++-- .../samples/storage_control_list_anywhere_caches.rb | 4 ++-- .../samples/storage_control_pause_anywhere_cache.rb | 4 ++-- .../samples/storage_control_resume_anywhere_cache.rb | 4 ++-- .../samples/storage_control_update_anywhere_cache.rb | 11 ++++++++--- 9 files changed, 35 insertions(+), 23 deletions(-) diff --git a/google-cloud-storage-control/samples/acceptance/helper.rb b/google-cloud-storage-control/samples/acceptance/helper.rb index 5214e53dd6b2..0cad1c7f507f 100644 --- a/google-cloud-storage-control/samples/acceptance/helper.rb +++ b/google-cloud-storage-control/samples/acceptance/helper.rb @@ -82,14 +82,17 @@ def count_anywhere_caches bucket_name parent: parent ) result = storage_control_client.list_anywhere_caches request - min_delay = 180 # 3 minutes + min_delay = 30 # 30 seconds max_delay = 900 # 15 minutes + start_time = Time.now while result.response.anywhere_caches.count != 0 puts "Cache not deleted yet, Retrying in #{min_delay} seconds." sleep min_delay min_delay = [min_delay * 2, max_delay].min # Exponential backoff with a max delay result = storage_control_client.list_anywhere_caches request end - + end_time = Time.now + duration = end_time - start_time + puts "Total waiting time : #{duration.round(2)} seconds." result.response.anywhere_caches.count end diff --git a/google-cloud-storage-control/samples/acceptance/storage_control_anywhere_cache_test.rb b/google-cloud-storage-control/samples/acceptance/storage_control_anywhere_cache_test.rb index 1152a9c7cae6..91a3741a1f1b 100644 --- a/google-cloud-storage-control/samples/acceptance/storage_control_anywhere_cache_test.rb +++ b/google-cloud-storage-control/samples/acceptance/storage_control_anywhere_cache_test.rb @@ -40,17 +40,17 @@ out_create, _err = capture_io do create_anywhere_cache bucket_name: bucket_name, zone: zone end - assert_includes out_create, "Successfully created anywhereCache - #{anywhere_cache_name}" + assert_includes out_create, "Successfully created anywhereCache - #{anywhere_cache_name}." out_list, _err = capture_io do list_anywhere_caches bucket_name: bucket_name end - assert_includes out_list, "AnywhereCache #{anywhere_cache_name} found in list" + assert_includes out_list, "AnywhereCache #{anywhere_cache_name} found in list." out_get, _err = capture_io do get_anywhere_cache bucket_name: bucket_name, anywhere_cache_id: zone end - assert_includes out_get, "Successfully fetched anywhereCache - #{anywhere_cache_name}" + assert_includes out_get, "Successfully fetched anywhereCache - #{anywhere_cache_name}." out_update, _err = capture_io do update_anywhere_cache bucket_name: bucket_name, anywhere_cache_id: zone @@ -60,16 +60,16 @@ out_pause, _err = capture_io do pause_anywhere_cache bucket_name: bucket_name, anywhere_cache_id: zone end - assert_includes out_pause, "Successfully paused anywhereCache - #{anywhere_cache_name}" + assert_includes out_pause, "Successfully paused anywhereCache - #{anywhere_cache_name}." out_resume, _err = capture_io do resume_anywhere_cache bucket_name: bucket_name, anywhere_cache_id: zone end - assert_includes out_resume, "Successfully resumed anywhereCache - #{anywhere_cache_name}" + assert_includes out_resume, "Successfully resumed anywhereCache - #{anywhere_cache_name}." out_disable, _err = capture_io do disable_anywhere_cache bucket_name: bucket_name, anywhere_cache_id: zone end - assert_includes out_disable, "Successfully disabled anywhereCache - #{anywhere_cache_name}" + assert_includes out_disable, "Successfully disabled anywhereCache - #{anywhere_cache_name}." end end diff --git a/google-cloud-storage-control/samples/storage_control_create_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_create_anywhere_cache.rb index 91af49b0ff38..4cb0f2871b28 100644 --- a/google-cloud-storage-control/samples/storage_control_create_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_create_anywhere_cache.rb @@ -58,8 +58,9 @@ def create_anywhere_cache bucket_name:, zone: name: name ) result = storage_control_client.get_anywhere_cache get_request - min_delay = 180 # 3 minutes + min_delay = 30 # 30 seconds max_delay = 900 # 15 minutes + start_time = Time.now while result.state&.downcase != "running" unless ["paused", "disabled", "creating"].include? result.state&.downcase raise Google::Cloud::Error, @@ -70,7 +71,10 @@ def create_anywhere_cache bucket_name:, zone: min_delay = [min_delay * 2, max_delay].min # Exponential backoff with a max delay result = storage_control_client.get_anywhere_cache get_request end - message = "Successfully created anywhereCache - #{result.name}" + end_time = Time.now + duration = end_time - start_time + puts "Total polling time: #{duration.round(2)} seconds." + message = "Successfully created anywhereCache - #{result.name}." rescue Google::Cloud::Error => e message = "Failed to create AnywhereCache. Error: #{e.message}" end diff --git a/google-cloud-storage-control/samples/storage_control_disable_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_disable_anywhere_cache.rb index a0a912ef816a..32b1234979ea 100644 --- a/google-cloud-storage-control/samples/storage_control_disable_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_disable_anywhere_cache.rb @@ -44,9 +44,9 @@ def disable_anywhere_cache bucket_name:, anywhere_cache_id: # The cache can be re-enabled later. begin result = storage_control_client.disable_anywhere_cache request - puts "Successfully #{result.state&.downcase} anywhereCache - #{result.name}" + puts "Successfully #{result.state&.downcase} anywhereCache - #{result.name}." rescue Google::Cloud::Error => e - puts "Error disabling anywhereCache: #{e.message}" + puts "Failed to disable AnywhereCache. Error: #{e.message}" end end # [END storage_control_disable_anywhere_cache] diff --git a/google-cloud-storage-control/samples/storage_control_get_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_get_anywhere_cache.rb index 1b3c902ee250..fc0675676ef9 100644 --- a/google-cloud-storage-control/samples/storage_control_get_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_get_anywhere_cache.rb @@ -44,9 +44,9 @@ def get_anywhere_cache bucket_name:, anywhere_cache_id: begin result = storage_control_client.get_anywhere_cache request - puts "Successfully fetched anywhereCache - #{result.name}" + puts "Successfully fetched anywhereCache - #{result.name}." rescue Google::Cloud::Error => e - puts "Error Fetching AnywhereCache: #{e.message}" + puts "Failed to fetch AnywhereCache. Error: #{e.message}" end end # [END storage_control_get_anywhere_cache] diff --git a/google-cloud-storage-control/samples/storage_control_list_anywhere_caches.rb b/google-cloud-storage-control/samples/storage_control_list_anywhere_caches.rb index 397401531118..595d004f8cc9 100644 --- a/google-cloud-storage-control/samples/storage_control_list_anywhere_caches.rb +++ b/google-cloud-storage-control/samples/storage_control_list_anywhere_caches.rb @@ -33,10 +33,10 @@ def list_anywhere_caches bucket_name: begin result = storage_control_client.list_anywhere_caches request result.response.anywhere_caches.each do |item| - puts "AnywhereCache #{item.name} found in list" + puts "AnywhereCache #{item.name} found in list." end rescue Google::Cloud::Error => e - puts "Error listing AnywhereCaches: #{e.message}" + puts "Failed to list AnywhereCaches. Error: #{e.message}" end end # [END storage_control_list_anywhere_caches] diff --git a/google-cloud-storage-control/samples/storage_control_pause_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_pause_anywhere_cache.rb index 2ca11a066113..eec193b458dc 100644 --- a/google-cloud-storage-control/samples/storage_control_pause_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_pause_anywhere_cache.rb @@ -45,9 +45,9 @@ def pause_anywhere_cache bucket_name:, anywhere_cache_id: # The cache is paused in the specified bucket. begin result = storage_control_client.pause_anywhere_cache request - puts "Successfully #{result.state&.downcase} anywhereCache - #{result.name}" + puts "Successfully #{result.state&.downcase} anywhereCache - #{result.name}." rescue Google::Cloud::Error => e - puts "Error pausing anywhereCache: #{e.message}" + puts "Failed to pause AnywhereCache. Error: #{e.message}" end end # [END storage_control_pause_anywhere_cache] diff --git a/google-cloud-storage-control/samples/storage_control_resume_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_resume_anywhere_cache.rb index a7502be2d85a..cce8ab60e570 100644 --- a/google-cloud-storage-control/samples/storage_control_resume_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_resume_anywhere_cache.rb @@ -47,9 +47,9 @@ def resume_anywhere_cache bucket_name:, anywhere_cache_id: # The cache is identified by the specified ID. begin result = storage_control_client.resume_anywhere_cache request - puts "Successfully resumed anywhereCache - #{result.name}" + puts "Successfully resumed anywhereCache - #{result.name}." rescue Google::Cloud::Error => e - puts "Error resuming anywhereCache: #{e.message}" + puts "Failed to resume AnywhereCache. Error: #{e.message}" end end # [END storage_control_resume_anywhere_cache] diff --git a/google-cloud-storage-control/samples/storage_control_update_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_update_anywhere_cache.rb index 8ea7f57fa4e8..832631f9c7f4 100644 --- a/google-cloud-storage-control/samples/storage_control_update_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_update_anywhere_cache.rb @@ -56,8 +56,9 @@ def update_anywhere_cache bucket_name:, anywhere_cache_id: name: name ) result = storage_control_client.get_anywhere_cache get_request - min_delay = 120 # 2 minutes + min_delay = 30 # 30 seconds max_delay = 600 # 10 minutes + start_time = Time.now while result.state&.downcase != "running" unless ["paused", "disabled", "creating"].include? result.state&.downcase raise Google::Cloud::Error, @@ -68,10 +69,14 @@ def update_anywhere_cache bucket_name:, anywhere_cache_id: min_delay = [min_delay * 2, max_delay].min # Exponential backoff with a max delay result = storage_control_client.get_anywhere_cache get_request end - puts "Successfully updated anywhereCache - #{result.name}" + end_time = Time.now + duration = end_time - start_time + puts "Total waiting time : #{duration.round(2)} seconds." + message = "Successfully updated anywhereCache - #{result.name}" rescue Google::Cloud::Error => e - puts "Error updating anywhereCache: #{e.message}" + message = "Failed to update AnywhereCache. Error: #{e.message}" end + puts message end # [END storage_control_update_anywhere_cache] update_anywhere_cache bucket_name: ARGV.shift, anywhere_cache_id: ARGV.shift if $PROGRAM_NAME == __FILE__ From 3588cb3fb2d6036518d81278273cae39eba3193d Mon Sep 17 00:00:00 2001 From: Shubhangi Singh Date: Tue, 7 Oct 2025 13:37:12 +0000 Subject: [PATCH 4/4] lint fix --- .../samples/acceptance/storage_control_anywhere_cache_test.rb | 2 +- .../samples/storage_control_update_anywhere_cache.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/google-cloud-storage-control/samples/acceptance/storage_control_anywhere_cache_test.rb b/google-cloud-storage-control/samples/acceptance/storage_control_anywhere_cache_test.rb index 91a3741a1f1b..80b3a8063339 100644 --- a/google-cloud-storage-control/samples/acceptance/storage_control_anywhere_cache_test.rb +++ b/google-cloud-storage-control/samples/acceptance/storage_control_anywhere_cache_test.rb @@ -55,7 +55,7 @@ out_update, _err = capture_io do update_anywhere_cache bucket_name: bucket_name, anywhere_cache_id: zone end - assert_includes out_update, "Successfully updated anywhereCache - #{anywhere_cache_name}" + assert_includes out_update, "Successfully updated anywhereCache - #{anywhere_cache_name}." out_pause, _err = capture_io do pause_anywhere_cache bucket_name: bucket_name, anywhere_cache_id: zone diff --git a/google-cloud-storage-control/samples/storage_control_update_anywhere_cache.rb b/google-cloud-storage-control/samples/storage_control_update_anywhere_cache.rb index 832631f9c7f4..5c70bc134777 100644 --- a/google-cloud-storage-control/samples/storage_control_update_anywhere_cache.rb +++ b/google-cloud-storage-control/samples/storage_control_update_anywhere_cache.rb @@ -72,7 +72,7 @@ def update_anywhere_cache bucket_name:, anywhere_cache_id: end_time = Time.now duration = end_time - start_time puts "Total waiting time : #{duration.round(2)} seconds." - message = "Successfully updated anywhereCache - #{result.name}" + message = "Successfully updated anywhereCache - #{result.name}." rescue Google::Cloud::Error => e message = "Failed to update AnywhereCache. Error: #{e.message}" end