1+ name : ios-IJKMediaFramework
2+
3+ on :
4+ # push:
5+ # branches: [master]
6+ # pull_request:
7+ # branches: [master]
8+ workflow_dispatch :
9+ inputs :
10+ beta :
11+ type : boolean
12+ description : publish beta edition
13+ default : true
14+ required : false
15+ jobs :
16+ build :
17+ name : ijkplayer
18+ runs-on : macos-14
19+
20+ steps :
21+ - name : Checkout
22+ uses : actions/checkout@v3
23+ with :
24+ submodules : recursive
25+ - name : Prepare Beta Version
26+ if : ${{ inputs.beta == true }}
27+ run : |
28+ grep -m 1 VERSION_NAME= version.sh | awk -F = '{printf "VERSION=%s",$2}' | xargs > constants.env
29+ echo "RELEAE_DATE=$(TZ=UTC-8 date +'%y%m%d%H%M%S')" >> constants.env
30+ echo "TAG=k"$(grep "VERSION" constants.env | cut -d'=' -f2)"-beta-"$(grep "RELEAE_DATE" constants.env | cut -d'=' -f2) >> constants.env
31+ cat constants.env
32+ - name : Prepare Normal Version
33+ if : ${{ inputs.beta == false }}
34+ run : |
35+ grep -m 1 VERSION_NAME= version.sh | awk -F = '{printf "TAG=k%s",$2}' | xargs > constants.env
36+ cat constants.env
37+ - name : Export Env
38+ uses : cardinalby/export-env-action@v2
39+ with :
40+ envFile : ' constants.env'
41+ - name : Download Pre Compiled Dependencies
42+ run : cd ios && ./install-ffmpeg.sh
43+ - name : Build iOS Framework
44+ run : cd ios && ./build-framework.sh
45+ - name : Make xcframework
46+ run : cd ios/xcframewrok && ./make-xcframework.sh
47+ - name : Make podspec
48+ run : cd ios/xcframewrok && ./make-podspec.sh "${{ env.TAG }}"
49+ - name : Make Distribution Resources
50+ run : |
51+ mkdir dist
52+ cp NEWS.md dist
53+ cp README.md dist
54+ cp COPYING.LGPLv3 dist/LICENSE
55+ cp -pPR ios/xcframewrok/IJKMediaFramework.xcframework dist
56+ cd dist
57+ zip -ryq IJKMediaFramework.zip ./*
58+ - name : Download Pre Compiled Dependencies
59+ run : cd android && ./install-ffmpeg.sh
60+ - name : Build android arr
61+ run : cd android && ./build-aar.sh
62+ - name : Upload Release Asset
63+ env :
64+ GH_TOKEN : ${{ github.token }}
65+ run : |
66+ branch=$(git branch --show-current)
67+ gh release create ${{ env.TAG }} --target $branch -t "👏👏 ijkplayer ${{ env.TAG }}" dist/IJKMediaFramework.zip ios/xcframewrok/IJKMediaFramework.spec.json android/ijkplayer/ijkplayer-cmake/build/outputs/aar/*.*
0 commit comments