9
9
jobs :
10
10
11
11
build_extensions :
12
- runs-on : ubuntu-latest
12
+ runs-on : ${{ matrix.os }}
13
13
strategy :
14
14
fail-fast : false
15
15
matrix :
27
27
- settings
28
28
- state
29
29
- widget-tracker/widgets
30
+ os : [ubuntu-latest, macos-latest, windows-latest]
30
31
steps :
31
32
- name : Checkout
32
33
uses : actions/checkout@v2
@@ -38,10 +39,11 @@ jobs:
38
39
diff basics/hello-world/.gitignore ${EXAMPLE_FOLDER}/.gitignore
39
40
env :
40
41
EXAMPLE_FOLDER : ${{ matrix.example }}
42
+ shell : bash
41
43
- name : Install node
42
44
uses : actions/setup-node@v1
43
45
with :
44
- node-version : ' 10 .x'
46
+ node-version : ' 12 .x'
45
47
- name : Install Python
46
48
uses : actions/setup-python@v1
47
49
with :
@@ -55,12 +57,14 @@ jobs:
55
57
jlpm
56
58
env :
57
59
EXAMPLE_FOLDER : ${{ matrix.example }}
60
+ shell : bash
58
61
- name : Lint the files
59
62
run : |
60
63
cd ${EXAMPLE_FOLDER}
61
64
jlpm run eslint:check
62
65
env :
63
66
EXAMPLE_FOLDER : ${{ matrix.example }}
67
+ shell : bash
64
68
- name : Build and check by extension
65
69
run : |
66
70
cd ${EXAMPLE_FOLDER}
@@ -69,21 +73,27 @@ jobs:
69
73
python -m jupyterlab.browser_check
70
74
env :
71
75
EXAMPLE_FOLDER : ${{ matrix.example }}
76
+ shell : bash
72
77
73
78
build_serverextension :
74
- runs-on : ubuntu-latest
79
+ runs-on : ${{ matrix.os }}
80
+ strategy :
81
+ fail-fast : false
82
+ matrix :
83
+ os : [ubuntu-latest, macos-latest, windows-latest]
75
84
steps :
76
85
- name : Checkout
77
86
uses : actions/checkout@v2
78
87
- name : Install node
79
88
uses : actions/setup-node@v1
80
89
with :
81
- node-version : ' 10 .x'
90
+ node-version : ' 12 .x'
82
91
- name : Check config files
83
92
run : |
84
93
diff basics/hello-world/tsconfig.json advanced/server-extension/tsconfig.json
85
94
diff basics/hello-world/.eslintignore advanced/server-extension/.eslintignore
86
95
diff basics/hello-world/.eslintrc.js advanced/server-extension/.eslintrc.js
96
+ shell : bash
87
97
- name : Install Python
88
98
uses : actions/setup-python@v1
89
99
with :
@@ -101,45 +111,55 @@ jobs:
101
111
run : |
102
112
cd advanced/server-extension
103
113
jlpm run eslint:check
104
- - name : Build and check extension as user
114
+ - name : Build extension as user
115
+ # Force the usage of the source distribution (good practice)
105
116
run : |
106
117
cd advanced/server-extension
107
- # Force the usage of the source distribution (good practice)
108
118
python setup.py sdist
109
119
pip install jlab_ext_example --pre --find-links=dist --no-cache-dir
110
120
jupyter lab build
111
- jupyter serverextension list list 1>serverextensions 2>&1
121
+ python -m jupyterlab.browser_check
122
+ - name : Check extension as dev
123
+ if : startsWith(runner.os, 'Linux') || startsWith(runner.os, 'macOS')
124
+ run : |
125
+ jupyter serverextension list 1>serverextensions 2>&1
112
126
cat serverextensions | grep "jlab_ext_example.*OK"
113
127
jupyter labextension list 1>labextensions 2>&1
114
128
cat labextensions | grep "@jupyterlab-examples/server-extension.*OK"
115
- python -m jupyterlab.browser_check
116
129
- name : Clean extension installation
117
130
run : |
118
131
pip uninstall -y jlab_ext_example
119
132
jupyter lab clean
120
133
jupyter serverextension list
121
134
jupyter labextension list
122
- - name : Build and check extension as dev
135
+ - name : Build extension as dev
123
136
run : |
124
137
cd advanced/server-extension
125
138
pip install -e .
126
139
jupyter serverextension enable --py jlab_ext_example
127
140
jupyter labextension link .
128
- jupyter serverextension list list 1>serverextensions 2>&1
141
+ - name : Check extension as dev
142
+ if : startsWith(runner.os, 'Linux') || startsWith(runner.os, 'macOS')
143
+ run : |
144
+ jupyter serverextension list 1>serverextensions 2>&1
129
145
cat serverextensions | grep "jlab_ext_example.*OK"
130
146
jupyter labextension list 1>labextensions 2>&1
131
147
cat labextensions | grep "@jupyterlab-examples/server-extension.*OK"
132
148
python -m jupyterlab.browser_check
133
149
134
150
build_all :
135
- runs-on : ubuntu-latest
151
+ runs-on : ${{ matrix.os }}
152
+ strategy :
153
+ fail-fast : false
154
+ matrix :
155
+ os : [ubuntu-latest, macos-latest, windows-latest]
136
156
steps :
137
157
- name : Checkout
138
158
uses : actions/checkout@v2
139
159
- name : Install node
140
160
uses : actions/setup-node@v1
141
161
with :
142
- node-version : ' 10 .x'
162
+ node-version : ' 12 .x'
143
163
- name : Install Python
144
164
uses : actions/setup-python@v1
145
165
with :
0 commit comments