mirror of
https://github.com/sudosylabs/vnidrop.git
synced 2026-08-05 02:29:55 +02:00
build(apple): publish prebuilt core bundle in release assets
Bundle the compiled Apple core — vnidrop.xcframework plus the generated UniFFI bindings (Vnidrop.swift, a source file that lives outside the xcframework) — into VnidropCore-<version>.zip with a checksum, and attach it to the GitHub Release. This lets a consumer (e.g. Xcode Cloud, later) use the prebuilt core instead of installing Rust and running build-core.sh. No duplicate builds: the release job compiles the core once (build-apple-dmg -> build-core.sh release), links it into the signed DMG, and package-core.sh only zips that same output. Package.swift is unchanged (still binaryTarget(path:)). - apple/scripts/package-core.sh: stage xcframework + Vnidrop.swift and zip them with a sha256sum/shasum-compatible checksum sidecar (macOS-native). - Makefile: package-apple-core target. - apple-release.yml: run package-apple-core after the DMG and upload the zip + checksum in the macOS artifact. - assemble-release.sh: verify the core zip's checksum, copy it into the final assets, and list it in release-manifest.json + SHA256SUMS (+ fixture update).
This commit is contained in:
@@ -25,6 +25,7 @@ printf 'deb\n' > "$input_dir/deb/vnidrop_${version}-1_amd64.deb"
|
||||
printf 'rpm\n' > "$input_dir/rpm/vnidrop-${version}-1.x86_64.rpm"
|
||||
printf 'dmg\n' > "$input_dir/macos/VniDrop-${version}.dmg"
|
||||
printf '<url>VniDrop-%s.dmg</url>\n' "$version" > "$input_dir/macos/appcast.xml"
|
||||
printf 'core\n' > "$input_dir/macos/VnidropCore-${version}.zip"
|
||||
printf 'apk\n' > "$input_dir/play/VniDrop-${version}-${android_code}-play-universal.apk"
|
||||
printf 'msix\n' > "$input_dir/windows/VniDrop_${version}_x64.msix"
|
||||
printf 'msixupload\n' > "$input_dir/windows/VniDrop_${version}_x64.msixupload"
|
||||
@@ -68,6 +69,11 @@ jq -n \
|
||||
sha256sum "vnidrop-${version}-1.x86_64.rpm" \
|
||||
> "vnidrop-${version}-1.x86_64.rpm.sha256"
|
||||
)
|
||||
(
|
||||
cd "$input_dir/macos"
|
||||
sha256sum "VnidropCore-${version}.zip" \
|
||||
> "VnidropCore-${version}.zip.sha256"
|
||||
)
|
||||
(
|
||||
cd "$input_dir/play"
|
||||
sha256sum \
|
||||
@@ -94,6 +100,7 @@ expected_public_files=(
|
||||
"SHA256SUMS"
|
||||
"VniDrop-${version}-${android_code}-play-universal.apk"
|
||||
"VniDrop-${version}.dmg"
|
||||
"VnidropCore-${version}.zip"
|
||||
"appcast.xml"
|
||||
"release-manifest.json"
|
||||
"vnidrop-${version}-1.x86_64.rpm"
|
||||
|
||||
Reference in New Issue
Block a user