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

yhu pushed a commit to branch setupcbtcleanser
in repository https://gitbox.apache.org/repos/asf/beam.git

commit 29c0008172ef768f7b7632905ddf5d01f7a4d34d
Author: Yi Hu <ya...@google.com>
AuthorDate: Thu Nov 2 15:09:24 2023 -0400

    Setup Bigtable instance cleaner
---
 sdks/python/apache_beam/io/gcp/bigtableio_it_test.py | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/sdks/python/apache_beam/io/gcp/bigtableio_it_test.py 
b/sdks/python/apache_beam/io/gcp/bigtableio_it_test.py
index fdf049bba94..867dca9a5e7 100644
--- a/sdks/python/apache_beam/io/gcp/bigtableio_it_test.py
+++ b/sdks/python/apache_beam/io/gcp/bigtableio_it_test.py
@@ -49,6 +49,13 @@ except ImportError as e:
   HttpError = None
 
 
+def instance_prefix(instance):
+  datestr = "".join(filter(str.isdigit, str(datetime.utcnow().date())))
+  instance_id = '%s-%s-%s' % (instance, datestr, secrets.token_hex(4))
+  assert len(instance_id) < 34, "instance id length needs to be within [6, 33]"
+  return instance_id
+
+
 @pytest.mark.uses_gcp_java_expansion_service
 @pytest.mark.uses_transform_service
 @unittest.skipUnless(
@@ -65,8 +72,7 @@ class TestReadFromBigTableIT(unittest.TestCase):
     self.project = self.test_pipeline.get_option('project')
     self.expansion_service = ('localhost:%s' % 
os.environ.get('EXPANSION_PORT'))
 
-    instance_id = '%s-%s-%s' % (
-        self.INSTANCE, str(int(time.time())), secrets.token_hex(3))
+    instance_id = instance_prefix(self.INSTANCE)
 
     self.client = client.Client(admin=True, project=self.project)
     # create cluster and instance
@@ -160,9 +166,7 @@ class TestWriteToBigtableXlangIT(unittest.TestCase):
     cls.args = cls.test_pipeline.get_full_options_as_args()
     cls.expansion_service = ('localhost:%s' % os.environ.get('EXPANSION_PORT'))
 
-    timestr = "".join(filter(str.isdigit, str(datetime.utcnow().date())))
-    # instance id length needs to be within [6, 33]
-    instance_id = '%s-%s-%s' % (cls.INSTANCE, timestr, secrets.token_hex(4))
+    instance_id = instance_prefix(cls.INSTANCE)
 
     cls.client = client.Client(admin=True, project=cls.project)
     # create cluster and instance

Reply via email to