Sora 切断時のステータスコードが 1000 でも error として伝搬させる #2243
Workflow file for this run
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: Build | |
| on: | |
| workflow_dispatch: | |
| push: | |
| paths-ignore: | |
| - 'README.md' | |
| - 'CHANGES.md' | |
| - 'LICENSE' | |
| - 'Sora.podspec' | |
| jobs: | |
| build: | |
| runs-on: macos-15 | |
| env: | |
| XCODE: /Applications/Xcode_16.2.app | |
| XCODE_SDK: iphoneos18.2 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Select Xcode Version | |
| run: sudo xcode-select -s '${{ env.XCODE }}/Contents/Developer' | |
| - name: Show Xcode Version | |
| run: xcodebuild -version | |
| - name: Show CocoaPods Version | |
| run: pod --version | |
| - name: Restore Pods | |
| uses: actions/cache@v4 | |
| with: | |
| path: Pods | |
| key: ${{ runner.os }}-pods-${{ hashFiles('**/Podfile.lock') }} | |
| restore-keys: | | |
| ${{ runner.os }}-pods- | |
| - name: Install Dependences | |
| run: | | |
| pod repo update | |
| pod install | |
| if nm ./Pods/WebRTC/WebRTC.xcframework/ios-arm64/WebRTC.framework/WebRTC | grep _kVTVideoEncoderSpecification_RequiredLowLatency >/dev/null 2>&1; then | |
| echo 'Error: Non-public API detected in WebRTC framework.' | |
| exit 1 | |
| fi | |
| - name: Build Xcode Project | |
| run: | | |
| set -o pipefail && \ | |
| xcodebuild \ | |
| -workspace 'Sora.xcworkspace' \ | |
| -scheme 'Sora' \ | |
| -sdk ${{ env.XCODE_SDK }} \ | |
| -configuration Release \ | |
| -derivedDataPath build \ | |
| clean build \ | |
| CODE_SIGNING_REQUIRED=NO \ | |
| CODE_SIGN_IDENTITY= \ | |
| PROVISIONING_PROFILE= | |
| - name: Format Lint | |
| run: | | |
| make fmt-lint | |
| - name: Lint | |
| run: | | |
| make lint | |
| slack_notify_succeeded: | |
| needs: [build] | |
| runs-on: ubuntu-24.04 | |
| if: success() | |
| steps: | |
| - name: Slack Notification | |
| uses: rtCamp/action-slack-notify@v2 | |
| env: | |
| SLACK_CHANNEL: sora-ios-sdk | |
| SLACK_COLOR: good | |
| SLACK_TITLE: SUCCEEDED | |
| SLACK_ICON_EMOJI: ":star-struck:" | |
| SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }} | |
| slack_notify_failed: | |
| needs: [build] | |
| runs-on: ubuntu-24.04 | |
| if: failure() | |
| steps: | |
| - name: Slack Notification | |
| uses: rtCamp/action-slack-notify@v2 | |
| env: | |
| SLACK_CHANNEL: sora-ios-sdk | |
| SLACK_COLOR: danger | |
| SLACK_TITLE: "FAILED" | |
| SLACK_ICON_EMOJI: ":japanese_ogre:" | |
| SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }} | |
| release: | |
| if: contains(github.ref, 'tags/v') | |
| needs: [build] | |
| runs-on: macos-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Create Release | |
| id: create_release | |
| # TODO: https://github.com/softprops/action-gh-release への置き換えを検討する | |
| uses: actions/create-release@v1.1.4 | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| with: | |
| tag_name: ${{ github.ref }} | |
| release_name: Release ${{ github.ref }} | |
| draft: false | |
| prerelease: false | |