Compare commits
2 commits
a511f5418d
...
2cc3fab027
| Author | SHA1 | Date | |
|---|---|---|---|
| 2cc3fab027 | |||
| 41d0e7a398 |
2 changed files with 52 additions and 0 deletions
|
|
@ -51,6 +51,17 @@ jobs:
|
||||||
retention-days: 14
|
retention-days: 14
|
||||||
if-no-files-found: error
|
if-no-files-found: error
|
||||||
|
|
||||||
|
- name: Cache ISO for smoke-latest
|
||||||
|
# Persist the ISO to /data/smoke-cache/latest.iso so the
|
||||||
|
# smoke-latest.yml workflow_dispatch job can re-test without
|
||||||
|
# rebuilding. /data is already mounted into the runner container
|
||||||
|
# at a matching host path.
|
||||||
|
run: |
|
||||||
|
mkdir -p /data/smoke-cache
|
||||||
|
iso=$(ls iso/out/*.iso | head -1)
|
||||||
|
cp -f "$iso" /data/smoke-cache/latest.iso
|
||||||
|
ls -lh /data/smoke-cache/latest.iso
|
||||||
|
|
||||||
- name: Smoke-test ISO on Proxmox test host
|
- name: Smoke-test ISO on Proxmox test host
|
||||||
# Inlined as a step (rather than a separate job with `needs:`) so
|
# Inlined as a step (rather than a separate job with `needs:`) so
|
||||||
# we can reuse the ISO that's already in the workspace — Forgejo's
|
# we can reuse the ISO that's already in the workspace — Forgejo's
|
||||||
|
|
|
||||||
41
.forgejo/workflows/smoke-latest.yml
Normal file
41
.forgejo/workflows/smoke-latest.yml
Normal file
|
|
@ -0,0 +1,41 @@
|
||||||
|
name: Smoke latest ISO
|
||||||
|
|
||||||
|
# Manual-trigger smoke test against the last ISO `build-iso.yml` produced.
|
||||||
|
# Use this when you've changed something that only affects smoke-vm.sh,
|
||||||
|
# the PVE setup, or the secrets — skips the 25-min ISO rebuild and only
|
||||||
|
# runs the ~2-min VM boot + /:5000 check.
|
||||||
|
#
|
||||||
|
# The ISO lives at /data/smoke-cache/latest.iso on the runner, populated
|
||||||
|
# by build-iso.yml's "Cache ISO for smoke-latest" step. That path is
|
||||||
|
# inside the runner's already-mounted /data volume, so no extra bind
|
||||||
|
# mounts needed.
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
concurrency:
|
||||||
|
group: smoke-latest
|
||||||
|
cancel-in-progress: false
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
smoke:
|
||||||
|
runs-on: self-hosted
|
||||||
|
timeout-minutes: 10
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Check cached ISO exists
|
||||||
|
run: |
|
||||||
|
iso=/data/smoke-cache/latest.iso
|
||||||
|
if [ ! -f "$iso" ]; then
|
||||||
|
echo "::error::$iso not found — trigger build-iso.yml first to populate the cache."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
echo "Will smoke: $iso"
|
||||||
|
ls -lh "$iso"
|
||||||
|
|
||||||
|
- name: Smoke-test ISO on Proxmox test host
|
||||||
|
env:
|
||||||
|
PVE_TEST_HOST: ${{ secrets.PVE_TEST_HOST }}
|
||||||
|
PVE_TEST_TOKEN: ${{ secrets.PVE_TEST_TOKEN }}
|
||||||
|
SMOKE_SHA: ${{ github.sha }}
|
||||||
|
run: ./scripts/smoke-vm.sh /data/smoke-cache/latest.iso
|
||||||
Loading…
Add table
Reference in a new issue