cli: package_build.php - build release ZIP/tar.gz with checksums #58

Closed
opened 2026-05-23 22:53:58 +00:00 by jmiller · 1 comment
Owner

Summary

Extract the package building logic from auto-release.yml (lines 617-823) into a standalone CLI tool.

What it does

  • Resolves extension element name and TYPE_PREFIX
  • Handles package vs standard extension (multi-extension packages with sub-ZIPs)
  • Creates ZIP and tar.gz with proper excludes
  • Calculates SHA-256 checksums
  • Uploads assets to Gitea release
  • Updates updates.xml with download URLs and checksums

CLI interface

php cli/package_build.php   --path . --version "$VERSION"   --release-tag "$TAG" --release-id "$ID"   --gitea-url "$URL" --org "$ORG" --repo "$REPO"   --token "$TOKEN" --update-updates-xml --output-summary

Priority

Very High complexity, very high reuse across all repos.

## Summary Extract the package building logic from auto-release.yml (lines 617-823) into a standalone CLI tool. ## What it does - Resolves extension element name and TYPE_PREFIX - Handles package vs standard extension (multi-extension packages with sub-ZIPs) - Creates ZIP and tar.gz with proper excludes - Calculates SHA-256 checksums - Uploads assets to Gitea release - Updates updates.xml with download URLs and checksums ## CLI interface ```bash php cli/package_build.php --path . --version "$VERSION" --release-tag "$TAG" --release-id "$ID" --gitea-url "$URL" --org "$ORG" --repo "$REPO" --token "$TOKEN" --update-updates-xml --output-summary ``` ## Priority Very High complexity, very high reuse across all repos.
Author
Owner

Already implemented

Exists as cli/package_build.php (288 lines). Handles standard and package-type extensions, ZIP/tar.gz creation, SHA-256, and asset upload.

No new work needed — closing as already resolved.

## Already implemented Exists as `cli/package_build.php` (288 lines). Handles standard and package-type extensions, ZIP/tar.gz creation, SHA-256, and asset upload. No new work needed — closing as already resolved.
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: MokoConsulting/moko-platform#58