Skip to content

Commit 22efc23

Browse files
committed
add Mod9 codelab; Mod18 & 19 app fixes
1 parent 9253623 commit 22efc23

File tree

5 files changed

+17
-15
lines changed

5 files changed

+17
-15
lines changed

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ Module | Topic | Video | Codelab | START here | FINISH here
105105
6|Migrate to Cloud Firestore| _N/A_ | _N/A_ | Module 3 [code](/mod3b-datastore) (3.x) | _no work required; [Datastore upgrade automatic](https://cloud.google.com/datastore/docs/upgrade-to-firestore)_
106106
7|Add App Engine `taskqueue` push tasks| [link](https://twitter.com/googledevs/status/1443410302113099778?utm_source=twitter&utm_medium=unpaidsoc&utm_campaign=CDR_wes_aap-serverless_mgrgaetasks_sms_201028&utm_content=-) | [link](https://codelabs.developers.google.com/codelabs/cloud-gae-python-migrate-7-gaetasks?utm_source=codelabs&utm_medium=et&utm_campaign=CDR_wes_aap-serverless_mgrgaetasks_sms_201028&utm_content=-) | Module 1 [code](/mod1-flask) (2.x) | Module 7 [code](/mod7-gaetasks) (2.x) & [code](/mod7b-gaetasks) (3.x)
107107
8|Migrate to Cloud Tasks| [link](https://twitter.com/googledevs/status/1450960021018267656?utm_source=twitter&utm_medium=unpaidsoc&utm_campaign=CDR_wes_aap-serverless_mgrcloudtasks_sms_201112&utm_content=-) | [link](https://codelabs.developers.google.com/codelabs/cloud-gae-python-migrate-8-cloudtasks?utm_source=codelabs&utm_medium=et&utm_campaign=CDR_wes_aap-serverless_mgrcloudtasks_sms_201112&utm_content=-) | Module 7 [code](/mod7-gaetasks) (2.x) | Module 8 [code](/mod8-cloudtasks) (2.x)
108-
9|Migrate to Python 3, Cloud Datastore & Cloud Tasks v2| _TBD_ | _TBD_ | Module 8 [code](/mod8-cloudtasks) (2.x) | Module 9 [code](/mod9-py3dstasks)
108+
9|Migrate to Python 3, Cloud Datastore & Cloud Tasks v2| _TBD_ | [link](https://codelabs.developers.google.com/codelabs/cloud-gae-python-migrate-9-py3dstasks?utm_source=codelabs&utm_medium=et&utm_campaign=CDR_wes_aap-serverless_mgrpy3fstasks_sms_201126&utm_content=-) | Module 8 [code](/mod8-cloudtasks) (2.x) | Module 9 [code](/mod9-py3dstasks)
109109
10|Migrate Datastore/Firestore data to another project| _TBD_ | _N/A_ | _N/A_ | _TBD_
110110
11|Migrate to Cloud Functions| [link](https://twitter.com/googledevs/status/1520206298834481153?utm_source=twitter&utm_medium=unpaidsoc&utm_campaign=CDR_wes_aap-serverless_mgrcloudfuncs_sms_202006&utm_content=-) | [link](https://codelabs.developers.google.com/codelabs/cloud-gae-python-migrate-11-functions?utm_source=codelabs&utm_medium=et&utm_campaign=CDR_wes_aap-serverless_mgrcloudfuncs_sms_202006&utm_content=-) | Module 2 [code](/mod2b-cloudndb) (3.x) | Module 11 [code](/mod11-functions) (3.x)
111111
12|Add App Engine `memcache`| [link](https://twitter.com/googledevs/status/1527303061953126402?utm_source=twitter&utm_medium=unpaidsoc&utm_campaign=CDR_wes_aap-serverless_mgrmemcache_sms_202006&utm_content=-) | [link](https://codelabs.developers.google.com/codelabs/cloud-gae-python-migrate-12-memcache?utm_source=codelabs&utm_medium=et&utm_campaign=CDR_wes_aap-serverless_mgrmemcache_sms_202006&utm_content=-) | Module 1 [code](/mod1-flask) (2.x) | Module 12 [code](/mod12-memcache) (2.x) & [code](/mod12b-memcache) (3.x)

mod18-gaepull/main.py

+5-6
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@
1919
HOUR = 3600
2020
LIMIT = 10
2121
TASKS = 1000
22-
QUEUE = 'pullq'
22+
QNAME = 'pullq'
23+
QUEUE = taskqueue.Queue(QNAME)
2324
app = Flask(__name__)
2425

2526

@@ -31,8 +32,7 @@ class Visit(ndb.Model):
3132
def store_visit(remote_addr, user_agent):
3233
'create new Visit in Datastore and queue request to bump visitor count'
3334
Visit(visitor='{}: {}'.format(remote_addr, user_agent)).put()
34-
q = taskqueue.Queue(QUEUE)
35-
q.add(taskqueue.Task(payload=remote_addr, method='PULL'))
35+
QUEUE.add(taskqueue.Task(payload=remote_addr, method='PULL'))
3636

3737
def fetch_visits(limit):
3838
'get most recent visits'
@@ -53,13 +53,12 @@ def log_visitors():
5353
'worker processes recent visitor counts and updates them in Datastore'
5454
# tally recent visitor counts from queue then delete those tasks
5555
tallies = {}
56-
q = taskqueue.Queue(QUEUE)
57-
tasks = q.lease_tasks(HOUR, TASKS)
56+
tasks = QUEUE.lease_tasks(HOUR, TASKS)
5857
for task in tasks:
5958
visitor = task.payload
6059
tallies[visitor] = tallies.get(visitor, 0) + 1
6160
if tasks:
62-
q.delete_tasks(tasks)
61+
QUEUE.delete_tasks(tasks)
6362

6463
# increment those counts in Datastore and return
6564
for visitor in tallies:

mod19-pubsub/appengine_config.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright 2021 Google LLC
1+
# Copyright 2022 Google LLC
22
#
33
# Licensed under the Apache License, Version 2.0 (the "License");
44
# you may not use this file except in compliance with the License.

mod19-pubsub/main.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ def log_visitors():
7373
psc_client.acknowledge(subscription=SUB_PATH, ack_ids=acks)
7474
try:
7575
psc_client.close()
76-
except AttributeError: # special handler for grpcio<1.12.0
76+
except AttributeError: # special Py2 handler for grpcio<1.12.0
7777
pass
7878

7979
# increment those counts in Datastore and return

mod19-pubsub/maker.py

+9-6
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,15 @@ def make_top():
3333
print('Topic %r already exists at %r' % (TOPIC, TOP_PATH))
3434

3535
def make_sub():
36-
with psc_client:
37-
try:
38-
sub = psc_client.create_subscription(name=SUB_PATH, topic=TOP_PATH)
39-
print('Subscription created %r (%s)' % (SBSCR, sub.name))
40-
except exceptions.AlreadyExists:
41-
print('Subscription %r already exists at %r' % (SBSCR, SUB_PATH))
36+
try:
37+
sub = psc_client.create_subscription(name=SUB_PATH, topic=TOP_PATH)
38+
print('Subscription created %r (%s)' % (SBSCR, sub.name))
39+
except exceptions.AlreadyExists:
40+
print('Subscription %r already exists at %r' % (SBSCR, SUB_PATH))
41+
try:
42+
psc_client.close()
43+
except AttributeError: # special Py2 handler for grpcio<1.12.0
44+
pass
4245

4346
make_top()
4447
make_sub()

0 commit comments

Comments
 (0)