diff --git a/tools/run_tests/helper_scripts/prep_xds.sh b/tools/run_tests/helper_scripts/prep_xds.sh index 6ac18978aba..6187c88ba50 100755 --- a/tools/run_tests/helper_scripts/prep_xds.sh +++ b/tools/run_tests/helper_scripts/prep_xds.sh @@ -20,7 +20,8 @@ cd "$(dirname "$0")/../../.." sudo apt-get install -y python3-pip sudo python3 -m pip install --upgrade pip -sudo python3 -m pip install grpcio==1.31.0 grpcio-tools==1.31.0 google-api-python-client google-auth-httplib2 oauth2client xds-protos +sudo python3 -m pip install --upgrade setuptools +sudo python3 -m pip install --upgrade grpcio==1.31.0 grpcio-tools==1.31.0 protobuf google-api-python-client google-auth-httplib2 oauth2client xds-protos # Prepare generated Python code. TOOLS_DIR=tools/run_tests diff --git a/tools/run_tests/run_xds_tests.py b/tools/run_tests/run_xds_tests.py index a18c2e3610d..ae562d55a0b 100755 --- a/tools/run_tests/run_xds_tests.py +++ b/tools/run_tests/run_xds_tests.py @@ -44,12 +44,17 @@ from src.proto.grpc.testing import test_pb2_grpc # Envoy protos provided by PyPI package xds-protos # Needs to import the generated Python file to load descriptors -from envoy.service.status.v3 import csds_pb2 -from envoy.service.status.v3 import csds_pb2_grpc -from envoy.extensions.filters.network.http_connection_manager.v3 import http_connection_manager_pb2 -from envoy.extensions.filters.common.fault.v3 import fault_pb2 -from envoy.extensions.filters.http.fault.v3 import fault_pb2 -from envoy.extensions.filters.http.router.v3 import router_pb2 +try: + from envoy.service.status.v3 import csds_pb2 + from envoy.service.status.v3 import csds_pb2_grpc + from envoy.extensions.filters.network.http_connection_manager.v3 import http_connection_manager_pb2 + from envoy.extensions.filters.common.fault.v3 import fault_pb2 + from envoy.extensions.filters.http.fault.v3 import fault_pb2 + from envoy.extensions.filters.http.router.v3 import router_pb2 +except ImportError: + # These protos are required by CSDS test. We should not fail the entire + # script for one test case. + pass logger = logging.getLogger() console_handler = logging.StreamHandler()