-
Notifications
You must be signed in to change notification settings - Fork 40
153 lines (129 loc) · 4.41 KB
/
main.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
name: Tests
on:
push:
branches:
- master
pull_request:
branches:
- master
defaults:
run:
shell: bash -l {0}
jobs:
tests:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest]
python-version: [3.9]
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install Conda environment with Micromamba
uses: mamba-org/provision-with-micromamba@main
with:
environment-name: ipywebrtc-dev
environment-file: dev_environment.yml
python-version: ${{ matrix.python-version }}
mamba-version: "*"
auto-activate-base: false
channels: conda-forge
- name: Install ipywebrtc
run: pip install .
- name: Check installation files
run: |
test -d $CONDA_PREFIX/share/jupyter/nbextensions/jupyter-webrtc
test -f $CONDA_PREFIX/share/jupyter/nbextensions/jupyter-webrtc/extension.js
test -f $CONDA_PREFIX/share/jupyter/nbextensions/jupyter-webrtc/index.js
test -d $CONDA_PREFIX/share/jupyter/labextensions/jupyter-webrtc
test -f $CONDA_PREFIX/share/jupyter/labextensions/jupyter-webrtc/package.json
- name: Check nbextension and labextension
run: |
jupyter nbextension list 2>&1 | grep -ie "jupyter-webrtc/extension.*enabled" -
jupyter labextension list 2>&1 | grep -ie "jupyter-webrtc.*enabled.*ok" -
- name: Run js tests
run: |
npm install
npm run test
working-directory: js
- name: Run pytest
run: |
pip install ".[test]"
playwright install chromium
pytest --no-solara-vuetify-warmup
- name: Build docs (Only on MacOS for build speed)
if: matrix.os == 'macos-latest'
run: |
cd docs/source/
sphinx-build . _build/html
cd ../..
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install Conda environment with Micromamba
uses: mamba-org/provision-with-micromamba@main
with:
environment-name: ipywebrtc-dev
environment-file: dev_environment.yml
python-version: ${{ matrix.python-version }}
mamba-version: "*"
auto-activate-base: false
channels: conda-forge
- name: Build packages
run: |
python setup.py sdist bdist_wheel
cd dist
sha256sum * | tee SHA256SUMS
- name: Upload builds
uses: actions/upload-artifact@v2
with:
name: dist ${{ github.run_number }}
path: ./dist
install:
runs-on: ${{ matrix.os }}-latest
needs: [build]
strategy:
fail-fast: false
matrix:
os: [ubuntu, macos, windows]
python: ["3.6", "3.9"]
include:
- python: "3.6"
dist: "ipywebrtc*.tar.gz"
- python: "3.9"
dist: "ipywebrtc*.whl"
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install Conda environment with Micromamba
uses: mamba-org/provision-with-micromamba@main
with:
environment-name: ipywebrtc-dev
environment-file: dev_environment.yml
python-version: ${{ matrix.python-version }}
mamba-version: "*"
auto-activate-base: false
channels: conda-forge
- uses: actions/download-artifact@v2
with:
name: dist ${{ github.run_number }}
path: ./dist
- name: Install the package
run: |
cd dist
pip install -vv ${{ matrix.dist }}
- name: Test installation files
run: |
test -d $CONDA_PREFIX/share/jupyter/nbextensions/jupyter-webrtc
test -f $CONDA_PREFIX/share/jupyter/nbextensions/jupyter-webrtc/extension.js
test -f $CONDA_PREFIX/share/jupyter/nbextensions/jupyter-webrtc/index.js
test -d $CONDA_PREFIX/share/jupyter/labextensions/jupyter-webrtc
test -f $CONDA_PREFIX/share/jupyter/labextensions/jupyter-webrtc/package.json
test -d $CONDA_PREFIX/share/jupyter/labextensions/jupyter-webrtc/static
- name: Validate the nbextension
run: jupyter nbextension list 2>&1 | grep "jupyter-webrtc/extension"
- name: Validate the labextension
run: jupyter labextension list 2>&1 | grep jupyter-webrtc