-
Notifications
You must be signed in to change notification settings - Fork 390
feat(ci): add macOS code signing and notarization #613
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
stdrc
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Rest LGTM
| from kimi_cli.utils.pyinstaller import datas, hiddenimports | ||
|
|
||
| # Read codesign identity from environment variable (for macOS signing in CI) | ||
| codesign_identity = os.environ.get("APPLE_SIGNING_IDENTITY", None) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| codesign_identity = os.environ.get("APPLE_SIGNING_IDENTITY", None) | |
| codesign_identity = os.getenv("APPLE_SIGNING_IDENTITY") |
| # Build with signing on macOS (APPLE_SIGNING_IDENTITY is read by kimi.spec) | ||
| - name: Build standalone binary (macOS with signing) | ||
| if: runner.os == 'macOS' | ||
| run: make build-bin | ||
|
|
||
| # Build without signing on other platforms | ||
| - name: Build standalone binary | ||
| if: runner.os != 'macOS' | ||
| run: make build-bin |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems no need to have two different step?
|
I'll merge this PR after we setting the secrets |
Related Issue
No related issue
Description
Add macOS code signing and notarization support to the release workflow. This ensures that macOS binaries distributed via GitHub releases are properly signed and notarized, eliminating Gatekeeper warnings for users.
Changes
New GitHub Action (
.github/actions/macos-code-sign/action.yml)Updated Release Workflow (
.github/workflows/release-kimi-cli.yml)Updated PyInstaller Spec (
kimi.spec)APPLE_SIGNING_IDENTITYfrom environment variableRequired Secrets
The following secrets need to be configured in the repository:
APPLE_CERTIFICATE_P12APPLE_CERTIFICATE_PASSWORDAPPLE_NOTARIZATION_KEY_P8APPLE_NOTARIZATION_KEY_IDAPPLE_NOTARIZATION_ISSUER_IDBenefits
Checklist
make gen-changelogto update the changelog.make gen-docsto update the user documentation.