Skip to content

refactor(release): stage app into dedicated dir for create-dmg#9

Merged
rmarinsky merged 1 commit into
mainfrom
fix/dmg-staging-dir
May 15, 2026
Merged

refactor(release): stage app into dedicated dir for create-dmg#9
rmarinsky merged 1 commit into
mainfrom
fix/dmg-staging-dir

Conversation

@rmarinsky

@rmarinsky rmarinsky commented May 15, 2026

Copy link
Copy Markdown
Owner

Replaces post-export rm cleanup with a proper staging dir — copy only the .app into build/dmg-stage/, point create-dmg there. Same refactor going to Diduny and papuga.

Summary by CodeRabbit

  • Chores
    • Optimized the release workflow to ensure only the application package is included in the final DMG distribution, excluding unnecessary build artifacts for cleaner releases.

Review Change Stack

Cleaner than deleting export artifacts after the fact: copy only the
.app into a staging dir and point create-dmg at that. The DMG can no
longer accidentally pick up DistributionSummary.plist, ExportOptions.plist
or Packaging.log no matter what xcodebuild leaves behind in build/export/.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@rmarinsky rmarinsky added the release:skip No release for this PR label May 15, 2026
@coderabbitai

coderabbitai Bot commented May 15, 2026

Copy link
Copy Markdown

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: ed02a702-0b38-4c52-8501-b19db9b07148

📥 Commits

Reviewing files that changed from the base of the PR and between 6117945 and 137f1cd.

📒 Files selected for processing (1)
  • .github/workflows/release.yml

📝 Walkthrough

Walkthrough

The release workflow's DMG creation is refactored to use a staged directory approach. Explicit cleanup of export artifacts is removed, replaced by a new staging step that copies only the exported .app bundle into build/dmg-stage, and the create-dmg tool now reads from this stage directory instead of the full export directory.

Changes

DMG Staging Pipeline

Layer / File(s) Summary
DMG staging pipeline refactor
.github/workflows/release.yml
Explicit deletion of export artifacts (DistributionSummary.plist, ExportOptions.plist, Packaging.log) is removed. A new staging step creates build/dmg-stage, clears it, and copies only the .app bundle into it. The create-dmg invocation is updated to use the staged directory path instead of the full export directory.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Poem

📦 The DMG was cluttered, with artifacts galore,
Now staging cleans the clutter, keeping only the core,
One .app sits pristine, while build detritus stays,
A tidy workflow emerges, in cleaner ways! 🐰✨

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/dmg-staging-dir

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@rmarinsky rmarinsky merged commit b32c49f into main May 15, 2026
1 of 3 checks passed
@rmarinsky rmarinsky deleted the fix/dmg-staging-dir branch May 15, 2026 08:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release:skip No release for this PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant