The releases carried the wheel and the sdist; the only zip was GitHub's source archive of the whole repository (tests, CI, tools). A Windows user just wants to extract a folder and double-click start.bat. - scripts/build_release_zip.py builds simtrace-analyser-<version>.zip with a single top-level directory: the two Python packages, the PWA runtime files (frontend/tests and package.json stay out), the four launchers, the udev rule, the READMEs and the screenshot. The .bat entries are written with CRLF line endings (cmd.exe mishandles bare-LF labels/goto), the .sh files keep their executable bit; LICENSE is included automatically once the repo has one. - tests/test_release_zip.py pins the archive shape, the exclusions, the sw.js PRECACHE drift (every precached asset must travel), the CRLF/LF line endings and start.sh's mode. - the release workflow builds the zip, checks it carries start.bat and the PWA, uploads it with the run and attaches it to the release. - READMEs (EN/RU) and the release-notes template offer the zip as the Windows-friendly option; version 2.7.12, PWA cache v94. Verified: the built zip (34 entries, 658 KB compressed) extracted and started on Linux serves the same index.html; 553 Python + 80 Node tests.
This commit is contained in:
1 parent
b19abbd514
commit
e00a96b918
11 files changed
+280
-10
No files matched your search
@@ -49,6 +49,22 @@ jobs:
|
||||
- name: Build the sdist and the wheel
|
||||
run: python -m build --sdist --wheel
|
||||
|
||||
- name: Build the runtime zip
|
||||
run: python scripts/build_release_zip.py --output dist
|
||||
|
||||
- name: The runtime zip is complete
|
||||
run: |
|
||||
python - <<'PY'
|
||||
import glob
|
||||
import zipfile
|
||||
archive = glob.glob('dist/*.zip')[0]
|
||||
names = zipfile.ZipFile(archive).namelist()
|
||||
for required in ('start.bat', 'frontend/index.html'):
|
||||
assert any(n.endswith('/' + required) for n in names), \
|
||||
'%s is missing from %s' % (required, archive)
|
||||
print('%s: %d entries, launchers and PWA bundled' % (archive, len(names)))
|
||||
PY
|
||||
|
||||
- name: The wheel bundles the PWA
|
||||
run: |
|
||||
python - <<'PY'
|
||||
@@ -96,4 +112,4 @@ jobs:
|
||||
--title "$GITHUB_REF_NAME" \
|
||||
--generate-notes \
|
||||
--notes-file .github/release-notes.md \
|
||||
dist/*.whl dist/*.tar.gz 70-simtrace2-pysniff.rules
|
||||
dist/*.whl dist/*.tar.gz dist/*.zip 70-simtrace2-pysniff.rules
|
||||
Reference in new issue
Block a user