Developing Applications on Google Cloud: Adding User Authentication and Intelligence to Your Application Ulasan

6351 ulasan

Paulo V. · Diulas 7 hari lalu

Terrible, making us copy and paste into nano is the worst decision you guys have made. Just give us the working code

Noah E. · Diulas 7 hari lalu

Last step I got this error 8080 main:app [2026-03-25 14:21:52 +0000] [4326] [INFO] Starting gunicorn 23.0.0 [2026-03-25 14:21:52 +0000] [4326] [INFO] Listening at: http://0.0.0.0:8080 (4326) [2026-03-25 14:21:52 +0000] [4326] [INFO] Using worker: sync [2026-03-25 14:21:52 +0000] [4327] [INFO] Booting worker with pid: 4327 [2026-03-25 14:22:42 +0000] [4327] [ERROR] Exception in worker process Traceback (most recent call last): File "/usr/local/lib/python3.12/dist-packages/google/api_core/grpc_helpers.py", line 76, in error_remapped_callable return callable_(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/grpc/_interceptor.py", line 277, in __call__ response, ignored_call = self._with_call( ^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/grpc/_interceptor.py", line 332, in _with_call return call.result(), call ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/grpc/_channel.py", line 440, in result raise self File "/usr/local/lib/python3.12/dist-packages/grpc/_interceptor.py", line 315, in continuation response, call = self._thunk(new_method).with_call( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/grpc/_channel.py", line 1198, in with_call return _end_unary_response_blocking(state, call, True, None) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/grpc/_channel.py", line 1006, in _end_unary_response_blocking raise _InactiveRpcError(state) # pytype: disable=not-instantiable ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ grpc._channel._InactiveRpcError: <_InactiveRpcError of RPC that terminated with: status = StatusCode.UNAVAILABLE details = "Getting metadata from plugin failed with error: string indices must be integers, not 'str'" debug_error_string = "UNKNOWN:Error received from peer {grpc_message:"Getting metadata from plugin failed with error: string indices must be integers, not \'str\'", grpc_status:14}" > The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/dist-packages/google/api_core/retry/retry_unary.py", line 147, in retry_target result = target() ^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/google/api_core/timeout.py", line 130, in func_with_timeout return func(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/google/api_core/grpc_helpers.py", line 78, in error_remapped_callable raise exceptions.from_grpc_error(exc) from exc google.api_core.exceptions.ServiceUnavailable: 503 Getting metadata from plugin failed with error: string indices must be integers, not 'str' The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/arbiter.py", line 608, in spawn_worker worker.init_process() File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/workers/base.py", line 135, in init_process self.load_wsgi() File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/workers/base.py", line 147, in load_wsgi self.wsgi = self.app.wsgi() ^^^^^^^^^^^^^^^ File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/app/base.py", line 66, in wsgi self.callable = self.load() ^^^^^^^^^^^ File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/app/wsgiapp.py", line 57, in load return self.load_wsgiapp() student_00_76a4d0363ae4@cloudshell:~/bookshelf (qwiklabs-gcp-04-7d6a12cd143e)$ cd ~/bookshelf; EXTERNAL_HOST_URL="https://8080-$WEB_HOST" ~/.local/bin/gunicorn -b :8080 main:app [2026-03-25 14:24:14 +0000] [4424] [INFO] Starting gunicorn 23.0.0 [2026-03-25 14:24:14 +0000] [4424] [INFO] Listening at: http://0.0.0.0:8080 (4424) [2026-03-25 14:24:14 +0000] [4424] [INFO] Using worker: sync [2026-03-25 14:24:14 +0000] [4425] [INFO] Booting worker with pid: 4425 [2026-03-25 14:24:46 +0000] [4425] [ERROR] Exception in worker process Traceback (most recent call last): File "/usr/local/lib/python3.12/dist-packages/google/api_core/grpc_helpers.py", line 76, in error_remapped_callable return callable_(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/grpc/_interceptor.py", line 277, in __call__ response, ignored_call = self._with_call( ^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/grpc/_interceptor.py", line 332, in _with_call return call.result(), call ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/grpc/_channel.py", line 440, in result raise self File "/usr/local/lib/python3.12/dist-packages/grpc/_interceptor.py", line 315, in continuation response, call = self._thunk(new_method).with_call( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/grpc/_channel.py", line 1198, in with_call return _end_unary_response_blocking(state, call, True, None) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/grpc/_channel.py", line 1006, in _end_unary_response_blocking raise _InactiveRpcError(state) # pytype: disable=not-instantiable ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ grpc._channel._InactiveRpcError: <_InactiveRpcError of RPC that terminated with: status = StatusCode.UNAVAILABLE details = "Getting metadata from plugin failed with error: string indices must be integers, not 'str'" debug_error_string = "UNKNOWN:Error received from peer {grpc_status:14, grpc_message:"Getting metadata from plugin failed with error: string indices must be integers, not \'str\'"}" > The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/dist-packages/google/api_core/retry/retry_unary.py", line 147, in retry_target result = target() ^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/google/api_core/timeout.py", line 130, in func_with_timeout return func(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/google/api_core/grpc_helpers.py", line 78, in error_remapped_callable raise exceptions.from_grpc_error(exc) from exc google.api_core.exceptions.ServiceUnavailable: 503 Getting metadata from plugin failed with error: string indices must be integers, not 'str' The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/arbiter.py", line 608, in spawn_worker worker.init_process() File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/workers/base.py", line 135, in init_process self.load_wsgi() File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/workers/base.py", line 147, in load_wsgi self.wsgi = self.app.wsgi() ^^^^^^^^^^^^^^^ File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/app/base.py", line 66, in wsgi self.callable = self.load() ^^^^^^^^^^^ File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/app/wsgiapp.py", line 57, in load return self.load_wsgiapp() ^^^^^^^^^^^^^^^^^^^ File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/app/wsgiapp.py", line 47, in load_wsgiapp return util.import_app(self.app_uri) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/util.py", line 370, in import_app mod = importlib.import_module(module) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/importlib/__init__.py", line 90, in import_module return _bootstrap._gcd_import(name[level:], package, level) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "<frozen importlib._bootstrap>", line 1387, in _gcd_import File "<frozen importlib._bootstrap>", line 1360, in _find_and_load File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked File "<frozen importlib._bootstrap>", line 935, in _load_unlocked File "<frozen importlib._bootstrap_external>", line 995, in exec_module File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed File "/home/student_00_76a4d0363ae4/bookshelf/main.py", line 40, in <module> SECRET_KEY=secrets.get_secret('flask-secret-key'), ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/student_00_76a4d0363ae4/bookshelf/secrets.py", line 14, in get_secret response = client.access_secret_version(name=name) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/google/cloud/secretmanager_v1/services/secret_manager_service/client.py", line 1857, in access_secret_version response = rpc( ^^^^ File "/usr/local/lib/python3.12/dist-packages/google/api_core/gapic_v1/method.py", line 131, in __call__ return wrapped_func(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/google/api_core/retry/retry_unary.py", line 294, in retry_wrapped_func return retry_target( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/google/api_core/retry/retry_unary.py", line 156, in retry_target next_sleep = _retry_error_helper( ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/google/api_core/retry/retry_base.py", line 229, in _retry_error_helper raise final_exc from source_exc google.api_core.exceptions.RetryError: Timeout of 60.0s exceeded, last exception: 503 Getting metadata from plugin failed with error: string indices must be integers, not 'str' [2026-03-25 14:24:46 +0000] [4425] [INFO] Worker exiting (pid: 4425) [2026-03-25 14:24:46 +0000] [4424] [ERROR] Worker (pid:4425) exited with code 3 [2026-03-25 14:24:46 +0000] [4424] [ERROR] Shutting down: Master [2026-03-25 14:24:46 +0000] [4424] [ERROR] Reason: Worker failed to boot. student_00_76a4d0363ae4@cloudshell:~/bookshelf (qwiklabs-gcp-04-7d6a12cd143e)$ student_00_76a4d0363ae4@cloudshell:~/bookshelf (qwiklabs-gcp-04-7d6a12cd143e)$ student_00_76a4d0363ae4@cloudshell:~/bookshelf (qwiklabs-gcp-04-7d6a12cd143e)$ student_00_76a4d0363ae4@cloudshell:~/bookshelf (qwiklabs-gcp-04-7d6a12cd143e)$ cd ~/bookshelf; EXTERNAL_HOST_URL="https://8080-$WEB_HOST" ~/.local/bin/gunicorn -b :8080 main:app [2026-03-25 14:27:18 +0000] [4455] [INFO] Starting gunicorn 23.0.0 [2026-03-25 14:27:18 +0000] [4455] [INFO] Listening at: http://0.0.0.0:8080 (4455) [2026-03-25 14:27:18 +0000] [4455] [INFO] Using worker: sync [2026-03-25 14:27:18 +0000] [4456] [INFO] Booting worker with pid: 4456 [2026-03-25 14:27:53 +0000] [4456] [ERROR] Exception in worker process Traceback (most recent call last): File "/usr/local/lib/python3.12/dist-packages/google/api_core/grpc_helpers.py", line 76, in error_remapped_callable return callable_(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/grpc/_interceptor.py", line 277, in __call__ response, ignored_call = self._with_call( ^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/grpc/_interceptor.py", line 332, in _with_call return call.result(), call ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/grpc/_channel.py", line 440, in result raise self File "/usr/local/lib/python3.12/dist-packages/grpc/_interceptor.py", line 315, in continuation response, call = self._thunk(new_method).with_call( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/grpc/_channel.py", line 1198, in with_call return _end_unary_response_blocking(state, call, True, None) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/grpc/_channel.py", line 1006, in _end_unary_response_blocking raise _InactiveRpcError(state) # pytype: disable=not-instantiable ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ grpc._channel._InactiveRpcError: <_InactiveRpcError of RPC that terminated with: status = StatusCode.UNAVAILABLE details = "Getting metadata from plugin failed with error: string indices must be integers, not 'str'" debug_error_string = "UNKNOWN:Error received from peer {grpc_message:"Getting metadata from plugin failed with error: string indices must be integers, not \'str\'", grpc_status:14}" > The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/lib/python3.12/dist-packages/google/api_core/retry/retry_unary.py", line 147, in retry_target result = target() ^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/google/api_core/timeout.py", line 130, in func_with_timeout return func(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/google/api_core/grpc_helpers.py", line 78, in error_remapped_callable raise exceptions.from_grpc_error(exc) from exc google.api_core.exceptions.ServiceUnavailable: 503 Getting metadata from plugin failed with error: string indices must be integers, not 'str' The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/arbiter.py", line 608, in spawn_worker worker.init_process() File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/workers/base.py", line 135, in init_process self.load_wsgi() File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/workers/base.py", line 147, in load_wsgi self.wsgi = self.app.wsgi() ^^^^^^^^^^^^^^^ File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/app/base.py", line 66, in wsgi self.callable = self.load() ^^^^^^^^^^^ File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/app/wsgiapp.py", line 57, in load return self.load_wsgiapp() ^^^^^^^^^^^^^^^^^^^ File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/app/wsgiapp.py", line 47, in load_wsgiapp return util.import_app(self.app_uri) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/gunicorn/util.py", line 370, in import_app mod = importlib.import_module(module) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/importlib/__init__.py", line 90, in import_module return _bootstrap._gcd_import(name[level:], package, level) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "<frozen importlib._bootstrap>", line 1387, in _gcd_import File "<frozen importlib._bootstrap>", line 1360, in _find_and_load File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked File "<frozen importlib._bootstrap>", line 935, in _load_unlocked File "<frozen importlib._bootstrap_external>", line 995, in exec_module File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed File "/home/student_00_76a4d0363ae4/bookshelf/main.py", line 40, in <module> SECRET_KEY=secrets.get_secret('flask-secret-key'), ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/student_00_76a4d0363ae4/bookshelf/secrets.py", line 14, in get_secret response = client.access_secret_version(name=name) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/student_00_76a4d0363ae4/.local/lib/python3.12/site-packages/google/cloud/secretmanager_v1/services/secret_manager_service/client.py", line 1857, in access_secret_version response = rpc( ^^^^ File "/usr/local/lib/python3.12/dist-packages/google/api_core/gapic_v1/method.py", line 131, in __call__ return wrapped_func(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/google/api_core/retry/retry_unary.py", line 294, in retry_wrapped_func return retry_target( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/google/api_core/retry/retry_unary.py", line 156, in retry_target next_sleep = _retry_error_helper( ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/dist-packages/google/api_core/retry/retry_base.py", line 229, in _retry_error_helper raise final_exc from source_exc google.api_core.exceptions.RetryError: Timeout of 60.0s exceeded, last exception: 503 Getting metadata from plugin failed with error: string indices must be integers, not 'str' [2026-03-25 14:27:53 +0000] [4456] [INFO] Worker exiting (pid: 4456) [2026-03-25 14:27:54 +0000] [4455] [ERROR] Worker (pid:4456) exited with code 3 [2026-03-25 14:27:54 +0000] [4455] [ERROR] Shutting down: Master [2026-03-25 14:27:54 +0000] [4455] [ERROR] Reason: Worker failed to boot. student_00_76a4d0363ae4@cloudshell:~/bookshelf (qwiklabs-gcp-04-7d6a12cd143e)$

