Skip to content

Commit 8c9ed98

Browse files
committed
ci: Extract CoreOS install test to separate job
The CoreOS install test was previously run conditionally within the test-integration matrix job. Running it separately avoids disk space issues that can occur when both tests run in the same job, as the CoreOS test requires building additional container images. Assisted-by: OpenCode (Opus 4.5) Signed-off-by: Colin Walters <walters@verbum.org>
1 parent 41faae6 commit 8c9ed98

1 file changed

Lines changed: 44 additions & 12 deletions

File tree

.github/workflows/ci.yml

Lines changed: 44 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -206,33 +206,65 @@ jobs:
206206
fi
207207
just clean-local-images
208208
209-
- name: Run TMT test about bootc install on coreos
209+
- name: Archive TMT logs
210+
if: always()
211+
uses: actions/upload-artifact@v6
212+
with:
213+
name: tmt-log-PR-${{ github.event.number }}-${{ matrix.test_os }}-${{ matrix.variant }}-${{ env.ARCH }}
214+
path: /var/tmp/tmt
215+
216+
# Test bootc install on Fedora CoreOS (separate job to avoid disk space issues
217+
# when run in the same job as test-integration).
218+
# Uses fedora-43 as it's the current stable Fedora release matching CoreOS.
219+
test-coreos:
220+
needs: package
221+
runs-on: ubuntu-24.04
222+
223+
steps:
224+
- uses: actions/checkout@v6
225+
- name: Bootc Ubuntu Setup
226+
uses: ./.github/actions/bootc-ubuntu-setup
227+
with:
228+
libvirt: true
229+
- name: Install tmt
230+
run: pip install --user "tmt[provision-virtual]"
231+
232+
- name: Setup env
210233
run: |
211-
# Only test fedora-43 on fedora-coreos:testing-devel
212-
if [ "${{ matrix.test_os }}" = "fedora-43" ] && [ "${{ matrix.variant }}" = "ostree" ]; then
213-
just build-testimage-coreos target/packages
214-
just test-tmt-on-coreos plan-bootc-install-on-coreos
215-
just clean-local-images
216-
else
217-
echo "skipped"
218-
fi
234+
BASE=$(just pullspec-for-os base fedora-43)
235+
echo "BOOTC_base=${BASE}" >> $GITHUB_ENV
236+
echo "BOOTC_variant=ostree" >> $GITHUB_ENV
237+
238+
- name: Download package artifacts
239+
uses: actions/download-artifact@v7
240+
with:
241+
name: packages-fedora-43
242+
path: target/packages/
243+
244+
- name: Build container and test on CoreOS
245+
run: |
246+
BOOTC_SKIP_PACKAGE=1 just build
247+
just build-testimage-coreos target/packages
248+
just test-tmt-on-coreos plan-bootc-install-on-coreos
249+
just clean-local-images
219250
220251
- name: Archive TMT logs
221252
if: always()
222253
uses: actions/upload-artifact@v6
223254
with:
224-
name: tmt-log-PR-${{ github.event.number }}-${{ matrix.test_os }}-${{ matrix.variant }}-${{ env.ARCH }}
255+
name: tmt-log-PR-${{ github.event.number }}-fedora-43-coreos-${{ env.ARCH }}
225256
path: /var/tmp/tmt
226257

227258
# Sentinel job for required checks - configure this job name in repository settings
228259
required-checks:
229260
if: always()
230-
needs: [cargo-deny, validate, package, test-integration]
261+
needs: [cargo-deny, validate, package, test-integration, test-coreos]
231262
runs-on: ubuntu-latest
232263
steps:
233264
- run: exit 1
234265
if: >-
235266
needs.cargo-deny.result != 'success' ||
236267
needs.validate.result != 'success' ||
237268
needs.package.result != 'success' ||
238-
needs.test-integration.result != 'success'
269+
needs.test-integration.result != 'success' ||
270+
needs.test-coreos.result != 'success'

0 commit comments

Comments
 (0)