Skip to content

Commit b2e1405

Browse files
SjorsClaude
andcommitted
ci: use Device Test Template
Co-authored-by: Claude <[email protected]>
1 parent 6b923c8 commit b2e1405

File tree

2 files changed

+86
-181
lines changed

2 files changed

+86
-181
lines changed

.github/workflows/ci.yml

Lines changed: 48 additions & 181 deletions
Original file line numberDiff line numberDiff line change
@@ -273,191 +273,58 @@ jobs:
273273
- uses: ./.github/actions/build-bitcoind
274274

275275
test-trezor:
276-
name: Python ${{ matrix.python-version }} ${{ matrix.device }} ${{ matrix.test.script || matrix.test.interface }}
277-
runs-on: ubuntu-latest
278-
needs: [ sim-builder-trezor, bitcoind-builder, dist-builder ]
279-
timeout-minutes: 45
280-
281-
strategy:
282-
fail-fast: false
283-
matrix:
284-
python-version: [ '3.9', '3.10', '3.11', '3.12' ]
285-
device:
286-
- 'trezor-1'
287-
- 'trezor-t'
288-
test:
289-
- {interface: 'library'}
290-
- {interface: 'cli'}
291-
- {interface: 'stdin'}
292-
- {script: 'Wheel'}
293-
- {script: 'Sdist'}
294-
- {script: 'Bindist'}
295-
296-
container: python:${{ matrix.python-version }}
297-
298-
steps:
299-
- uses: actions/checkout@v4
300-
- name: run test
301-
if: ${{ matrix.test.interface }}
302-
uses: ./.github/actions/test-device
303-
- name: run dist test
304-
if: ${{ matrix.test.script }}
305-
uses: ./.github/actions/test-dist
306-
307-
test-ledger:
308-
name: Python ${{ matrix.python-version }} ${{ matrix.device }} ${{ matrix.test.script || matrix.test.interface }}
309-
runs-on: ubuntu-latest
310-
needs: [ sim-builder-ledger, ledger-s-app-builder, ledger-x-app-builder, bitcoind-builder ]
311-
timeout-minutes: 45
312-
313-
strategy:
314-
fail-fast: false
315-
matrix:
316-
python-version: [ '3.9', '3.10', '3.11', '3.12' ]
317-
device:
318-
- 'ledger'
319-
- 'ledger-legacy'
320-
test:
321-
- {interface: 'library'}
322-
- {interface: 'cli'}
323-
- {interface: 'stdin'}
324-
- {script: 'Wheel'}
325-
- {script: 'Sdist'}
326-
- {script: 'Bindist'}
327-
328-
container: python:${{ matrix.python-version }}
329-
330-
steps:
331-
- uses: actions/checkout@v4
332-
- name: run test
333-
if: ${{ matrix.test.interface }}
334-
uses: ./.github/actions/test-device
335-
- name: run dist test
336-
if: ${{ matrix.test.script }}
337-
uses: ./.github/actions/test-dist
276+
uses: ./.github/workflows/device-test.yml
277+
needs: [sim-builder-trezor, bitcoind-builder, dist-builder]
278+
with:
279+
device: trezor
280+
runs-on: ubuntu-latest
281+
282+
test-ledger-s:
283+
uses: ./.github/workflows/device-test.yml
284+
needs: [sim-builder-ledger, ledger-s-app-builder, bitcoind-builder, dist-builder]
285+
with:
286+
device: ledger-legacy
287+
runs-on: ubuntu-latest
288+
289+
test-ledger-x:
290+
uses: ./.github/workflows/device-test.yml
291+
needs: [sim-builder-ledger, ledger-x-app-builder, bitcoind-builder, dist-builder]
292+
with:
293+
device: ledger
294+
runs-on: ubuntu-latest
338295

339296
test-coldcard:
340-
name: Python ${{ matrix.python-version }} ${{ matrix.device }} ${{ matrix.test.script || matrix.test.interface }}
341-
runs-on: ubuntu-22.04
342-
needs: [ sim-builder-coldcard, bitcoind-builder ]
343-
timeout-minutes: 45
344-
345-
strategy:
346-
fail-fast: false
347-
matrix:
348-
python-version: [ '3.9', '3.10', '3.11', '3.12' ]
349-
device:
350-
- 'coldcard'
351-
test:
352-
- {interface: 'library'}
353-
- {interface: 'cli'}
354-
- {interface: 'stdin'}
355-
- {script: 'Wheel'}
356-
- {script: 'Sdist'}
357-
- {script: 'Bindist'}
358-
359-
container: python:${{ matrix.python-version }}
360-
361-
steps:
362-
- uses: actions/checkout@v4
363-
- name: run test
364-
if: ${{ matrix.test.interface }}
365-
uses: ./.github/actions/test-device
366-
- name: run dist test
367-
if: ${{ matrix.test.script }}
368-
uses: ./.github/actions/test-dist
369-
370-
test-bitbox:
371-
name: Python ${{ matrix.python-version }} ${{ matrix.device }} ${{ matrix.test.script || matrix.test.interface }}
372-
runs-on: ubuntu-latest
373-
needs: [ sim-builder-bitbox, bitcoind-builder ]
374-
timeout-minutes: 45
375-
376-
strategy:
377-
fail-fast: false
378-
matrix:
379-
python-version: [ '3.9', '3.10', '3.11', '3.12' ]
380-
device:
381-
- 'bitbox01'
382-
- 'bitbox02'
383-
test:
384-
- {interface: 'library'}
385-
- {interface: 'cli'}
386-
- {interface: 'stdin'}
387-
- {script: 'Wheel'}
388-
- {script: 'Sdist'}
389-
- {script: 'Bindist'}
390-
391-
container: python:${{ matrix.python-version }}
392-
393-
steps:
394-
- uses: actions/checkout@v4
395-
- name: run test
396-
if: ${{ matrix.test.interface }}
397-
uses: ./.github/actions/test-device
398-
- name: run dist test
399-
if: ${{ matrix.test.script }}
400-
uses: ./.github/actions/test-dist
297+
uses: ./.github/workflows/device-test.yml
298+
needs: [sim-builder-coldcard, bitcoind-builder, dist-builder]
299+
with:
300+
device: coldcard
301+
runs-on: ubuntu-22.04
302+
303+
test-bitbox01:
304+
uses: ./.github/workflows/device-test.yml
305+
needs: [sim-builder-bitbox, bitcoind-builder, dist-builder]
306+
with:
307+
device: bitbox01
308+
runs-on: ubuntu-latest
309+
310+
test-bitbox02:
311+
uses: ./.github/workflows/device-test.yml
312+
needs: [sim-builder-bitbox, bitcoind-builder, dist-builder]
313+
with:
314+
device: bitbox02
315+
runs-on: ubuntu-latest
401316