Robson M. · Diulas 7 hari lalu

Josiah M. · Diulas 7 hari lalu

Zafer O. · Diulas 7 hari lalu

Uppaluri V. · Diulas 7 hari lalu

Pieter-Jan P. · Diulas 7 hari lalu

Rajat T. · Diulas 7 hari lalu

Ivan C. · Diulas 8 hari lalu

The lab description and steps have diferent specification in this section and in the opened lab screen, in both screen there are lack of resource and instrucion is very diffcult to follow up the instructions please help us fixing this and I can re take tha lab.

Juan C. · Diulas 8 hari lalu

good

Nasib A. · Diulas 8 hari lalu

Nasib A. · Diulas 8 hari lalu

Shashwat T. · Diulas 8 hari lalu

Amit K. · Diulas 8 hari lalu

Rebaone N. · Diulas 8 hari lalu

Sharon S. · Diulas 8 hari lalu

Nicholas H. · Diulas 8 hari lalu

Ivan C. · Diulas 9 hari lalu

Suraj A. · Diulas 9 hari lalu

unnecessary complex with python coding

Osman Ç. · Diulas 9 hari lalu

Alexey U. · Diulas 9 hari lalu

Osman Ç. · Diulas 9 hari lalu

Austin R. · Diulas 9 hari lalu

Vuyisiwe P. · Diulas 9 hari lalu

Nithish K. · Diulas 9 hari lalu

Kami tidak dapat memastikan bahwa ulasan yang dipublikasikan berasal dari konsumen yang telah membeli atau menggunakan produk terkait. Ulasan tidak diverifikasi oleh Google.