You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add build pipeline for both signed and unsigned builds. (#29)
* Initial plan
* Add comprehensive DMG build and signing pipeline with attribution
Co-authored-by: Rohithzr <1592554+Rohithzr@users.noreply.github.com>
* Update pipeline to build on current working branch for testing
Co-authored-by: Rohithzr <1592554+Rohithzr@users.noreply.github.com>
* Add unsigned DMG build pipeline for testing without certificates
Co-authored-by: Rohithzr <1592554+Rohithzr@users.noreply.github.com>
* add team id
* Fix missing backslash in xcodebuild archive command
Co-authored-by: Rohithzr <1592554+Rohithzr@users.noreply.github.com>
* Use DEVELOPMENT_TEAM from repository secrets instead of hardcoded value
Co-authored-by: Rohithzr <1592554+Rohithzr@users.noreply.github.com>
* fix pipeline manually
* fix mount perms
* fix mount perms in signed build file
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Rohithzr <1592554+Rohithzr@users.noreply.github.com>
1. Export your Developer ID Application certificate from Keychain Access as a .p12 file
46
+
2. Convert to base64 and add as `BUILD_CERTIFICATE_BASE64` secret
47
+
3. Add the certificate password as `P12_PASSWORD` secret
48
+
49
+
#### Unsigned Builds
50
+
51
+
If you don't have code signing certificates, the workflow will automatically create an unsigned development build. These builds can still be used but may require users to manually allow them in System Preferences.
52
+
53
+
## build-unsigned-dmg.yml
54
+
55
+
This workflow specifically builds unsigned development versions of the TrackWeight app without requiring any certificates.
56
+
57
+
### Features
58
+
59
+
-**No Certificate Requirements**: Builds completely without code signing
60
+
-**Development Build**: Creates unsigned development builds that work on any Mac
61
+
-**Same DMG Features**: Includes all the same DMG features as the signed version
62
+
-**Clear User Instructions**: Includes instructions for running unsigned apps
63
+
-**Attribution**: Maintains proper credits to the original repository
64
+
65
+
### Triggers
66
+
67
+
The workflow runs on:
68
+
- Pushes to main branches and the current working branch
69
+
- Manual workflow dispatch
70
+
71
+
### Benefits
72
+
73
+
-**Easy Testing**: Perfect for testing builds without setting up certificates
74
+
-**No Configuration**: Works immediately without any secrets or setup
75
+
-**User-Friendly**: Includes clear instructions for users on how to run unsigned apps
76
+
77
+
## Choosing the Right Workflow
78
+
79
+
### Use `build-and-sign-dmg.yml` when:
80
+
- You have Apple Developer certificates
81
+
- You want to distribute signed, trusted builds
82
+
- You're creating official releases
83
+
84
+
### Use `build-unsigned-dmg.yml` when:
85
+
- You don't have certificates
86
+
- You want to test builds quickly
87
+
- You're developing or experimenting
88
+
- You need a simple build process
89
+
90
+
If no signing certificates are provided, the workflow will create an unsigned development build that can still be distributed and run locally (users may need to allow it in System Preferences > Security & Privacy).
91
+
92
+
### Usage
93
+
94
+
#### Manual Trigger
95
+
1. Go to Actions tab in your GitHub repository
96
+
2. Select "Build and Sign DMG" workflow
97
+
3. Click "Run workflow"
98
+
4. Optionally check "Create a GitHub release" to create a release
99
+
100
+
#### Automatic Trigger
101
+
1. Create a git tag: `git tag v1.0.0`
102
+
2. Push the tag: `git push origin v1.0.0`
103
+
3. The workflow will automatically build and create a release
104
+
105
+
### Output
106
+
107
+
The workflow produces:
108
+
-**DMG file**: TrackWeight-{version}.dmg containing the app and attribution
109
+
-**GitHub Release**: (if triggered by tag or manual release creation)
110
+
-**Artifacts**: DMG file uploaded as GitHub Actions artifact
111
+
112
+
### Attribution
113
+
114
+
This workflow ensures proper attribution to the original TrackWeight repository:
115
+
- README.txt file included in DMG with credits
116
+
- Release notes include attribution
117
+
- Links to original repository: https://github.com/KrishKrosh/TrackWeight
118
+
119
+
## update-homebrew.yml
120
+
121
+
This workflow automatically updates the Homebrew cask when a new release is published.
122
+
123
+
### Features
124
+
- Updates version in Homebrew tap repository
125
+
- Automatically triggered on release publication
126
+
- Can be manually triggered with version input
127
+
128
+
For more information about the original TrackWeight project, visit: https://github.com/KrishKrosh/TrackWeight
0 commit comments