mirror of
https://github.com/chanzuckerberg/cellxgene.git
synced 2026-09-15 12:47:56 +08:00
* move local_server -> backend/server server-> backend/czi_hosted, pull common code into backend/common update imports, tests and make commands
109 lines
3.5 KiB
YAML
109 lines
3.5 KiB
YAML
name: Compatibility Tests
|
|
|
|
on:
|
|
schedule:
|
|
- cron: '0 8 7 * 2'
|
|
push:
|
|
branches:
|
|
- main
|
|
|
|
env:
|
|
JEST_ENV: prod
|
|
|
|
jobs:
|
|
docker-build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Set up Python ${{ matrix.python-version }}
|
|
uses: actions/setup-python@v1
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
- name: Build docker image
|
|
run: docker build .
|
|
|
|
cellxgene-main-with-python-and-anndata-versions:
|
|
name: python versions x anndata versions
|
|
runs-on: ubuntu-latest
|
|
continue-on-error: true
|
|
strategy:
|
|
matrix:
|
|
python-version: [3.6, 3.7] # As of Oct 2020 Anndata is not compatible with 3.8
|
|
anndata-version: [0.7.0, 0.7.1, 0.7.2, 0.7.3, 0.7.4, 0.7.5]
|
|
test-suite: [smoke-test, smoke-test-annotations]
|
|
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: |
|
|
# 1. only install the dev requirements on top of what is in the cellxgene pip package
|
|
sudo apt-get update && sudo apt-get install -y libhdf5-serial-dev
|
|
sed -i 's/-r requirements.txt//' backend/server/requirements-dev.txt
|
|
pip install -r backend/server/requirements-dev.txt
|
|
# 2. install cellxgene
|
|
make pydist install-dist
|
|
# 3. install anndata
|
|
pip install anndata==${{ matrix.anndata-version }}
|
|
# workaround for anndata 0.6.22.post1 bug
|
|
[[ "0.6.22.post1" = "${{ matrix.anndata-version }}" ]] && pip install h5py==2.9.0 || true
|
|
- name: Tests
|
|
run: make unit-test ${{ matrix.test-suite }}
|
|
|
|
cellxgene-release-with-anndata-master:
|
|
name: cellxgene release with anndata master
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
test-suite: [smoke-test, smoke-test-annotations]
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Set up Python 3.7
|
|
uses: actions/setup-python@v1
|
|
with:
|
|
python-version: 3.7
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
with:
|
|
path: cellxgene
|
|
- name: Install dependencies
|
|
run: |
|
|
cd cellxgene
|
|
# 1. only install the dev requirements on top of what is in the cellxgene pip package
|
|
make dev-env-client
|
|
sed -i 's/-r requirements.txt//' backend/server/requirements-dev.txt
|
|
pip install -r backend/server/requirements-dev.txt
|
|
# 2. install cellxgene
|
|
pip install --upgrade cellxgene
|
|
# 3. install anndata
|
|
pip install git+https://github.com/theislab/anndata
|
|
- name: Tests
|
|
run: cd cellxgene && make unit-test ${{ matrix.test-suite }}
|
|
|
|
cellxgene-main-with-anndata-master:
|
|
name: cellxgene main with anndata master
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
test-suite: [smoke-test, smoke-test-annotations]
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Set up Python 3.7
|
|
uses: actions/setup-python@v1
|
|
with:
|
|
python-version: 3.7
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
with:
|
|
path: cellxgene
|
|
- name: Install dependencies
|
|
run: |
|
|
cd cellxgene
|
|
sed -i -E 's/^anndata[>=]=[0-9]+.[0-9]+.[0-9]+$/anndata/g' backend/server/requirements.txt
|
|
make pydist install-dist dev-env
|
|
pip install git+https://github.com/theislab/anndata
|
|
- name: Tests
|
|
run: cd cellxgene && make unit-test ${{ matrix.test-suite }}
|