version: 2.1 orbs: python: circleci/python@0.2.1 jobs: build-and-test: executor: python/default steps: - checkout - python/load-cache - run: command: | if [[ $(pip show grpcio | grep Version) != *1.31* ]]; then git clone https://github.com/grpc/grpc --recurse-submodules cd grpc sudo pip install -r requirements.txt export GRPC_PYTHON_BUILD_WITH_CYTHON=1 sudo pip install . cd - fi name: compile-grpc # remove this command when v1.31 becomes available via pip install -r requirements.txt - run: sudo pip install codecov pytest grpcio-tools - python/install-deps - python/save-cache - run: command: sudo python setup.py develop name: setup - run: command: pytest ./tests --full-trace name: tests - run: command: python tests/benchmark_throughput.py --preset minimalistic name: benchmark - run: command: codecov name: codecov workflows: main: jobs: - build-and-test