Skip to content

Commit 4e0cf0f

Browse files
SjorsGPT-5 (Preview)
andcommitted
ci: clone coldcard repo only once
Co-Authored-By: GPT-5 (Preview) <[email protected]>
1 parent cabcd5e commit 4e0cf0f

File tree

4 files changed

+42
-3
lines changed

4 files changed

+42
-3
lines changed

.github/workflows/ci.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,9 +119,13 @@ jobs:
119119
# Trezor T binaries don't need this.
120120
runs-on: ubuntu-22.04
121121

122+
coldcard-firmware-seed:
123+
uses: ./.github/workflows/coldcard-firmware-seed.yml
124+
125+
# Use the generic sim-builder with a Coldcard seed dependency
122126
sim-builder-coldcard:
123127
name: Coldcard sim builder
124-
needs: prepare-sim-matrices
128+
needs: [prepare-sim-matrices, coldcard-firmware-seed]
125129
uses: ./.github/workflows/sim-builder.yml
126130
with:
127131
sim: coldcard
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
name: Coldcard Firmware Seed
2+
on:
3+
workflow_call:
4+
5+
jobs:
6+
seed:
7+
name: Seed Coldcard firmware (once per run)
8+
runs-on: ubuntu-22.04
9+
steps:
10+
- uses: actions/checkout@v4
11+
12+
- name: Clone Coldcard firmware (with submodules)
13+
shell: bash
14+
run: |
15+
set -euo pipefail
16+
mkdir -p test/work
17+
pushd test/work
18+
git clone --recursive https://github.com/Coldcard/firmware.git
19+
popd
20+
21+
- name: Upload seeded repo as artifact
22+
uses: actions/upload-artifact@v4
23+
with:
24+
name: coldcard-firmware-src
25+
path: test/work/firmware

.github/workflows/sim-builder.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,15 @@ jobs:
2323
include: ${{ fromJSON(inputs.include) }}
2424
steps:
2525
- uses: actions/checkout@v4
26+
27+
# Coldcard: download seeded firmware (seed job must run earlier)
28+
- name: Download seeded Coldcard firmware
29+
if: ${{ inputs.sim == 'coldcard' }}
30+
uses: actions/download-artifact@v4
31+
with:
32+
name: coldcard-firmware-src
33+
path: test/work/firmware
34+
2635
- uses: ./.github/actions/build-sim
2736
with:
2837
name: ${{ matrix.name }}

test/setup_environment.sh

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -149,14 +149,15 @@ if [[ -n ${build_coldcard} ]]; then
149149
coldcard_setup_needed=true
150150
fi
151151
fi
152-
# Apply patch to make simulator work in linux environments
153-
git am ../../data/coldcard-multisig.patch
154152

155153
# Build the simulator. This is cached, but it is also fast
156154
poetry run pip install -r requirements.txt
157155
pip install -r requirements.txt
158156
cd unix
159157
if [ "$coldcard_setup_needed" == true ] ; then
158+
# Apply patch to make simulator work in linux environments
159+
git am ../../../data/coldcard-multisig.patch
160+
160161
pushd ../external/micropython/mpy-cross/
161162
make
162163
popd

0 commit comments

Comments
 (0)