@@ -144,12 +144,116 @@ jobs:
144144 - name : Install Dependencies
145145 if : ${{ matrix.enabled }}
146146 run : |
147- curl -L -f -o dist.zip "${{ secrets.VITE_DIST_URL }}2.8.8 .zip"
147+ curl -L -f -o dist.zip "${{ secrets.VITE_DIST_URL }}${{ env.VERSION }} .zip"
148148 unzip -o dist.zip -d dist
149149
150- - name : Build the app
150+ - name : import Apple Developer Certificate
151+ if : ${{ matrix.enabled && matrix.platform == 'macos-latest'}}
152+ env :
153+ APPLE_CERTIFICATE : ${{ secrets.APPLE_CERTIFICATE }}
154+ APPLE_CERTIFICATE_PASSWORD : ${{ secrets.APPLE_CERTIFICATE_PASSWORD }}
155+ KEYCHAIN_PASSWORD : ${{ secrets.KEYCHAIN_PASSWORD }}
151156 run : |
152- VERSION=$(node -p "require('./package.json').version")
153- echo "VERSION=$VERSION" >> $GITHUB_ENV
154- echo "Current version: $VERSION"
155- shell : bash
157+ echo $APPLE_CERTIFICATE | base64 --decode > certificate.p12
158+ security create-keychain -p "$KEYCHAIN_PASSWORD" build.keychain
159+ security default-keychain -s build.keychain
160+ security unlock-keychain -p "$KEYCHAIN_PASSWORD" build.keychain
161+ security set-keychain-settings -t 3600 -u build.keychain
162+ security import certificate.p12 -k build.keychain -P "$APPLE_CERTIFICATE_PASSWORD" -T /usr/bin/codesign
163+ security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k "$KEYCHAIN_PASSWORD" build.keychain
164+ security find-identity -v -p codesigning build.keychain
165+
166+ - name : verify certificate
167+ if : ${{ matrix.enabled && matrix.platform == 'macos-latest'}}
168+ run : |
169+ CERT_INFO=$(security find-identity -v -p codesigning build.keychain | grep "Developer ID Application")
170+ CERT_ID=$(echo "$CERT_INFO" | awk -F'"' '{print $2}')
171+ echo "CERT_ID=$CERT_ID" >> $GITHUB_ENV
172+ echo "Certificate imported."
173+
174+ - uses : tauri-apps/tauri-action@v0
175+ if : ${{ matrix.enabled }}
176+ env :
177+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
178+ APPLE_ID : ${{ secrets.APPLE_ID }}
179+ APPLE_PASSWORD : ${{ secrets.APPLE_PASSWORD }}
180+ APPLE_TEAM_ID : ${{ secrets.APPLE_TEAM_ID }}
181+ APPLE_CERTIFICATE : ${{ secrets.APPLE_CERTIFICATE }}
182+ APPLE_CERTIFICATE_PASSWORD : ${{ secrets.APPLE_CERTIFICATE_PASSWORD }}
183+ APPLE_SIGNING_IDENTITY : ${{ env.CERT_ID }}
184+ TAURI_SIGNING_PRIVATE_KEY : ${{ secrets.TAURI_PRIVATE_KEY }}
185+ TAURI_SIGNING_PRIVATE_KEY_PASSWORD : ${{ secrets.TAURI_KEY_PASSWORD }}
186+ VITE_GITHUB_DOMAIN : ${{ secrets.VITE_GITHUB_DOMAIN }}
187+ VITE_PAYJS_DOMAIN : ${{ secrets.VITE_PAYJS_DOMAIN }}
188+ VITE_PAYJS_MCHID : ${{ secrets.VITE_PAYJS_MCHID }}
189+ VITE_PAYJS_SIGN_KEY : ${{ secrets.VITE_PAYJS_SIGN_KEY }}
190+ VITE_YUNPAY_DOMAIN : ${{ secrets.VITE_YUNPAY_DOMAIN }}
191+ VITE_YUNPAY_MCHID : ${{ secrets.VITE_YUNPAY_MCHID }}
192+ VITE_YUNPAY_SIGN_KEY : ${{ secrets.VITE_YUNPAY_SIGN_KEY }}
193+ VITE_ZPAY_DOMAIN : ${{ secrets.VITE_ZPAY_DOMAIN }}
194+ VITE_ZPAY_MCHID : ${{ secrets.VITE_ZPAY_MCHID }}
195+ VITE_ZPAY_SIGN_KEY : ${{ secrets.VITE_ZPAY_SIGN_KEY }}
196+ VITE_GTAG_ID : ${{ secrets.VITE_GTAG_ID }}
197+ VITE_UPSTREAM_USER : ${{ secrets.VITE_UPSTREAM_USER }}
198+ VITE_WEB_BRANCH : ${{ secrets.VITE_WEB_BRANCH }}
199+ VITE_DEV_BRANCH : ${{ secrets.VITE_DEV_BRANCH }}
200+ VITE_MAIN_BRANCH : ${{ secrets.VITE_MAIN_BRANCH }}
201+ VITE_FILE_LIMIT_SIZE : ${{ secrets.VITE_FILE_LIMIT_SIZE }}
202+ VITE_FILE_LIMIT_NUMBER : ${{ secrets.VITE_FILE_LIMIT_NUMBER }}
203+ VITE_LOCAL_RHEXE : ${{ secrets.VITE_LOCAL_RHEXE }}
204+ with :
205+ tagName : ' PakePlus-v__VERSION__'
206+ releaseName : ' PakePlus v__VERSION__'
207+ body_path : ./Note.md
208+ releaseDraft : true
209+ prerelease : false
210+ args : ${{ matrix.args }}
211+
212+ deploy-pages :
213+ runs-on : ubuntu-latest
214+ steps :
215+ - name : Checkout
216+ uses : actions/checkout@v4
217+ with :
218+ fetch-depth : 0
219+
220+ - uses : pnpm/action-setup@v3
221+ with :
222+ version : 9
223+
224+ - name : Setup Node
225+ uses : actions/setup-node@v4
226+ with :
227+ node-version : 20
228+ cache : pnpm
229+
230+ - name : Setup Pages
231+ uses : actions/configure-pages@v4
232+
233+ - name : Install dependencies
234+ run : pnpm install
235+
236+ - name : GitPress Config
237+ run : node ./scripts/gitpress.cjs gitBase
238+
239+ - name : Build with VitePress
240+ run : pnpm run docs:build
241+
242+ - name : Copy Static
243+ run : node ./scripts/gitpress.cjs copyStatic
244+
245+ - name : Upload artifact
246+ uses : actions/upload-pages-artifact@v3
247+ with :
248+ path : docs/dist
249+
250+ deploy :
251+ environment :
252+ name : github-pages
253+ url : ${{ steps.deployment.outputs.page_url }}
254+ needs : deploy-pages
255+ runs-on : ubuntu-latest
256+ steps :
257+ - name : Deploy to GitHub Pages
258+ id : deployment
259+ uses : actions/deploy-pages@v4
0 commit comments