Prepare Proxy Release #8
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Prepare Proxy Release | |
| on: | |
| workflow_dispatch: | |
| env: | |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| jobs: | |
| prepare-release: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 15 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Detect SDK versions | |
| id: detect | |
| run: ./scripts/detect_sdk_versions.sh | |
| - name: Display version summary | |
| run: | | |
| cat >> $GITHUB_STEP_SUMMARY << 'EOF' | |
| ## 📦 Proxy Release Summary | |
| | Component | Current | New | | |
| |-----------|---------|-----| | |
| | **Proxy** | - | **${{ steps.detect.outputs.proxy_version }}** | | |
| | **iOS SDK** | - | ${{ steps.detect.outputs.ios_version }} | | |
| | **Android SDK** | - | ${{ steps.detect.outputs.android_version }} | | |
| **Bump Type:** `${{ steps.detect.outputs.bump_type }}` | |
| --- | |
| Preparing release PR... | |
| EOF | |
| - name: Prepare release | |
| run: ./scripts/prep_proxy_release.sh | |
| - name: Create Pull Request | |
| id: cpr | |
| uses: peter-evans/create-pull-request@v6 | |
| with: | |
| token: ${{ secrets.GITHUB_TOKEN }} | |
| commit-message: | | |
| Release ${{ steps.detect.outputs.proxy_version }} | |
| - Updated iOS SDK to ${{ steps.detect.outputs.ios_version }} | |
| - Updated Android SDK to ${{ steps.detect.outputs.android_version }} | |
| branch: proxy-${{ steps.detect.outputs.proxy_version }} | |
| delete-branch: true | |
| title: Release ${{ steps.detect.outputs.proxy_version }} | |
| body: | | |
| ## Proxy Release ${{ steps.detect.outputs.proxy_version }} | |
| Automated release PR for proxy version bump. | |
| ### SDK Updates | |
| - iOS SDK: ${{ steps.detect.outputs.ios_version }} | |
| - Android SDK: ${{ steps.detect.outputs.android_version }} | |
| --- | |
| 🤖 Generated by prep-proxy-release workflow | |
| labels: | | |
| release | |
| automated pr | |
| - name: Update summary with PR link | |
| if: steps.cpr.outputs.pull-request-number | |
| run: | | |
| cat >> $GITHUB_STEP_SUMMARY << 'EOF' | |
| ## ✅ Release PR Created | |
| **PR:** [#${{ steps.cpr.outputs.pull-request-number }}](${{ steps.cpr.outputs.pull-request-url }}) | |
| ### Next Steps | |
| 1. Review the PR | |
| 2. Merge when ready | |
| 3. Tag will be created automatically | |
| 4. Run `prep-plugin-releases` workflow with version `${{ steps.detect.outputs.proxy_version }}` | |
| EOF | |
| - name: Notify Slack (Success) | |
| if: success() && steps.cpr.outputs.pull-request-number | |
| run: | | |
| curl -X POST ${{ secrets.MOBILE_SLACK_WEBHOOK }} \ | |
| -H 'Content-Type: application/json' \ | |
| -d '{ | |
| "text": "✅ Proxy release PR created: ${{ steps.cpr.outputs.pull-request-url }}\nVersion: ${{ steps.detect.outputs.proxy_version }}\niOS: ${{ steps.detect.outputs.ios_version }} | Android: ${{ steps.detect.outputs.android_version }}" | |
| }' || true | |
| - name: Notify Slack (Failure) | |
| if: failure() | |
| run: | | |
| curl -X POST ${{ secrets.MOBILE_SLACK_WEBHOOK }} \ | |
| -H 'Content-Type: application/json' \ | |
| -d '{ | |
| "text": "❌ Proxy release preparation failed\nWorkflow: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}\n<@crow>" | |
| }' || true |