Skip to content

Commit 2188f39

Browse files
committed
CI: Don't perform a rebuild in prebuild checks.
`make check-docs` requires a full build (to check --help information against docs). So move these checks to a `postbuild` CI stage. Signed-off-by: Rusty Russell <[email protected]>
1 parent b70f783 commit 2188f39

File tree

1 file changed

+55
-27
lines changed

1 file changed

+55
-27
lines changed

.github/workflows/ci.yaml

Lines changed: 55 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -71,32 +71,6 @@ jobs:
7171
echo "Not a PR event."
7272
fi
7373
74-
- name: Set up Python 3.10
75-
uses: actions/setup-python@v5
76-
with:
77-
python-version: "3.10"
78-
79-
- name: Install uv
80-
uses: astral-sh/setup-uv@v5
81-
82-
- name: Install dependencies
83-
run: |
84-
bash -x .github/scripts/setup.sh
85-
# We're going to check BOLT quotes, so get the latest version
86-
git clone https://github.com/lightning/bolts.git ../${BOLTDIR}
87-
- name: Configure
88-
run: ./configure --enable-debugbuild --enable-rust
89-
- name: Check source
90-
env:
91-
VALGRIND: 0
92-
PYTEST_OPTS: --timeout=1200 --durations=10
93-
run: |
94-
uv run make check-source BASE_REF="origin/${{ github.base_ref }}"
95-
- name: Check Generated Files have been updated
96-
run: uv run make check-gen-updated
97-
- name: Check docs
98-
run: uv run make check-doc
99-
10074
compile:
10175
name: Compile CLN ${{ matrix.cfg }}
10276
runs-on: ubuntu-22.04
@@ -162,6 +136,58 @@ jobs:
162136
name: cln-${{ matrix.CFG }}.tar.bz2
163137
path: cln-${{ matrix.CFG }}.tar.bz2
164138

139+
postbuild:
140+
name: Postbuild checks
141+
runs-on: ubuntu-22.04
142+
timeout-minutes: 30
143+
env:
144+
BOLTDIR: bolts
145+
needs:
146+
- compile
147+
strategy:
148+
fail-fast: true
149+
matrix:
150+
include:
151+
- CFG: compile-gcc
152+
VALGRIND: 1
153+
- CFG: compile-clang-sanitizers
154+
VALGRIND: 0
155+
steps:
156+
- name: Checkout
157+
uses: actions/checkout@v4
158+
159+
- name: Set up Python 3.10
160+
uses: actions/setup-python@v5
161+
with:
162+
python-version: "3.10"
163+
164+
- name: Install uv
165+
uses: astral-sh/setup-uv@v5
166+
167+
- name: Install dependencies
168+
run: |
169+
bash -x .github/scripts/setup.sh
170+
sudo apt-get update -qq
171+
# We're going to check BOLT quotes, so get the latest version
172+
git clone https://github.com/lightning/bolts.git ../${BOLTDIR}
173+
174+
- name: Download build
175+
uses: actions/download-artifact@v4
176+
with:
177+
name: cln-${{ matrix.CFG }}.tar.bz2
178+
179+
- name: Check source
180+
env:
181+
VALGRIND: 0
182+
PYTEST_OPTS: --timeout=1200 --durations=10
183+
run: |
184+
tar -xmaf cln-${{ matrix.CFG }}.tar.bz2
185+
uv run make check-source BASE_REF="origin/${{ github.base_ref }}"
186+
- name: Check Generated Files have been updated
187+
run: uv run make check-gen-updated
188+
- name: Check docs
189+
run: uv run make check-doc
190+
165191
check-units:
166192
# The unit test checks are not in the critical path (not dependent
167193
# on the integration tests), so run them with `valgrind`
@@ -608,17 +634,19 @@ jobs:
608634
- integration-valgrind
609635
- integration-sanitizers
610636
- min-btc-support
637+
- postbuild
611638
if: ${{ always() }}
612639
steps:
613640
- name: Complete
614641
env:
615-
JOB_NAMES: "INTEGRATION CHECK_UNITS VALGRIND SANITIZERS BTC"
642+
JOB_NAMES: "INTEGRATION CHECK_UNITS VALGRIND SANITIZERS BTC POSTBUILD"
616643
INTEGRATION: ${{ needs.integration.result }}
617644
CHECK_UNITS: ${{ needs['check-units'].result }}
618645
VALGRIND: ${{ needs['integration-valgrind'].result }}
619646
SANITIZERS: ${{ needs['integration-sanitizers'].result }}
620647
DOCS: ${{ needs['update-docs-examples'].result }}
621648
BTC: ${{ needs['min-btc-support'].result }}
649+
POSTBUILD: ${{ needs['postbuild'].result }}
622650
run: |
623651
failed=""
624652
for name in $JOB_NAMES; do

0 commit comments

Comments
 (0)