The C based gRPC (C++, Python, Ruby, Objective-C, PHP, C#) https://grpc.io/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

21 lines
706 B

#=================
# Compile CPython 3.10.3 from source
[Python run_test] Fix run_test (#34292) We're not running any test at all from `run_test.py` because of the way we filter test cases: https://github.com/grpc/grpc/blob/1d136fd05fbd826024251b83bf8ba65c94963b1e/src/python/grpcio_tests/tests/_runner.py#L137 * `testcase_filter` is read from a json file (like [this one](https://github.com/grpc/grpc/blob/master/src/python/grpcio_tests/tests/tests.json)) and test name is similar to `unit._metadata_test.MetadataTest`. * `case.id()` is loaded by `iterate_suite_cases` and will always have a prefix of `tests`, an example of case id will be: `tests.unit._metadata_test.MetadataTest`. Because of the prefix, none of the test case will be matched thus we're not running any of the tests. This PR fixes the prefix issue and all the regressions comes from not running tests using `run_test.py`. #### Other Changes * Added couple of `__init__.py` file since it's required to load tests. * Added `py_status_code` to Aio rpc state. * `code()` is expecting to return a python gRPC code but current `status_code` is a Cython code. * Added `libsqlite3-dev` to our dockers because it's required for `coverage==7.2.0`. * Renamed csds and admin test because test case file have to end with `_test`: https://github.com/grpc/grpc/blob/1d136fd05fbd826024251b83bf8ba65c94963b1e/src/python/grpcio_tests/tests/_loader.py#L26 * Removed gevent test from `run_test.py` because Bazel gevent tests should be good enough for us. <!-- If you know who should review your pull request, please assign it to that person, otherwise the pull request would get assigned randomly. If your pull request is for a specific language, please add the appropriate lang label. -->
1 year ago
RUN apt-get update && apt-get install -y zlib1g-dev libssl-dev libsqlite3-dev && apt-get clean
RUN apt-get update && apt-get install -y jq build-essential libffi-dev && apt-get clean
RUN cd /tmp && ${'\\'}
wget -q https://www.python.org/ftp/python/3.10.3/Python-3.10.3.tgz && ${'\\'}
tar xzvf Python-3.10.3.tgz && ${'\\'}
cd Python-3.10.3 && ${'\\'}
./configure && ${'\\'}
make -j4 && ${'\\'}
make install
RUN cd /tmp && ${'\\'}
echo "f276ffcd05bccafe46da023d0a5bb04a Python-3.10.3.tgz" > checksum.md5 && ${'\\'}
md5sum -c checksum.md5
RUN python3.10 -m ensurepip && ${'\\'}
python3.10 -m pip install coverage