diff --git a/.github/workflows/ios_release.yml b/.github/workflows/ios_release.yml index ebafdb24..b41fdcb3 100644 --- a/.github/workflows/ios_release.yml +++ b/.github/workflows/ios_release.yml @@ -1,4 +1,4 @@ -name: IOS release +name: iOS release on: workflow_dispatch: inputs: @@ -57,4 +57,70 @@ jobs: bundle-id: ${{ secrets.IOS_BUNDLE_ID }} issuer-id: ${{ secrets.IOS_APPSTORE_ISSUER_ID }} api-key-id: ${{ secrets.IOS_APPSTORE_KEY_ID }} + api-private-key: ${{ secrets.IOS_APPSTORE_PRIVATE_KEY }} + - name: Build archive + run: | + cd iosApp + + xcrun xcodebuild \ + -scheme "iosApp" \ + -configuration "Release" \ + -sdk "iphoneos" \ + -parallelizeTargets \ + -showBuildTimingSummary \ + -disableAutomaticPackageResolution \ + -derivedDataPath "${RUNNER_TEMP}/Build/DerivedData" \ + -archivePath "${RUNNER_TEMP}/Build/Archives/cpuinfo.xcarchive" \ + -resultBundlePath "${RUNNER_TEMP}/Build/Artifacts/cpuinfo.xcresult" \ + -destination "generic/platform=iOS" \ + DEVELOPMENT_TEAM="${{ secrets.IOS_APPSTORE_TEAM_ID }}" \ + PRODUCT_BUNDLE_IDENTIFIER="${{ secrets.IOS_BUNDLE_ID }}" \ + CODE_SIGN_STYLE="Manual" \ + PROVISIONING_PROFILE_SPECIFIER="${{ secrets.IOS_DEV_PROVISIONING_PROFILE_NAME }}" \ + archive + - name: "Generate ExportOptions.plist" + run: | + cat < ${RUNNER_TEMP}/Build/ExportOptions.plist + + + + + destination + export + method + app-store + signingStyle + manual + generateAppStoreInformation + + stripSwiftSymbols + + teamID + ${{ secrets.IOS_APPSTORE_TEAM_ID }} + uploadSymbols + + provisioningProfiles + + ${{ secrets.IOS_BUNDLE_ID }} + ${{ secrets.IOS_DIST_PROVISIONING_PROFILE_NAME }} + + + + EOF + - id: build_ipa + name: Build IPA + run: | + xcrun xcodebuild \ + -exportArchive \ + -exportOptionsPlist "${RUNNER_TEMP}/Build/ExportOptions.plist" \ + -archivePath "${RUNNER_TEMP}/Build/Archives/cpuinfo.xcarchive" \ + -exportPath "${RUNNER_TEMP}/Build/Archives/cpuinfo.xcarchive" \ + PRODUCT_BUNDLE_IDENTIFIER="${{ secrets.IOS_BUNDLE_ID }}" + + echo "ipa_path=${RUNNER_TEMP}/Build/Archives/cpuinfo.xcarchive/iosApp.ipa" >> $GITHUB_ENV + - uses: Apple-Actions/upload-testflight-build@v1 + with: + app-path: ${{ env.ipa_path }} + issuer-id: ${{ secrets.IOS_APPSTORE_ISSUER_ID }} + api-key-id: ${{ secrets.IOS_APPSTORE_KEY_ID }} api-private-key: ${{ secrets.IOS_APPSTORE_PRIVATE_KEY }} \ No newline at end of file