diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 31c8e975..ee2ec053 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -16,7 +16,7 @@ on: jobs: build: runs-on: ubuntu-latest - timeout-minutes: 15 + timeout-minutes: 10 strategy: fail-fast: false matrix: @@ -40,14 +40,7 @@ jobs: flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics - - name: Build wheel and test installed distribution + - name: Build and install wheel run: | python -m build --wheel - pip install dist/*.whl --force-reinstall - - name: Test with pytest - run: | - pytest tests - TQ_TEST_BACKEND=MooncakeStore pytest tests/e2e/test_e2e_lifecycle_consistency.py - pkill -f "mooncake_master" - TQ_TEST_BACKEND=MooncakeStore pytest tests/e2e/test_kv_interface_e2e.py - pkill -f "mooncake_master" \ No newline at end of file + pip install dist/*.whl --force-reinstall \ No newline at end of file diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml new file mode 100644 index 00000000..01f3a9eb --- /dev/null +++ b/.github/workflows/run-tests.yml @@ -0,0 +1,45 @@ +# This workflow will install Python dependencies, run tests and lint with a variety of Python versions +# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python + +name: Run Tests + +on: + push: + branches: + - main + - v0.* + pull_request: + branches: + - main + - v0.* + +jobs: + build: + runs-on: ubuntu-latest + timeout-minutes: 15 + strategy: + fail-fast: false + matrix: + python-version: ["3.11"] + + steps: + - uses: actions/checkout@v4 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v3 + with: + python-version: ${{ matrix.python-version }} + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install torch torchvision --index-url https://download.pytorch.org/whl/cpu + pip install -e ".[test,build,yuanrong]" + pip install mooncake-transfer-engine-non-cuda + - name: Run Tests + run: | + pytest tests + - name: Run MooncakeStore Backend Specific E2E Tests + run: | + TQ_TEST_BACKEND=MooncakeStore pytest tests/e2e/test_e2e_lifecycle_consistency.py + pkill -f "[m]ooncake_master" || true + TQ_TEST_BACKEND=MooncakeStore pytest tests/e2e/test_kv_interface_e2e.py + pkill -f "[m]ooncake_master" || true \ No newline at end of file