name: Stable SideStore build on: push: tags: - '[0-9]+.[0-9]+.[0-9]+' # example: 1.0.0 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: Change version to tag run: sed -e '/MARKETING_VERSION = .*/s/= .*/= ${{ github.ref_name }}/' -i '' Build.xcconfig - 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: Build SideStore run: make build | xcpretty && exit ${PIPESTATUS[0]} - name: Fakesign app run: make fakesign - name: Convert to IPA run: make ipa - name: Get current date id: date run: echo "date=$(date -u +'%c')" >> $GITHUB_OUTPUT - name: Get current date in AltStore date form id: date_altstore run: echo "date=$(date -u +'%Y-%m-%d')" >> $GITHUB_OUTPUT - name: Upload to new stable release uses: softprops/action-gh-release@v1 with: token: ${{ secrets.GITHUB_TOKEN }} name: ${{ steps.version.outputs.version }} tag_name: ${{ github.ref_name }} draft: true files: SideStore.ipa body: | ## Changelog - TODO ## Build Info Built at (UTC): `${{ steps.date.outputs.date }}` Built at (UTC date): `${{ steps.date_altstore.outputs.date }}` Commit SHA: `${{ github.sha }}` Version: `${{ steps.version.outputs.version }}` - name: Add version to IPA file name run: mv SideStore.ipa SideStore-${{ 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 *.dSYM Artifact uses: actions/upload-artifact@v3.1.0 with: name: SideStore-${{ steps.version.outputs.version }}-dSYM path: ./*.dSYM/