whooof/macOS Release Action
Complete release workflow for macOS applications - versioning, bundling, signing, and releasing
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Stale
- License
- None
Inputs
| name | description | required | default |
|---|---|---|---|
| release_type | Release type: patch | minor | major | custom | yes | patch |
| custom_version | Custom version (only for release_type=custom) | no | "" |
| tag_prefix | Tag prefix | no | v |
| update_cargo | Update Cargo.toml version | no | false |
| cargo_path | Path to Cargo.toml | no | Cargo.toml |
| update_plist | Update Info.plist version | no | false |
| plist_path | Path to Info.plist | no | Info.plist |
| update_xcodeproj | Update Xcode project version | no | false |
| xcodeproj_path | Path to .xcodeproj | no | "" |
| create_bundle | Create macOS .app bundle | no | false |
| app_name | Application name | no | "" |
| binary_path | Path to compiled binary | no | "" |
| icon_path | Path to .icns icon | no | "" |
| resources | Additional resources to copy | no | "" |
| bundle_output_dir | Output directory for bundle | no | "" |
| architecture | Architecture: arm64 | x86_64 | universal | no | arm64 |
| arm64_binary | Path to arm64 binary (for universal) | no | "" |
| x86_64_binary | Path to x86_64 binary (for universal) | no | "" |
| sign_bundle | Sign the bundle | no | true |
| sign_identity | Signing identity (empty = ad-hoc) | no | "" |
| entitlements | Path to entitlements.plist | no | "" |
| notarize | Notarize the bundle | no | false |
| apple_id | Apple ID for notarization | no | "" |
| team_id | Team ID for notarization | no | "" |
| app_password | App-specific password for notarization | no | "" |
| create_tag | Create git tag | no | true |
| push_tag | Push tag to remote | no | true |
| commit_files | Additional files to commit (auto-detected based on update_* inputs) | no | "" |
| create_release | Create GitHub Release | no | true |
| release_files | Files to attach to release | no | "" |
| release_name | Release name (default: {app_name} {tag}) | no | "" |
| draft | Create release as draft | no | false |
| generate_notes | Generate release notes | no | true |
Outputs
| name | description |
|---|---|
| version | New version |
| tag | New tag |
| previous_version | Previous version |
| bundle_path | Path to .app bundle |
| release_url | GitHub Release URL |
| is_prerelease | Is prerelease version |