Follow-up #926: Add the test for jupyterlab exntension build #1140
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: tests | |
on: | |
pull_request: | |
branches: | |
- main | |
paths: | |
- '.github/workflows/python-tests.yml' | |
- '**.py' | |
- 'pyproject.toml' | |
jobs: | |
lint: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.11' | |
architecture: x64 | |
- name: Install dependencies | |
run: | | |
python -m pip install --progress-bar off --upgrade pip setuptools | |
pip install --progress-bar off . | |
pip install --progress-bar off flake8 black isort mypy mypy-boto3-s3 | |
- run: flake8 . --show-source | |
- run: black --check --diff . | |
- run: isort --check --diff . | |
- run: mypy optuna_dashboard python_tests | |
build-python-package: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Setup Node | |
uses: actions/setup-node@v2 | |
with: | |
node-version: '20' | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.11' | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip setuptools | |
pip install --progress-bar off wheel twine build | |
- run: make python-package | |
test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: ['3.7', '3.8', '3.9', '3.10', '3.11'] | |
optuna-version: ['optuna>=3.1.0'] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Setup Python${{ matrix.python-version }} | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
architecture: x64 | |
- name: Setup Optuna ${{ matrix.optuna-version }} | |
run: | | |
python -m pip install --progress-bar off --upgrade pip setuptools | |
python -m pip install --progress-bar off --upgrade ${{ matrix.optuna-version }} | |
- name: Install dependencies | |
run: | | |
pip install --progress-bar off .[optional] | |
pip install --progress-bar off .[test] | |
pip install --progress-bar off . | |
- name: Run python unit tests | |
run: | | |
pytest python_tests | |
test-with-optuna-master: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.11' | |
architecture: x64 | |
- name: Install dependencies | |
run: | | |
python -m pip install --progress-bar off --upgrade pip setuptools | |
pip install --progress-bar off .[optional] | |
pip install --progress-bar off .[test] | |
pip install --progress-bar off . | |
python -m pip install --progress-bar off --upgrade git+https://github.com/optuna/optuna.git | |
- name: Run python unit tests | |
run: | | |
pytest python_tests | |
test-with-optuna-oldest: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.11' | |
architecture: x64 | |
- name: Install dependencies | |
run: | | |
python -m pip install --progress-bar off --upgrade pip setuptools | |
pip install --progress-bar off .[optional] | |
pip install --progress-bar off .[test] | |
pip install --progress-bar off . | |
python -m pip install --progress-bar off --force-reinstall optuna==3.1.0 | |
- name: Run python unit tests | |
run: | | |
pytest python_tests | |
test-build: | |
name: Test build for JupyterLab extension | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out code | |
uses: actions/checkout@v2 | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.11' | |
architecture: x64 | |
- name: Install dependencies | |
run: | | |
python -m pip install --progress-bar off --upgrade pip setuptools build | |
pip install --progress-bar off jupyterlab | |
pip install --progress-bar off . | |
- name: Set up Node | |
uses: actions/setup-node@v2 | |
with: | |
node-version: '20' | |
cache: 'npm' | |
- name: Build package | |
run: | | |
make tslib | |
cd optuna_dashboard && npm install && npm run build:pkg && cd .. | |
npm install -g yarn | |
cd jupyterlab && yarn install && python -m build --sdist |