diff --git a/.gitea/workflows/build-kernel.yml b/.gitea/workflows/build-kernel.yml index 18edaa5..809a2f6 100644 --- a/.gitea/workflows/build-kernel.yml +++ b/.gitea/workflows/build-kernel.yml @@ -100,8 +100,10 @@ jobs: if-no-files-found: error # Release flow only: merges all built modules into one modules/ folder, wraps it - # in a single repo-named top folder alongside selftest.sh, zips it and attaches - # it to the Gitea release for the pushed tag. Skipped entirely on pull requests. + # in a single repo-named top folder alongside the helper scripts (selftest.sh, + # launch.sh) and the iecpoc Python frontend (so launch.sh can pip-install it on + # the Pi), zips it and attaches it to the Gitea release for the pushed tag. + # Skipped entirely on pull requests. release: needs: build if: startsWith(github.ref, 'refs/tags/') @@ -123,7 +125,14 @@ jobs: root="package/$repo" mkdir -p "$root" cp -r dist/modules "$root"/ # modules/iec_listener_.ko - cp kernel/selftest.sh "$root"/ # selftest.sh only at the package root + cp kernel/selftest.sh "$root"/ # one-shot hardware self-test + cp launch.sh "$root"/ # load module -> run frontend -> unload + # iecpoc Python frontend + its packaging metadata. launch.sh pip-installs + # this on the Pi; the build reads pyproject.toml's readme = "README.md", + # so README.md must travel with it. __pycache__ is stripped to stay clean. + cp pyproject.toml README.md "$root"/ + cp -r iecpoc "$root"/ + find "$root/iecpoc" -name __pycache__ -type d -prune -exec rm -rf {} + (cd package && zip -r "../${repo}-${{ github.ref_name }}.zip" "$repo") - name: Publish to Gitea release