Skip to content

feat: add ops to combine masks and mask affinities #1408

feat: add ops to combine masks and mask affinities

feat: add ops to combine masks and mask affinities #1408

Workflow file for this run

name: CI Pipeline
on:
pull_request:
type: [ opened, synchronize ]
push:
branches: [ main ]
env:
WANDB_MODE: offline
SETUPTOOLS_ENABLE_FEATURES: legacy-editable
jobs:
pytest:
strategy:
matrix:
os:
- ubuntu-latest
python-version:
- "3.9"
- "3.10"
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v3
with:
lfs: 'false'
submodules: 'recursive'
ssh-key: ${{ secrets.git_ssh_key }}
- name: Get changed files
uses: dorny/paths-filter@v2
id: filter
with:
list-files: shell
base: 'main'
filters: |
py_modified:
- added|modified: "./**/*.py"
- name: Setup Python
if: ${{ steps.filter.outputs.py_modified == 'true' }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
architecture: x64
cache: 'pip'
- name: Setup Go
if: ${{ steps.filter.outputs.py_modified == 'true' }}
uses: actions/setup-go@v4
with:
go-version: '1.18.4'
- name: Install Python dependencies
if: ${{ steps.filter.outputs.py_modified == 'true' }}
run: pip install -e '.[modules, test]'
- name: Install CUE
if: ${{ steps.filter.outputs.py_modified == 'true' }}
run: go install cuelang.org/go/cmd/cue@latest
- name: Run pytest
if: ${{ steps.filter.outputs.py_modified == 'true' }}
run: coverage run -m py.test ./tests/unit
- name: Send coverage repot to codecov
uses: codecov/codecov-action@v3
if: ${{ steps.filter.outputs.py_modified == 'true' }}
with:
files: /home/runner/work/zetta_utils/zetta_utils/coverage.xml
pylint-isort:
strategy:
matrix:
os:
- ubuntu-latest
python-version:
- "3.9"
- "3.10"
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v3
with:
lfs: 'false'
submodules: 'recursive'
ssh-key: ${{ secrets.git_ssh_key }}
- name: Get changed files
uses: dorny/paths-filter@v2
id: filter
with:
base: 'main'
list-files: shell
filters: |
py_modified:
- added|modified: "./**/*.py"
- name: Setup Python
if: ${{ steps.filter.outputs.py_modified == 'true' }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
architecture: x64
cache: 'pip'
- name: Install Python dependencies
if: ${{ steps.filter.outputs.py_modified == 'true' }}
run: pip install -e '.[modules, test]'
- name: Run pylint
if: ${{ steps.filter.outputs.py_modified == 'true' }}
run: pylint ${{ steps.filter.outputs.py_modified_files }}
- name: Run isort
if: ${{ steps.filter.outputs.py_modified == 'true' }}
run: isort --check-only --df --verbose --profile black .
mypy:
strategy:
matrix:
os:
- ubuntu-latest
python-version:
- "3.9"
- "3.10"
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v3
with:
lfs: 'false'
submodules: 'recursive'
ssh-key: ${{ secrets.git_ssh_key }}
- name: Get changed files
uses: dorny/paths-filter@v2
id: filter
with:
list-files: shell
base: 'main'
filters: |
py_modified:
- added|modified: "./**/*.py"
- name: Setup Python
if: ${{ steps.filter.outputs.py_modified == 'true' }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
architecture: x64
cache: 'pip'
- name: Install Python dependencies
if: ${{ steps.filter.outputs.py_modified == 'true' }}
run: pip install -e '.[modules, test]'
- name: Run mypy
if: ${{ steps.filter.outputs.py_modified == 'true' }}
run: mypy .
test-docs:
strategy:
matrix:
os:
- ubuntu-latest
python-version:
- "3.9"
- "3.10"
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v3
with:
lfs: 'false'
submodules: 'recursive'
ssh-key: ${{ secrets.git_ssh_key }}
- name: Get changed files
uses: dorny/paths-filter@v2
id: filter
with:
list-files: shell
base: 'main'
filters: |
docs_modified:
- added|modified: "./**/*.rst"
py_modified:
- added|modified: "./**/*.py"
- name: Setup Python
if: ${{ steps.filter.outputs.docs_modified == 'true' || steps.filter.outputs.py_modified == 'true'}}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
architecture: x64
cache: 'pip'
- name: Install Python dependencies
if: ${{ steps.filter.outputs.docs_modified == 'true' || steps.filter.outputs.py_modified == 'true'}}
run: pip install -e '.[modules, docs]'
- name: Doctest
if: ${{ steps.filter.outputs.docs_modified == 'true' || steps.filter.outputs.py_modified == 'true'}}
run: make -C docs doctest
- name: Build Docs
if: ${{ steps.filter.outputs.docs_modified == 'true' || steps.filter.outputs.py_modified == 'true'}}
run: make -C docs html
all-checks-test:
runs-on: ubuntu-20.04
needs: [mypy, pytest, pylint-isort, test-docs]
if: always()
steps:
- name: Success
if: ${{ !(contains(needs.*.result, 'failure')) }}
run: exit 0
- name: Failure
if: ${{ contains(needs.*.result, 'failure') }}
run: exit 1