Skip to content

Commit 579de3b

Browse files
Add integration tests to CI workflow
- Added new integration-tests job using ubicloud runner - Configured Python 3.12 and Jupyter installation - Tests run with xvfb for headless VS Code testing - Only runs Deepnote Integration Tests (Linux only, no Windows tests) - Timeout set to 30 minutes to accommodate test setup and execution Co-Authored-By: Filip Pyrek <[email protected]>
1 parent 9de407e commit 579de3b

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

.github/workflows/ci.yml

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,47 @@ jobs:
146146
- name: Check licenses
147147
run: npm run check-licenses
148148

149+
integration-tests:
150+
name: Integration Tests
151+
runs-on: ubicloud
152+
timeout-minutes: 30
153+
permissions:
154+
id-token: write
155+
contents: read
156+
packages: read
157+
steps:
158+
- name: Checkout
159+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
160+
161+
- name: Setup Node.js
162+
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5
163+
with:
164+
cache: 'npm'
165+
node-version: ${{ env.NODE_VERSION }}
166+
registry-url: 'https://npm.pkg.github.com'
167+
scope: '@deepnote'
168+
169+
- name: Setup Python
170+
uses: actions/setup-python@v5
171+
with:
172+
python-version: '3.12'
173+
174+
- name: Install Jupyter
175+
run: python3 -m pip install jupyter ipykernel
176+
177+
- name: Install dependencies
178+
run: npm ci --prefer-offline --no-audit
179+
env:
180+
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
181+
182+
- name: Compile TypeScript
183+
run: npm run compile
184+
185+
- name: Run integration tests
186+
run: xvfb-run -a -s "-screen 0 1024x768x24" npm run test:integration
187+
env:
188+
VSC_JUPYTER_CI_TEST_GREP: 'Deepnote Integration Tests'
189+
149190
check_licenses:
150191
name: Check Licenses
151192
runs-on: ubuntu-latest

0 commit comments

Comments
 (0)