Support black #148
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: Build nnabla-rl | |
on: | |
pull_request: | |
branches: [master] | |
types: [synchronize, opened, reopened, ready_for_review] | |
jobs: | |
format: | |
runs-on: ubuntu-latest | |
timeout-minutes: 3 | |
if: github.event.pull_request.draft == false | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python 3.8 | |
uses: actions/setup-python@v1 | |
with: | |
python-version: 3.8 | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install -r requirements.txt | |
- name: check python code format with black | |
uses: psf/black@stable | |
with: | |
options: "--check --verbose" | |
src: "." | |
typing: | |
runs-on: ubuntu-latest | |
timeout-minutes: 3 | |
if: github.event.pull_request.draft == false | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python 3.8 | |
uses: actions/setup-python@v1 | |
with: | |
python-version: 3.8 | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install -r requirements.txt | |
- name: Typing check with mypy | |
run: | | |
mypy | |
lint: | |
runs-on: ubuntu-latest | |
timeout-minutes: 3 | |
if: github.event.pull_request.draft == false | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python 3.8 | |
uses: actions/setup-python@v1 | |
with: | |
python-version: 3.8 | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install -r requirements.txt | |
- name: Lint with pyflakes | |
run: | | |
flake8 | |
isort: | |
runs-on: ubuntu-latest | |
timeout-minutes: 3 | |
if: github.event.pull_request.draft == false | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python 3.8 | |
uses: actions/setup-python@v1 | |
with: | |
python-version: 3.8 | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install -r requirements.txt | |
- name: Check import order | |
run: | | |
isort --check-only . | |
test: | |
runs-on: ubuntu-latest | |
timeout-minutes: 5 | |
if: github.event.pull_request.draft == false | |
strategy: | |
matrix: | |
python-version: ['3.8', '3.9', '3.10'] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v1 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install -r requirements.txt | |
- name: Unit test | |
run: | | |
pytest tests/ | |
install: | |
runs-on: ubuntu-latest | |
timeout-minutes: 3 | |
if: github.event.pull_request.draft == false | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python 3.8 | |
uses: actions/setup-python@v1 | |
with: | |
python-version: 3.8 | |
- name: Check Install | |
run: | | |
python -m pip install --upgrade pip setuptools | |
pip install -e . | |
test_reproductions: | |
runs-on: ubuntu-latest | |
timeout-minutes: 5 | |
if: github.event.pull_request.draft == false | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python 3.8 | |
uses: actions/setup-python@v1 | |
with: | |
python-version: 3.8 | |
- name: Install nnabla-rl | |
run: | | |
python -m pip install --upgrade pip setuptools | |
pip install -e . | |
- name: Atari reproductions test | |
run: | | |
./bin/test_reproductions --gpu_id -1 --base_env atari --env FakeAtariNNablaRLNoFrameskip-v1 | |
- name: Mujoco reproductions test | |
run: | | |
./bin/test_reproductions --gpu_id -1 --base_env mujoco --env FakeMujocoNNablaRL-v1 | |
- name: Sparse Mujoco reproductions test | |
run: | | |
pip install -e reproductions/algorithms/sparse_mujoco/environment | |
./bin/test_reproductions --gpu_id -1 --base_env sparse_mujoco --env FakeMujocoNNablaRL-v1 | |
- name: Delayed Mujoco reproductions test | |
run: | | |
pip install -e reproductions/algorithms/delayed_mujoco/environment | |
./bin/test_reproductions --gpu_id -1 --base_env delayed_mujoco --env FakeMujocoNNablaRL-v1 | |
- name: Pybullet reproductions test | |
run: | | |
pip install pybullet | |
./bin/test_reproductions --gpu_id -1 --base_env pybullet | |
- name: HyAR reproductions test | |
run: | | |
./bin/test_reproductions --gpu_id -1 --base_env hybrid_env --env FakeHybridNNablaRL-v1 | |
- name: DeepMind control suite reproductions test | |
run: | | |
pip install dm_control | |
./bin/test_reproductions --gpu_id -1 --base_env dm_control --env FakeDMControlNNablaRL-v1 | |
copyright: | |
runs-on: ubuntu-latest | |
timeout-minutes: 3 | |
if: github.event.pull_request.draft == false | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
- name: Set up Python 3.8 | |
uses: actions/setup-python@v1 | |
with: | |
python-version: 3.8 | |
- name: Check copyright header | |
run: | | |
./bin/insert_copyright --diff --rootdir=. | |
docformat: | |
runs-on: ubuntu-latest | |
timeout-minutes: 3 | |
if: github.event.pull_request.draft == false | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python 3.8 | |
uses: actions/setup-python@v1 | |
with: | |
python-version: 3.8 | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install -r requirements.txt | |
- name: check pydoc format with docformat | |
run: | | |
docformatter --exclude build --check --config pyproject.toml . |