Skip to content

Commit 48bb2c9

Browse files
committed
Update the Github CI for release
1 parent 619c5e8 commit 48bb2c9

File tree

3 files changed

+59
-56
lines changed

3 files changed

+59
-56
lines changed

.github/workflows/CD.yml

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
name: "SDWebImage CD"
2+
3+
on:
4+
push:
5+
# Pattern matched against refs/tags
6+
tags:
7+
- '*'
8+
9+
jobs:
10+
Release:
11+
name: Release XCFramework
12+
runs-on: macos-14
13+
env:
14+
CODESIGN_KEY_BASE64: "${{ secrets.CODESIGN_KEY_BASE64 }}"
15+
DEVELOPER_DIR: /Applications/Xcode_15.2.app
16+
strategy:
17+
fail-fast: true
18+
matrix:
19+
linkage: [dynamic, static]
20+
include:
21+
- linkage: dynamic
22+
MACH_O_TYPE: mh_dylib
23+
- linkage: static
24+
MACH_O_TYPE: staticlib
25+
steps:
26+
- name: Checkout
27+
uses: actions/checkout@v3
28+
29+
- name: Build XCFramework
30+
run: |
31+
set -o pipefail
32+
export MACH_O_TYPE="${{ matrix.MACH_O_TYPE }}"
33+
./Scripts/build-frameworks.sh
34+
rm -rf ~/Library/Developer/Xcode/DerivedData/
35+
36+
- name: Create XCFramework
37+
run: |
38+
set -o pipefail
39+
./Scripts/create-xcframework.sh
40+
./Scripts/sign-xcframework.sh
41+
42+
- name: Archive XCFramework
43+
run: |
44+
cd build
45+
zip -r SDWebImage-${{ matrix.linkage }}.xcframework.zip SDWebImage.xcframework
46+
cd ../
47+
rm -rf build
48+
49+
- uses: softprops/[email protected]
50+
env:
51+
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
52+
GITHUB_REPOSITORY: "${{ github.repository }}"
53+
with:
54+
files: "SDWebImage-${{ matrix.linkage }}.xcframework.zip"

.github/workflows/Release.yml

Lines changed: 0 additions & 52 deletions
This file was deleted.

Scripts/sign-xcframework.sh

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
#!/bin/bash
22

33
set -e
4+
set -x
45
set -o pipefail
56

67
if [ -z "$SRCROOT" ]
@@ -9,7 +10,7 @@ then
910
fi
1011

1112
# Self-sign XCFramework
12-
if [ -z CODESIGN_KEY_BASE64 ]; then
13+
if [ -z $CODESIGN_KEY_BASE64 ]; then
1314
echo "Ignore Codesign XCFramework! You must sign SDWebImage before shipping to App Store. See: https://developer.apple.com/support/third-party-SDK-requirements"
1415
exit 0
1516
fi
@@ -24,10 +25,10 @@ echo $CODESIGN_KEY_BASE64 | base64 -D > "$(PWD)/Certificate/${CODESIGN_IDENTIFY_
2425
security create-keychain -p "$KEYCHAIN_PASSWORD" ios.keychain
2526
security unlock-keychain -p "$KEYCHAIN_PASSWORD" $KEYCHAIN
2627

27-
security import "$(PWD)/Certificate/${CODESIGN_IDENTIFY_NAME}.cer" -k $KEYCHAIN -T /usr/bin/codesign -T /usr/bin/security
28-
security import "$(PWD)/Certificate/${CODESIGN_IDENTIFY_NAME}.p12" -k $KEYCHAIN -P "$KEY_PASSWORD" -T /usr/bin/codesign -T /usr/bin/security
28+
security import "$(PWD)/Certificate/${CODESIGN_IDENTIFY_NAME}.cer" -k $KEYCHAIN -T /usr/bin/codesign
29+
security import "$(PWD)/Certificate/${CODESIGN_IDENTIFY_NAME}.p12" -k $KEYCHAIN -P "$KEY_PASSWORD" -T /usr/bin/codesign
2930
security list-keychains -s ios.keychain
30-
security set-key-partition-list -S "apple-tool:,apple:" -k "$KEYCHAIN_PASSWORD" $KEYCHAIN
31+
security set-key-partition-list -S apple-tool:,apple: -s -k "$KEYCHAIN_PASSWORD" $KEYCHAIN
3132

3233
echo "Codesign XCFramework"
3334
/usr/bin/codesign --force --timestamp -v --sign "SDWebImage Signing Certificate" "${SRCROOT}/build/SDWebImage.xcframework"

0 commit comments

Comments
 (0)