From b04d2c39c84633a22146e99dfe829f3655cdd4dd Mon Sep 17 00:00:00 2001 From: Jactus Date: Thu, 10 Dec 2020 17:42:38 +0800 Subject: [PATCH] Update CI --- .github/workflows/test.yml | 65 +++++++++++++++++++++++++++++--------- 1 file changed, 50 insertions(+), 15 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 81bbea097..be6f6b75d 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -12,8 +12,8 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [windows-latest, ubuntu-16.04, ubuntu-18.04, macos-latest] - python-version: [3.7, 3.8] + os: [windows-latest, ubuntu-16.04, ubuntu-18.04, ubuntu-20.04, macos-latest] + python-version: [3.6, 3.7, 3.8] steps: - uses: actions/checkout@v2 @@ -22,13 +22,22 @@ jobs: uses: actions/setup-python@v2 with: python-version: ${{ matrix.python-version }} - + - name: Install dependencies - run: | - pip install --upgrade cython - pip install numpy jupyter jupyter_contrib_nbextensions - pip install -U scipy scikit-learn # installing without this line will cause errors on GitHub Actions, while instsalling locally won't - python setup.py install + run: | + if [ "$RUNNER_OS" == "Windows" ]; then + $CONDA\\python.exe -m pip install --upgrade cython + $CONDA\\python.exe -m pip install --upgrade cython + $CONDA\\python.exe -m pip install numpy jupyter jupyter_contrib_nbextensions + $CONDA\\python.exe -m pip install -U scipy scikit-learn # installing without this line will cause errors on GitHub Actions, while instsalling locally won't + $CONDA\\python.exe setup.py install + else + sudo $CONDA/bin/python -m pip install --upgrade cython + sudo $CONDA/bin/python -m pip install numpy jupyter jupyter_contrib_nbextensions + sudo $CONDA/bin/python -m pip install -U scipy scikit-learn # installing without this line will cause errors on GitHub Actions, while instsalling locally won't + sudo $CONDA/bin/python setup.py install + fi + shell: bash - name: Install Lightgbm for MacOS if: runner.os == 'macOS' @@ -38,23 +47,49 @@ jobs: - name: Install test dependencies run: | - python -m pip install --upgrade pip - pip install black pytest - + if [ "$RUNNER_OS" == "Windows" ]; then + $CONDA\\python.exe -m pip install --upgrade pip + $CONDA\\python.exe -m pip install black pytest + else + sudo $CONDA/bin/python -m pip install --upgrade pip + sudo $CONDA/bin/python -m pip install black pytest + fi + shell: bash + - name: Lint with Black run: | cd .. - python -m black qlib -l 120 --check --diff + if [ "$RUNNER_OS" == "Windows" ]; then + $CONDA\\python.exe -m black qlib -l 120 --check --diff + else + $CONDA/bin/python -m black qlib -l 120 --check --diff + fi + shell: bash - name: Unit tests with Pytest run: | cd tests - pytest . --durations=0 + if [ "$RUNNER_OS" == "Windows" ]; then + $CONDA\\python.exe -m pytest . --durations=0 + else + $CONDA/bin/python -m pytest . --durations=0 + fi + shell: bash - name: Test data downloads run: | - python scripts/get_data.py qlib_data --target_dir ~/.qlib/qlib_data/cn_data --interval 1d --region cn + if [ "$RUNNER_OS" == "Windows" ]; then + $CONDA\\python.exe scripts/get_data.py qlib_data --target_dir ~/.qlib/qlib_data/cn_data --interval 1d --region cn + else + $CONDA/bin/python scripts/get_data.py qlib_data --target_dir ~/.qlib/qlib_data/cn_data --interval 1d --region cn + fi + shell: bash - name: Test workflow by config run: | - qrun examples/benchmarks/LightGBM/workflow_config_lightgbm_Alpha158.yaml + if [ "$RUNNER_OS" == "Windows" ]; then + $CONDA\\python.exe qlib\\workflow\\cli.py examples\\benchmarks\\LightGBM\\workflow_config_lightgbm_Alpha158.yaml + else + $CONDA/bin/python qlib/workflow/cli.py examples/benchmarks/LightGBM/workflow_config_lightgbm_Alpha158.yaml + fi + shell: bash