-
Notifications
You must be signed in to change notification settings - Fork 1
108 lines (86 loc) · 3.71 KB
/
release.yml
File metadata and controls
108 lines (86 loc) · 3.71 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
name: Release
on:
push:
tags:
- 'v*'
permissions:
contents: write
jobs:
build-and-release:
runs-on: macos-15
timeout-minutes: 30
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Select Xcode
run: sudo xcode-select -s /Applications/Xcode.app
- name: Show Xcode version
run: xcodebuild -version
- name: Extract version from tag
id: version
run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT
- name: Build (unsigned archive)
run: |
xcodebuild \
-project CodexBarMenuBar.xcodeproj \
-scheme CodexBarMenuBar \
-configuration Release \
-archivePath build/CodexBarMenuBar.xcarchive \
CODE_SIGN_IDENTITY="-" \
CODE_SIGNING_REQUIRED=NO \
CODE_SIGNING_ALLOWED=NO \
MARKETING_VERSION=${{ steps.version.outputs.VERSION }} \
archive
- name: Export .app from archive
run: |
mkdir -p build/export
cp -R build/CodexBarMenuBar.xcarchive/Products/Applications/CodexBarMenuBar.app build/export/
- name: Zip the .app
run: |
cd build/export
/usr/bin/ditto -c -k --keepParent CodexBarMenuBar.app ../CodexBarMenuBar-v${{ steps.version.outputs.VERSION }}.zip
- name: Generate SHA256 checksum
run: |
cd build
shasum -a 256 CodexBarMenuBar-v${{ steps.version.outputs.VERSION }}.zip > CodexBarMenuBar-v${{ steps.version.outputs.VERSION }}.zip.sha256
cat CodexBarMenuBar-v${{ steps.version.outputs.VERSION }}.zip.sha256
- name: Create GitHub Release
uses: softprops/action-gh-release@v3
with:
name: CodexBarMenuBar v${{ steps.version.outputs.VERSION }}
generate_release_notes: true
body: |
## Compatibility
- **CodexBar CLI**: v${{ steps.version.outputs.VERSION }} (must match)
- **macOS**: 15.0+
## Installation
### Homebrew (recommended)
```bash
brew install --cask Lobobodev/tap/codexbarmenubar
```
### Direct download
```bash
curl -L -o CodexBarMenuBar.zip https://github.com/Lobobodev/CodexBarMenuBar/releases/download/v${{ steps.version.outputs.VERSION }}/CodexBarMenuBar-v${{ steps.version.outputs.VERSION }}.zip
unzip CodexBarMenuBar.zip -d /Applications/
open /Applications/CodexBarMenuBar.app
```
Or manually: download `CodexBarMenuBar-v${{ steps.version.outputs.VERSION }}.zip` from the assets, unzip, drag to `/Applications`. App is signed and notarized, double-click to open with no warnings.
---
## 兼容性
- **CodexBar CLI**: v${{ steps.version.outputs.VERSION }}(必须匹配)
- **macOS**: 15.0+
## 安装
### Homebrew(推荐)
```bash
brew install --cask Lobobodev/tap/codexbarmenubar
```
### 直接下载
```bash
curl -L -o CodexBarMenuBar.zip https://github.com/Lobobodev/CodexBarMenuBar/releases/download/v${{ steps.version.outputs.VERSION }}/CodexBarMenuBar-v${{ steps.version.outputs.VERSION }}.zip
unzip CodexBarMenuBar.zip -d /Applications/
open /Applications/CodexBarMenuBar.app
```
或手动下载下方的 zip 文件,解压拖到 `/Applications`。应用已签名 + 公证,双击直接打开无警告。
files: |
build/CodexBarMenuBar-v${{ steps.version.outputs.VERSION }}.zip
build/CodexBarMenuBar-v${{ steps.version.outputs.VERSION }}.zip.sha256