Emit specific error if protocol modules not found

This has now tripped up more than one user (see issues #47 and #53). There is a note in the README about this, but it's easy to miss if you don't read it thoroughly.
This commit is contained in:
sparky8512 2022-08-17 13:59:22 -07:00
parent 7cf1d62658
commit 48aebd6289

View file

@ -1,11 +1,19 @@
#!/usr/bin/python3 #!/usr/bin/python3
"""Simple example of get_status request using grpc call directly.""" """Simple example of get_status request using grpc call directly."""
import sys
import grpc import grpc
try:
from spacex.api.device import device_pb2 from spacex.api.device import device_pb2
from spacex.api.device import device_pb2_grpc from spacex.api.device import device_pb2_grpc
from spacex.api.device import dish_pb2 from spacex.api.device import dish_pb2
except ModuleNotFoundError:
print("This script requires the generated gRPC protocol modules. "
"See README file for details.",
file=sys.stderr)
sys.exit(1)
# Note that if you remove the 'with' clause here, you need to separately # Note that if you remove the 'with' clause here, you need to separately
# call channel.close() when you're done with the gRPC connection. # call channel.close() when you're done with the gRPC connection.