From 4252c4a69b359fc09226752b53035719adc46f7c Mon Sep 17 00:00:00 2001 From: Zoe Cai Date: Tue, 29 Jun 2021 13:22:11 +1000 Subject: [PATCH 1/6] feat: add sample for low cost instances --- samples/samples/snippets.py | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/samples/samples/snippets.py b/samples/samples/snippets.py index 18af239b5b..60f588d94b 100644 --- a/samples/samples/snippets.py +++ b/samples/samples/snippets.py @@ -57,6 +57,33 @@ def create_instance(instance_id): # [END spanner_create_instance] +# [START spanner_create_instance_with_processing_units] +def create_instance_with_processing_units(instance_id): + """Creates an instance.""" + spanner_client = spanner.Client() + + config_name = "{}/instanceConfigs/regional-us-central1".format( + spanner_client.project_name + ) + + instance = spanner_client.instance( + instance_id, + configuration_name=config_name, + display_name="This is a display name.", + processing_units=1000, + ) + + operation = instance.create() + + print("Waiting for operation to complete...") + operation.result(120) + + print("Created instance {}".format(instance_id)) + + +# [END spanner_create_instance_with_processing_units] + + # [START spanner_create_database] def create_database(instance_id, database_id): """Creates a database and tables for sample data.""" From 4cf762158a45c214cee34b74c04074ddb03011f8 Mon Sep 17 00:00:00 2001 From: Zoe Cai Date: Tue, 29 Jun 2021 13:36:23 +1000 Subject: [PATCH 2/6] Add test --- samples/samples/snippets_test.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/samples/samples/snippets_test.py b/samples/samples/snippets_test.py index 28d13fa330..bce3aa5144 100644 --- a/samples/samples/snippets_test.py +++ b/samples/samples/snippets_test.py @@ -59,6 +59,16 @@ def test_create_instance(spanner_instance): spanner_instance.reload() +def test_create_instance_with_processing_units(): + processing_units_instance_id = unique_instance_id() + snippets.create_instance_with_processing_units(processing_units_instance_id) + spanner_client = spanner.Client() + instance = spanner_client.instance(processing_units_instance_id) + instance.reload() + assert instance.processing_units == 1000 + instance.delete() + + def test_create_database(database): # Reload will only succeed if the database exists. database.reload() From af9ff7b3d5f7fecaeceb984b257b040044181d93 Mon Sep 17 00:00:00 2001 From: Zoe Date: Tue, 29 Jun 2021 19:32:49 +1000 Subject: [PATCH 3/6] Update samples/samples/snippets.py Co-authored-by: skuruppu --- samples/samples/snippets.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/samples/samples/snippets.py b/samples/samples/snippets.py index 60f588d94b..70d9817ece 100644 --- a/samples/samples/snippets.py +++ b/samples/samples/snippets.py @@ -70,7 +70,7 @@ def create_instance_with_processing_units(instance_id): instance_id, configuration_name=config_name, display_name="This is a display name.", - processing_units=1000, + processing_units=500, ) operation = instance.create() From f3891eb211a52e6a7a1477820a0b102ee9ad8066 Mon Sep 17 00:00:00 2001 From: Zoe Date: Tue, 29 Jun 2021 19:33:00 +1000 Subject: [PATCH 4/6] Update samples/samples/snippets_test.py Co-authored-by: skuruppu --- samples/samples/snippets_test.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/samples/samples/snippets_test.py b/samples/samples/snippets_test.py index bce3aa5144..dc84b1652c 100644 --- a/samples/samples/snippets_test.py +++ b/samples/samples/snippets_test.py @@ -65,7 +65,7 @@ def test_create_instance_with_processing_units(): spanner_client = spanner.Client() instance = spanner_client.instance(processing_units_instance_id) instance.reload() - assert instance.processing_units == 1000 + assert instance.processing_units == 500 instance.delete() From 656f67d968b77bc9042c3aa9593d21cdc492c92c Mon Sep 17 00:00:00 2001 From: Zoe Cai Date: Tue, 29 Jun 2021 19:56:35 +1000 Subject: [PATCH 5/6] Fix test --- samples/samples/snippets.py | 7 ++++--- samples/samples/snippets_test.py | 15 +++++++-------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/samples/samples/snippets.py b/samples/samples/snippets.py index 70d9817ece..91653aabfb 100644 --- a/samples/samples/snippets.py +++ b/samples/samples/snippets.py @@ -58,7 +58,7 @@ def create_instance(instance_id): # [START spanner_create_instance_with_processing_units] -def create_instance_with_processing_units(instance_id): +def create_instance_with_processing_units(instance_id, processing_units): """Creates an instance.""" spanner_client = spanner.Client() @@ -70,7 +70,7 @@ def create_instance_with_processing_units(instance_id): instance_id, configuration_name=config_name, display_name="This is a display name.", - processing_units=500, + processing_units=processing_units, ) operation = instance.create() @@ -78,7 +78,8 @@ def create_instance_with_processing_units(instance_id): print("Waiting for operation to complete...") operation.result(120) - print("Created instance {}".format(instance_id)) + print("Created instance {} with {} processing units".format( + instance_id, instance.processing_units)) # [END spanner_create_instance_with_processing_units] diff --git a/samples/samples/snippets_test.py b/samples/samples/snippets_test.py index dc84b1652c..0c52950078 100644 --- a/samples/samples/snippets_test.py +++ b/samples/samples/snippets_test.py @@ -32,6 +32,7 @@ def unique_database_id(): INSTANCE_ID = unique_instance_id() +LCI_INSTANCE_ID = unique_instance_id() DATABASE_ID = unique_database_id() CMEK_DATABASE_ID = unique_database_id() @@ -59,14 +60,12 @@ def test_create_instance(spanner_instance): spanner_instance.reload() -def test_create_instance_with_processing_units(): - processing_units_instance_id = unique_instance_id() - snippets.create_instance_with_processing_units(processing_units_instance_id) - spanner_client = spanner.Client() - instance = spanner_client.instance(processing_units_instance_id) - instance.reload() - assert instance.processing_units == 500 - instance.delete() +def test_create_instance_with_processing_units(capsys): + processing_units = 500 + snippets.create_instance_with_processing_units(LCI_INSTANCE_ID, processing_units) + out, _ = capsys.readouterr() + assert LCI_INSTANCE_ID in out + assert processing_units in out def test_create_database(database): From 2338fcebd4d712ec7a3f8225f19314fcc5cde150 Mon Sep 17 00:00:00 2001 From: Zoe Cai Date: Fri, 2 Jul 2021 11:46:41 +1000 Subject: [PATCH 6/6] Fix test --- samples/samples/snippets_test.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/samples/samples/snippets_test.py b/samples/samples/snippets_test.py index 0c52950078..b3f405ab13 100644 --- a/samples/samples/snippets_test.py +++ b/samples/samples/snippets_test.py @@ -65,7 +65,7 @@ def test_create_instance_with_processing_units(capsys): snippets.create_instance_with_processing_units(LCI_INSTANCE_ID, processing_units) out, _ = capsys.readouterr() assert LCI_INSTANCE_ID in out - assert processing_units in out + assert "{} processing units".format(processing_units) in out def test_create_database(database):