Skip to content

Commit f46f323

Browse files
committed
docs: use autogenerated methods the fetch names from admin samples
1 parent d683a14 commit f46f323

File tree

3 files changed

+296
-193
lines changed

3 files changed

+296
-193
lines changed

samples/samples/backup_sample.py

Lines changed: 93 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -35,23 +35,25 @@ def create_backup(instance_id, database_id, backup_id, version_time):
3535
backup as backup_pb
3636

3737
spanner_client = spanner.Client()
38-
instance = spanner_client.instance(instance_id)
39-
database = instance.database(database_id)
38+
instance_admin_api = spanner_client.instance_admin_api
39+
database_admin_api = spanner_client.database_admin_api
4040

4141
# Create a backup
4242
expire_time = datetime.utcnow() + timedelta(days=14)
4343

4444
request = backup_pb.CreateBackupRequest(
45-
parent=instance.name,
45+
parent=instance_admin_api.instance_path(spanner_client.project, instance_id),
4646
backup_id=backup_id,
4747
backup=backup_pb.Backup(
48-
database=database.name,
48+
database=database_admin_api.database_path(
49+
spanner_client.project, instance_id, database_id
50+
),
4951
expire_time=expire_time,
5052
version_time=version_time,
5153
),
5254
)
5355

54-
operation = spanner_client.database_admin_api.create_backup(request)
56+
operation = database_admin_api.create_backup(request)
5557

