diff --git a/.gitea/workflows/queuecube-profile-repair.yml b/.gitea/workflows/queuecube-profile-repair.yml new file mode 100644 index 0000000..135ca1b --- /dev/null +++ b/.gitea/workflows/queuecube-profile-repair.yml @@ -0,0 +1,47 @@ +name: QueueCube profile repair + +on: + push: + branches: ["codex/queuecube-share-signing-repair-20261020"] + +jobs: + repair: + runs-on: macos-arm64 + steps: + - name: Checkout operational branch + uses: actions/checkout@v4 + - name: Setup existing Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: "3.1.7" + bundler-cache: true + - name: Verify protected inputs + run: | + set -eu + test "$(hostname)" = "monsoon.local" + test "$GITHUB_REPOSITORY" = "buzzert/QueueCube" + test "$GITHUB_REF" = "refs/heads/codex/queuecube-share-signing-repair-20261020" + echo "a96bc21c448b6a52f075cc209a597c1f71af4eb509982847972f029f86468db5 /var/lib/act_runner/queuecube-share-repair-20261020/match_profiles.rb" | shasum -a 256 -c + echo "dbcf6515d283070a69d35e506ce716237ad585f6b4f9315a64637cde368b2d65 /var/lib/act_runner/queuecube-share-repair-20261020/rerun_existing.py" | shasum -a 256 -c + echo "247f13171894f93fc9f46105d9a58a66c6bdac85c3a225327c0be1f34f6a16ef /var/lib/act_runner/queuecube-share-repair-20261020/profiles-validation.json" | shasum -a 256 -c + echo "949cde1065ca1e5aa0e8cf137217e32308c8c5d0d12c561b44ea7cc9646bd460 /var/lib/act_runner/queuecube-share-repair-20261020/private/inputs/app.mobileprovision" | shasum -a 256 -c + echo "66b20cab87b9538debd304fa6d7bb5df9e729257dcb164d5fa77d1f6bced8d0c /var/lib/act_runner/queuecube-share-repair-20261020/private/inputs/share.mobileprovision" | shasum -a 256 -c + - name: Persist two profiles and retry the existing release + env: + MATCH_PASSWORD: ${{ secrets.MATCH_PASSWORD }} + MATCH_GIT_URL: ${{ secrets.MATCH_GIT_URL }} + MATCH_GIT_BASIC_AUTHORIZATION: ${{ secrets.MATCH_GIT_BASIC_AUTHORIZATION }} + GITEA_TOKEN: ${{ github.token }} + run: | + set -eu + export PATH="/Users/runner/hostedtoolcache/Ruby/3.1.7/arm64/bin:${PATH}" + bundle exec ruby /var/lib/act_runner/queuecube-share-repair-20261020/match_profiles.rb stage + bundle exec ruby /var/lib/act_runner/queuecube-share-repair-20261020/match_profiles.rb publish + python3 /var/lib/act_runner/queuecube-share-repair-20261020/rerun_existing.py --execute + - name: Report sanitized receipts + if: always() + run: | + for name in match-publish.json rerun-dispatch-receipt.json rerun-state-after-post.json; do + file="/var/lib/act_runner/queuecube-share-repair-20261020/$name" + if test -f "$file"; then cat "$file"; fi + done