402317
test-jade:
403-
name: Python ${{ matrix.python-version }} ${{ matrix.device }} ${{ matrix.test.script || matrix.test.interface }}
404-
runs-on: ubuntu-latest
405-
needs: [ sim-builder-jade, bitcoind-builder ]
406-
timeout-minutes: 45
407-
408-
strategy:
409-
fail-fast: false
410-
matrix:
411-
python-version: [ '3.9', '3.10', '3.11', '3.12' ]
412-
device:
413-
- 'jade'
414-
test:
415-
- {interface: 'library'}
416-
- {interface: 'cli'}
417-
- {interface: 'stdin'}
418-
- {script: 'Wheel'}
419-
- {script: 'Sdist'}
420-
- {script: 'Bindist'}
421-
422-
container: python:${{ matrix.python-version }}
423-
424-
steps:
425-
- uses: actions/checkout@v4
426-
- name: run test
427-
if: ${{ matrix.test.interface }}
428-
uses: ./.github/actions/test-device
429-
- name: run dist test
430-
if: ${{ matrix.test.script }}
431-
uses: ./.github/actions/test-dist
318+
uses: ./.github/workflows/device-test.yml
319+
needs: [sim-builder-jade, bitcoind-builder, dist-builder]
320+
with:
321+
device: jade
322+
runs-on: ubuntu-latest
432323

433324
test-keepkey:
434-
name: Python ${{ matrix.python-version }} ${{ matrix.device }} ${{ matrix.test.script || matrix.test.interface }}
435-
runs-on: ubuntu-latest
436-
needs: [ sim-builder-keepkey, bitcoind-builder ]
437-
timeout-minutes: 45
438-
439-
strategy:
440-
fail-fast: false
441-
matrix:
442-
python-version: [ '3.9', '3.10', '3.11', '3.12' ]
443-
device:
444-
- 'keepkey'
445-
test:
446-
- {interface: 'library'}
447-
- {interface: 'cli'}
448-
- {interface: 'stdin'}
449-
- {script: 'Wheel'}
450-
- {script: 'Sdist'}
451-
- {script: 'Bindist'}
452-
453-
container: python:${{ matrix.python-version }}
454-
455-
steps:
456-
- uses: actions/checkout@v4
457-
- name: run test
458-
if: ${{ matrix.test.interface }}
459-
uses: ./.github/actions/test-device
460-
- name: run dist test
461-
if: ${{ matrix.test.script }}
462-
uses: ./.github/actions/test-dist
325+
uses: ./.github/workflows/device-test.yml
326+
needs: [sim-builder-keepkey, bitcoind-builder, dist-builder]
327+
with:
328+
device: keepkey
329+
runs-on: ubuntu-latest
463330

.github/workflows/device-test.yml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: Device Test Template
2+
on:
3+
workflow_call:
4+
inputs:
5+
device:
6+
required: true
7+
type: string
8+
runs-on:
9+
required: false
10+
type: string
11+
default: ubuntu-latest
12+
13+
jobs:
14+
test-device:
15+
name: Python ${{ matrix.python-version }} ${{ matrix.device }} ${{ matrix.test.script || matrix.test.interface }}
16+
runs-on: ${{ inputs.runs-on }}
17+
timeout-minutes: 45
18+
strategy:
19+
fail-fast: false
20+
matrix:
21+
python-version: ['3.9', '3.10', '3.11', '3.12']
22+
device: ${{ inputs.device }}
23+
test:
24+
- {interface: 'library'}
25+
- {interface: 'cli'}
26+
- {interface: 'stdin'}
27+
- {script: 'Wheel'}
28+
- {script: 'Sdist'}
29+
- {script: 'Bindist'}
30+
container: python:${{ matrix.python-version }}
31+
steps:
32+
- uses: actions/checkout@v4
33+
- name: run test
34+
if: ${{ matrix.test.interface }}
35+
uses: ./.github/actions/test-device
36+
- name: run dist test
37+
if: ${{ matrix.test.script }}
38+
uses: ./.github/actions/test-dist

0 commit comments

Comments
 (0)