name: Pull Request SideStore build on: pull_request: jobs: build: name: Build and upload SideStore strategy: fail-fast: false matrix: include: - os: 'macos-12' version: '14.2' runs-on: ${{ matrix.os }} steps: - name: Checkout code uses: actions/checkout@v2 with: submodules: recursive - name: Install dependencies run: brew install ldid - name: Add PR suffix to version run: sed -e "/MARKETING_VERSION = .*/s/\$/-pr.${{ github.event.pull_request.number }}+$(git rev-parse --short ${COMMIT:-HEAD})/" -i '' Build.xcconfig env: COMMIT: ${{ github.event.pull_request.head.sha }} - name: Change default icon to alpha icon run: sed -e 's/= Neon/= Storm/' -i '' ./AltStore.xcodeproj/project.pbxproj - name: Enable unstable features run: make enable_unstable - name: Get version id: version run: echo "version=$(grep MARKETING_VERSION Build.xcconfig | sed -e "s/MARKETING_VERSION = //g")" >> $GITHUB_OUTPUT - name: Echo version run: echo "${{ steps.version.outputs.version }}" - name: Setup Xcode uses: maxim-lobanov/setup-xcode@v1.4.1 with: xcode-version: ${{ matrix.version }} - name: "[Normal] Build SideStore, fakesign app and convert to IPA" run: | make build | xcpretty make fakesign make ipa - name: Enable MDC run: make enable_mdc - name: "[MDC] Build SideStore, fakesign app and convert to IPA" run: | make clean make build DSYM_FOLDER=./MDC-dSYM | xcpretty make fakesign make ipa IPA_NAME=SideStore-MDC.ipa - name: Add version to IPA file name run: mv SideStore.ipa SideStore-${{ steps.version.outputs.version }}.ipa - name: Add version to MDC IPA file name run: mv SideStore-MDC.ipa SideStore-MDC-${{ steps.version.outputs.version }}.ipa - name: Upload SideStore.ipa Artifact uses: actions/upload-artifact@v3.1.0 with: name: SideStore-${{ steps.version.outputs.version }}.ipa path: SideStore-${{ steps.version.outputs.version }}.ipa - name: Upload SideStore-MDC.ipa Artifact uses: actions/upload-artifact@v3.1.0 with: name: SideStore-MDC-${{ steps.version.outputs.version }}.ipa path: SideStore-MDC-${{ steps.version.outputs.version }}.ipa - name: Upload dSYM Artifact uses: actions/upload-artifact@v3.1.0 with: name: SideStore-${{ steps.version.outputs.version }}-dSYM path: ./dSYM/* - name: Upload MDC-dSYM Artifact uses: actions/upload-artifact@v3.1.0 with: name: SideStore-MDC-${{ steps.version.outputs.version }}-dSYM path: ./MDC-dSYM/*