chore(deps): bump getsentry/craft/.github/workflows/changelog-preview… #9955
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: Sample Application Expo | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| types: [opened, synchronize, reopened, labeled] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} | |
| env: | |
| SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} | |
| RN_SENTRY_POD_NAME: RNSentry | |
| jobs: | |
| ready-to-merge-gate: | |
| name: Ready-to-merge gate | |
| uses: ./.github/workflows/ready-to-merge-workflow.yml | |
| with: | |
| is-pr: ${{ github.event_name == 'pull_request' }} | |
| labels: ${{ toJson(github.event.pull_request.labels) }} | |
| diff_check: | |
| needs: [ready-to-merge-gate] | |
| uses: ./.github/workflows/skip-ci.yml | |
| detect-changes: | |
| needs: [ready-to-merge-gate] | |
| uses: ./.github/workflows/detect-changes.yml | |
| with: | |
| caller_event_name: ${{ github.event_name }} | |
| caller_ref: ${{ github.ref }} | |
| build-ios: | |
| name: Build ios ${{ matrix.build-type }} ${{ matrix.ios-use-frameworks }} | |
| runs-on: macos-26-xlarge | |
| needs: [diff_check, detect-changes] | |
| if: >- | |
| ${{ | |
| needs.diff_check.outputs.skip_ci != 'true' | |
| && needs.detect-changes.outputs.needs_sample_expo == 'true' | |
| && (needs.detect-changes.outputs.sample_expo == 'true' || needs.detect-changes.outputs.needs_ios == 'true') | |
| }} | |
| env: | |
| SENTRY_DISABLE_AUTO_UPLOAD: "true" | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| ios-use-frameworks: ["no-frameworks", "dynamic-frameworks"] | |
| build-type: ["dev", "production"] | |
| steps: | |
| - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 | |
| - name: Enable Corepack | |
| run: corepack enable | |
| - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6 | |
| with: | |
| package-manager-cache: false | |
| node-version: 20 | |
| cache: "yarn" | |
| cache-dependency-path: yarn.lock | |
| - uses: ruby/setup-ruby@9eb537ca036ebaed86729dcb9309076e4c5c3b74 # v1 | |
| with: | |
| working-directory: samples/expo | |
| ruby-version: "3.3.0" # based on what is used in the sample | |
| bundler-cache: true # runs 'bundle install' and caches installed gems automatically | |
| cache-version: 1 # cache the installed gems | |
| - name: Setup Global Xcode Tools | |
| run: which xcbeautify || brew install xcbeautify | |
| - name: Install SDK Dependencies | |
| run: yarn install | |
| - name: Build SDK | |
| run: yarn build | |
| - name: Prebuild apps | |
| working-directory: samples/expo | |
| run: npx expo prebuild --platform ios | |
| - name: Install App Pods | |
| working-directory: samples/expo/ios | |
| run: | | |
| [[ "${{ matrix.build-type }}" == "production" ]] && ENABLE_PROD=1 || ENABLE_PROD=0 | |
| [[ "${{ matrix.ios-use-frameworks }}" == "dynamic-frameworks" ]] && export USE_FRAMEWORKS=dynamic | |
| echo "ENABLE_PROD=$ENABLE_PROD" | |
| # Monorepo fix: Point Sentry SDK to correct React Native version (0.83 vs 0.80) | |
| export REACT_NATIVE_NODE_MODULES_DIR="$(cd ../node_modules/react-native && pwd)" | |
| PRODUCTION=$ENABLE_PROD pod install | |
| cat Podfile.lock | grep $RN_SENTRY_POD_NAME | |
| - name: Build iOS App | |
| working-directory: samples/expo/ios | |
| env: | |
| # Fix for Xcode 26+ with MetalToolchain: use default Xcode toolchain to avoid | |
| # missing Swift compatibility libraries (swiftCompatibility56, etc.) | |
| # See: https://github.com/actions/runner-images/issues/13135 | |
| TOOLCHAINS: com.apple.dt.toolchain.XcodeDefault | |
| run: | | |
| [[ "${{ matrix.build-type }}" == "production" ]] && CONFIG='Release' || CONFIG='Debug' | |
| echo "Building $CONFIG" | |
| mkdir -p "DerivedData" | |
| derivedData="$(cd "DerivedData" ; pwd -P)" | |
| set -o pipefail && xcodebuild \ | |
| -workspace sentryreactnativeexposample.xcworkspace \ | |
| -configuration "$CONFIG" \ | |
| -scheme sentryreactnativeexposample \ | |
| -sdk 'iphonesimulator' \ | |
| -destination 'generic/platform=iOS Simulator' \ | |
| ONLY_ACTIVE_ARCH=yes \ | |
| ARCHS=arm64 \ | |
| -derivedDataPath "$derivedData" \ | |
| build \ | |
| | tee xcodebuild.log \ | |
| | xcbeautify --quieter --is-ci --disable-colored-output | |
| - name: Export Expo | |
| working-directory: samples/expo | |
| run: | | |
| npx expo export -p ios | |
| - name: Upload logs | |
| if: ${{ always() }} | |
| uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 | |
| with: | |
| name: build-sample-expo-ios-${{ matrix.build-type }}-${{ matrix.ios-use-frameworks}}-logs | |
| path: samples/expo/ios/*.log | |
| build-android: | |
| name: Build android ${{ matrix.build-type }} | |
| runs-on: ubuntu-latest | |
| needs: [diff_check, detect-changes] | |
| if: >- | |
| ${{ | |
| needs.diff_check.outputs.skip_ci != 'true' | |
| && needs.detect-changes.outputs.needs_sample_expo == 'true' | |
| && (needs.detect-changes.outputs.sample_expo == 'true' || needs.detect-changes.outputs.needs_android == 'true') | |
| }} | |
| env: | |
| SENTRY_DISABLE_AUTO_UPLOAD: "true" | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| build-type: ["dev", "production"] | |
| steps: | |
| - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 | |
| - name: Enable Corepack (NPM) | |
| run: npm i -g corepack | |
| - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6 | |
| with: | |
| package-manager-cache: false | |
| node-version: 20 | |
| cache: "yarn" | |
| cache-dependency-path: yarn.lock | |
| - uses: actions/setup-java@ad2b38190b15e4d6bdf0c97fb4fca8412226d287 # v5 | |
| with: | |
| java-version: "17" | |
| distribution: "adopt" | |
| - name: Gradle cache | |
| uses: gradle/actions/setup-gradle@3f131e8634966bd73d06cc69884922b02e6faf92 # v6 | |
| - name: Install SDK Dependencies | |
| run: yarn install | |
| - name: Build SDK | |
| run: yarn build | |
| - name: Prebuild apps | |
| working-directory: samples/expo | |
| run: npx expo prebuild --platform android | |
| - name: Build Android App | |
| working-directory: samples/expo/android | |
| env: | |
| # Increase memory for Expo SDK 57 lint tasks | |
| GRADLE_OPTS: "-Dorg.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g" | |
| run: | | |
| [[ "${{ matrix.build-type }}" == "production" ]] && CONFIG='Release' || CONFIG='Debug' | |
| echo "Building $CONFIG" | |
| # Build all ABIs (not just x86): the Sentry perf-logger native library is | |
| # compiled from source per ABI, and #6398 (armeabi-v7a link failure) was | |
| # reported on an Expo build. Keeps ABI coverage consistent with the bare | |
| # RN sample. | |
| ./gradlew ":app:assemble$CONFIG" -PreactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64 | |
| - name: Export Expo | |
| working-directory: samples/expo | |
| run: | | |
| npx expo export -p android | |
| - name: Upload logs | |
| if: ${{ always() }} | |
| uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 | |
| with: | |
| name: build-sample-expo-android-${{ matrix.build-type }}-logs | |
| path: samples/expo/android/*.log | |
| build-web: | |
| name: Build web | |
| runs-on: ubuntu-latest | |
| needs: [diff_check, detect-changes] | |
| if: >- | |
| ${{ | |
| needs.diff_check.outputs.skip_ci != 'true' | |
| && needs.detect-changes.outputs.needs_sample_expo == 'true' | |
| && (needs.detect-changes.outputs.sample_expo == 'true' || needs.detect-changes.outputs.needs_web == 'true') | |
| }} | |
| env: | |
| SENTRY_DISABLE_AUTO_UPLOAD: "true" | |
| steps: | |
| - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 | |
| - name: Enable Corepack (NPM) | |
| run: npm i -g corepack | |
| - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6 | |
| with: | |
| package-manager-cache: false | |
| node-version: 20 | |
| cache: "yarn" | |
| cache-dependency-path: yarn.lock | |
| - name: Install SDK Dependencies | |
| run: yarn install | |
| - name: Build SDK | |
| run: yarn build | |
| - name: Build Web App | |
| working-directory: samples/expo | |
| run: | | |
| npx expo export -p web |