5658
# Wait for backup operation to complete.
5759
backup = operation.result(2100)
@@ -81,8 +83,8 @@ def create_backup_with_encryption_key(
8183
backup as backup_pb
8284

8385
spanner_client = spanner.Client()
84-
instance = spanner_client.instance(instance_id)
85-
database = instance.database(database_id)
86+
instance_admin_api = spanner_client.instance_admin_api
87+
database_admin_api = spanner_client.database_admin_api
8688

8789
# Create a backup
8890
expire_time = datetime.utcnow() + timedelta(days=14)
@@ -91,15 +93,17 @@ def create_backup_with_encryption_key(
9193
"kms_key_name": kms_key_name,
9294
}
9395
request = backup_pb.CreateBackupRequest(
94-
parent=instance.name,
96+
parent=instance_admin_api.instance_path(spanner_client.project, instance_id),
9597
backup_id=backup_id,
9698
backup=backup_pb.Backup(
97-
database=database.name,
99+
database=database_admin_api.database_path(
100+
spanner_client.project, instance_id, database_id
101+
),
98102
expire_time=expire_time,
99103
),
100104
encryption_config=encryption_config,
101105
)
102-
operation = spanner_client.database_admin_api.create_backup(request)
106+
operation = database_admin_api.create_backup(request)
103107

104108
# Wait for backup operation to complete.
105109
backup = operation.result(2100)
@@ -124,13 +128,16 @@ def restore_database(instance_id, new_database_id, backup_id):
124128
from google.cloud.spanner_admin_database_v1 import RestoreDatabaseRequest
125129

126130
spanner_client = spanner.Client()
127-
instance = spanner_client.instance(instance_id)
131+
instance_admin_api = spanner_client.instance_admin_api
128132

129133
# Start restoring an existing backup to a new database.
130134
request = RestoreDatabaseRequest(
131-
parent=instance.name,
135+
parent=instance_admin_api.instance_path(spanner_client.project, instance_id),
132136
database_id=new_database_id,
133-
backup="{}/backups/{}".format(instance.name, backup_id),
137+
backup="{}/backups/{}".format(
138+
instance_admin_api.instance_path(spanner_client.project, instance_id),
139+
backup_id,
140+
),
134141
)
135142
operation = spanner_client.database_admin_api.restore_database(request)
136143

@@ -161,7 +168,7 @@ def restore_database_with_encryption_key(
161168
RestoreDatabaseEncryptionConfig, RestoreDatabaseRequest)
162169

163170
spanner_client = spanner.Client()
164-
instance = spanner_client.instance(instance_id)
171+
instance_admin_api = spanner_client.instance_admin_api
165172

166173
# Start restoring an existing backup to a new database.
167174
encryption_config = {
@@ -170,9 +177,12 @@ def restore_database_with_encryption_key(
170177
}
171178

172179
request = RestoreDatabaseRequest(
173-
parent=instance.name,
180+
parent=instance_admin_api.instance_path(spanner_client.project, instance_id),
174181
database_id=new_database_id,
175-
backup="{}/backups/{}".format(instance.name, backup_id),
182+
backup="{}/backups/{}".format(
183+
instance_admin_api.instance_path(spanner_client.project, instance_id),
184+
backup_id,
185+
),
176186
encryption_config=encryption_config,
177187
)
178188
operation = spanner_client.database_admin_api.restore_database(request)
@@ -201,43 +211,53 @@ def cancel_backup(instance_id, database_id, backup_id):
201211
backup as backup_pb
202212

203213
spanner_client = spanner.Client()
204-
instance = spanner_client.instance(instance_id)
205-
database = instance.database(database_id)
214+
instance_admin_api = spanner_client.instance_admin_api
215+
database_admin_api = spanner_client.database_admin_api
206216

207217
expire_time = datetime.utcnow() + timedelta(days=30)
208218

209219
# Create a backup.
210220
request = backup_pb.CreateBackupRequest(
211-
parent=instance.name,
221+
parent=instance_admin_api.instance_path(spanner_client.project, instance_id),
212222
backup_id=backup_id,
213223
backup=backup_pb.Backup(
214-
database=database.name,
224+
database=database_admin_api.database_path(
225+
spanner_client.project, instance_id, database_id
226+
),
215227
expire_time=expire_time,
216228
),
217229
)
218230

219-
operation = spanner_client.database_admin_api.create_backup(request)
231+
operation = database_admin_api.create_backup(request)
220232
# Cancel backup creation.
221233
operation.cancel()
222234

223-
# Cancel operations are best effort so either it will complete or
235+
# Cancel operations are the best effort so either it will complete or
224236
# be cancelled.
225237
while not operation.done():
226238
time.sleep(300) # 5 mins
227239

228240
try:
229-
spanner_client.database_admin_api.get_backup(
241+
database_admin_api.get_backup(
230242
backup_pb.GetBackupRequest(
231-
name="{}/backups/{}".format(instance.name, backup_id)
243+
name="{}/backups/{}".format(
244+
instance_admin_api.instance_path(
245+
spanner_client.project, instance_id
246+
),
247+
backup_id,
248+
)
232249
)
233250
)
234251
except NotFound:
235252
print("Backup creation was successfully cancelled.")
236253
return
237254
print("Backup was created before the cancel completed.")
238-
spanner_client.database_admin_api.delete_backup(
255+
database_admin_api.delete_backup(
239256
backup_pb.DeleteBackupRequest(
240-
name="{}/backups/{}".format(instance.name, backup_id)
257+
name="{}/backups/{}".format(
258+
instance_admin_api.instance_path(spanner_client.project, instance_id),
259+
backup_id,
260+
)
241261
)
242262
)
243263
print("Backup deleted.")
@@ -252,7 +272,7 @@ def list_backup_operations(instance_id, database_id, backup_id):
252272
backup as backup_pb
253273

254274
spanner_client = spanner.Client()
255-
instance = spanner_client.instance(instance_id)
275+
instance_admin_api = spanner_client.instance_admin_api
256276

257277
# List the CreateBackup operations.
258278
filter_ = (
@@ -261,7 +281,8 @@ def list_backup_operations(instance_id, database_id, backup_id):
261281
"AND (metadata.database:{})"
262282
).format(database_id)
263283
request = backup_pb.ListBackupOperationsRequest(
264-
parent=instance.name, filter=filter_
284+
parent=instance_admin_api.instance_path(spanner_client.project, instance_id),
285+
filter=filter_,
265286
)
266287
operations = spanner_client.database_admin_api.list_backup_operations(request)
267288
for op in operations:
@@ -280,7 +301,8 @@ def list_backup_operations(instance_id, database_id, backup_id):
280301
"AND (metadata.source_backup:{})"
281302
).format(backup_id)
282303
request = backup_pb.ListBackupOperationsRequest(
283-
parent=instance.name, filter=filter_
304+
parent=instance_admin_api.instance_path(spanner_client.project, instance_id),
305+
filter=filter_,
284306
)
285307
operations = spanner_client.database_admin_api.list_backup_operations(request)
286308
for op in operations:
@@ -305,15 +327,16 @@ def list_database_operations(instance_id):
305327
spanner_database_admin
306328

307329
spanner_client = spanner.Client()
308-
instance = spanner_client.instance(instance_id)
330+
instance_admin_api = spanner_client.instance_admin_api
309331

310332
# List the progress of restore.
311333
filter_ = (
312334
"(metadata.@type:type.googleapis.com/"
313335
"google.spanner.admin.database.v1.OptimizeRestoredDatabaseMetadata)"
314336
)
315337
request = spanner_database_admin.ListDatabaseOperationsRequest(
316-
parent=instance.name, filter=filter_
338+
parent=instance_admin_api.instance_path(spanner_client.project, instance_id),
339+
filter=filter_,
317340
)
318341
operations = spanner_client.database_admin_api.list_database_operations(request)
319342
for op in operations:
@@ -336,19 +359,23 @@ def list_backups(instance_id, database_id, backup_id):
336359
backup as backup_pb
337360

338361
spanner_client = spanner.Client()
339-
instance = spanner_client.instance(instance_id)
362+
instance_admin_api = spanner_client.instance_admin_api
340363

341364
# List all backups.
342365
print("All backups:")
343-
request = backup_pb.ListBackupsRequest(parent=instance.name, filter="")
366+
request = backup_pb.ListBackupsRequest(
367+
parent=instance_admin_api.instance_path(spanner_client.project, instance_id),
368+
filter="",
369+
)
344370
operations = spanner_client.database_admin_api.list_backups(request)
345371
for backup in operations:
346372
print(backup.name)
347373

348374
# List all backups that contain a name.
349375
print('All backups with backup name containing "{}":'.format(backup_id))
350376
request = backup_pb.ListBackupsRequest(
351-
parent=instance.name, filter="name:{}".format(backup_id)
377+
parent=instance_admin_api.instance_path(spanner_client.project, instance_id),
378+
filter="name:{}".format(backup_id),
352379
)
353380
operations = spanner_client.database_admin_api.list_backups(request)
354381
for backup in operations:
@@ -357,7 +384,8 @@ def list_backups(instance_id, database_id, backup_id):
357384
# List all backups for a database that contains a name.
358385
print('All backups with database name containing "{}":'.format(database_id))
359386
request = backup_pb.ListBackupsRequest(
360-
parent=instance.name, filter="database:{}".format(database_id)
387+
parent=instance_admin_api.instance_path(spanner_client.project, instance_id),
388+
filter="database:{}".format(database_id),
361389
)
362390
operations = spanner_client.database_admin_api.list_backups(request)
363391
for backup in operations:
@@ -371,7 +399,7 @@ def list_backups(instance_id, database_id, backup_id):
371399
)
372400
)
373401
request = backup_pb.ListBackupsRequest(
374-
parent=instance.name,
402+
parent=instance_admin_api.instance_path(spanner_client.project, instance_id),
375403
filter='expire_time < "{}-{}-{}T{}:{}:{}Z"'.format(*expire_time.timetuple()),
376404
)
377405
operations = spanner_client.database_admin_api.list_backups(request)
@@ -381,7 +409,8 @@ def list_backups(instance_id, database_id, backup_id):
381409
# List all backups with a size greater than some bytes.
382410
print("All backups with backup size more than 100 bytes:")
383411
request = backup_pb.ListBackupsRequest(
384-
parent=instance.name, filter="size_bytes > 100"
412+
parent=instance_admin_api.instance_path(spanner_client.project, instance_id),
413+
filter="size_bytes > 100",
385414
)
386415
operations = spanner_client.database_admin_api.list_backups(request)
387416
for backup in operations:
@@ -395,7 +424,7 @@ def list_backups(instance_id, database_id, backup_id):
395424
)
396425
)
397426
request = backup_pb.ListBackupsRequest(
398-
parent=instance.name,
427+
parent=instance_admin_api.instance_path(spanner_client.project, instance_id),
399428
filter='create_time >= "{}-{}-{}T{}:{}:{}Z" AND state:READY'.format(
400429
*create_time.timetuple()
401430
),
@@ -408,7 +437,10 @@ def list_backups(instance_id, database_id, backup_id):
408437
# If there are multiple pages, additional ``ListBackup``
409438
# requests will be made as needed while iterating.
410439
paged_backups = set()
411-
request = backup_pb.ListBackupsRequest(parent=instance.name, page_size=2)
440+
request = backup_pb.ListBackupsRequest(
441+
parent=instance_admin_api.instance_path(spanner_client.project, instance_id),
442+
page_size=2,
443+
)
412444
operations = spanner_client.database_admin_api.list_backups(request)
413445
for backup in operations:
414446
paged_backups.add(backup.name)
@@ -425,10 +457,13 @@ def delete_backup(instance_id, backup_id):
425457
backup as backup_pb
426458

427459
spanner_client = spanner.Client()
428-
instance = spanner_client.instance(instance_id)
460+
instance_admin_api = spanner_client.instance_admin_api
429461
backup = spanner_client.database_admin_api.get_backup(
430462
backup_pb.GetBackupRequest(
431-
name="{}/backups/{}".format(instance.name, backup_id)
463+
name="{}/backups/{}".format(
464+
instance_admin_api.instance_path(spanner_client.project, instance_id),
465+
backup_id,
466+
)
432467
)
433468
)
434469

@@ -437,7 +472,12 @@ def delete_backup(instance_id, backup_id):
437472
time.sleep(30)
438473
backup = spanner_client.database_admin_api.get_backup(
439474
backup_pb.GetBackupRequest(
440-
name="{}/backups/{}".format(instance.name, backup_id)
475+
name="{}/backups/{}".format(
476+
instance_admin_api.instance_path(
477+
spanner_client.project, instance_id
478+
),
479+
backup_id,
480+
)
441481
)
442482
)
443483

@@ -465,11 +505,14 @@ def update_backup(instance_id, backup_id):
465505
backup as backup_pb
466506

467507
spanner_client = spanner.Client()
468-
instance = spanner_client.instance(instance_id)
508+
instance_admin_api = spanner_client.instance_admin_api
469509

470510
backup = spanner_client.database_admin_api.get_backup(
471511
backup_pb.GetBackupRequest(
472-
name="{}/backups/{}".format(instance.name, backup_id)
512+
name="{}/backups/{}".format(
513+
instance_admin_api.instance_path(spanner_client.project, instance_id),
514+
backup_id,
515+
)
473516
)
474517
)
475518

@@ -503,7 +546,7 @@ def create_database_with_version_retention_period(
503546
spanner_database_admin
504547

505548
spanner_client = spanner.Client()
506-
instance = spanner_client.instance(instance_id)
549+
instance_admin_api = spanner_client.instance_admin_api
507550
ddl_statements = [
508551
"CREATE TABLE Singers ("
509552
+ " SingerId INT64 NOT NULL,"
@@ -524,7 +567,9 @@ def create_database_with_version_retention_period(
524567
]
525568
operation = spanner_client.database_admin_api.create_database(
526569
request=spanner_database_admin.CreateDatabaseRequest(
527-
parent=instance.name,
570+
parent=instance_admin_api.instance_path(
571+
spanner_client.project, instance_id
572+
),
528573
create_statement="CREATE DATABASE `{}`".format(database_id),
529574
extra_statements=ddl_statements,
530575
)
@@ -553,12 +598,12 @@ def copy_backup(instance_id, backup_id, source_backup_path):
553598
backup as backup_pb
554599

555600
spanner_client = spanner.Client()
556-
instance = spanner_client.instance(instance_id)
601+
instance_admin_api = spanner_client.instance_admin_api
557602

558603
# Create a backup object and wait for copy backup operation to complete.
559604
expire_time = datetime.utcnow() + timedelta(days=14)
560605
request = backup_pb.CopyBackupRequest(
561-
parent=instance.name,
606+
parent=instance_admin_api.instance_path(spanner_client.project, instance_id),
562607
backup_id=backup_id,
563608
source_backup=source_backup_path,
564609
expire_time=expire_time,

0 commit comments

Comments
 (0)