Skip to content

improve notebook test logging and verbosity to diagnose timeouts (#2202) #8

improve notebook test logging and verbosity to diagnose timeouts (#2202)

improve notebook test logging and verbosity to diagnose timeouts (#2202) #8

name: CI e2e notebooks vision
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
ui-build:
env:
node-version: 16.x
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ env.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ env.node-version }}
- name: Install yarn
run: npm install yarn -g
- name: Install yarn dependencies
run: yarn install --frozen-lock-file
- name: Build Typescript
run: yarn buildall
- name: Upload the build result
uses: actions/upload-artifact@v3
with:
name: raiwidgets-js
path: raiwidgets/raiwidgets/widget
ci-e2e-notebook-vision:
needs: ui-build
env:
node-version: 16.x
strategy:
fail-fast: false
matrix:
# TODO: add macos
operatingSystem: [ubuntu-latest, windows-latest]
pythonVersion: [3.7, 3.8, 3.9, "3.10"]
flights: [""]
notebookGroup: ["nb_group_1"]
runs-on: ${{ matrix.operatingSystem }}
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ env.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ env.node-version }}
- name: Install yarn
run: npm install yarn -g
- name: Install yarn dependencies
run: yarn install --frozen-lock-file
- name: Download the UI build result
uses: actions/download-artifact@v2
with:
name: raiwidgets-js
path: raiwidgets/raiwidgets/widget
- uses: conda-incubator/setup-miniconda@v2
with:
auto-update-conda: true
python-version: ${{ matrix.pythonVersion }}
- name: Install pytorch
shell: bash -l {0}
run: |
conda install --yes --quiet pytorch torchvision captum cpuonly -c pytorch
- name: Setup tools
shell: bash -l {0}
run: |
python -m pip install --upgrade pip
pip install --upgrade setuptools
pip install --upgrade "pip-tools<=7.1.0"
- name: Install dependencies
shell: bash -l {0}
run: |
pip install -r requirements-dev.txt
pip install -v -e .
working-directory: raiwidgets
- name: Install vision dependencies
shell: bash -l {0}
run: |
pip install -r requirements-dev.txt
pip install .
working-directory: responsibleai_vision
- name: Pip freeze
shell: bash -l {0}
run: |
pip freeze > installed-requirements-dev.txt
cat installed-requirements-dev.txt
working-directory: raiwidgets
- name: Upload requirements
uses: actions/upload-artifact@v3
with:
name: requirements-dev.txt
path: raiwidgets/installed-requirements-dev.txt
# keep list of notebooks in sync with scripts/e2e-widget.js, create new notebook group if necessary
- if: ${{ matrix.notebookGroup == 'nb_group_1'}}
name: Run widget tests
shell: bash -l {0}
run: |
yarn e2e-widget -n "responsibleaidashboard-fridge-image-classification-model-debugging" -f ${{ matrix.flights }}
yarn e2e-widget -n "responsibleaidashboard-fridge-multilabel-image-classification-model-debugging" -f ${{ matrix.flights }}
yarn e2e-widget -n "responsibleaidashboard-fridge-object-detection-model-debugging" -f ${{ matrix.flights }}
- name: Upload e2e test screen shot
if: always()
uses: actions/upload-artifact@v3
with:
name: raiwidgets-e2e-screen-shot
path: ./dist/cypress