From b477ac821a49dadfaba3a41894590bfac7dae30c Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 11:05:08 +0100 Subject: [PATCH 01/18] Fix --- .github/workflows/ci.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0edc3f4243..4a28b95a00 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -105,14 +105,14 @@ jobs: test_all: timeout-minutes: 15 - name: Test All Features (ubuntu-latest) - runs-on: ubuntu-latest + name: Test All Features (ubuntu-22.04) + runs-on: ubuntu-22.04 # Skip redundant checks for library releases if: "!startsWith(github.ref, 'refs/heads/release-library/')" # Testing all features requires Docker container operations that are only available on - # `ubuntu-latest`. This `test-all` job is to be seen as complementary to the `test` job. If + # `ubuntu-22.04`. This `test-all` job is to be seen as complementary to the `test` job. If # services become available on other platforms, the jobs should be consolidated. See # https://docs.github.com/en/actions/guides/about-service-containers @@ -495,7 +495,7 @@ jobs: test_integration: name: Integration Tests - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 timeout-minutes: 30 # Skip redundant checks for library releases From 39e27ac86b48d76313faa16af08903d358785c58 Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 11:05:41 +0100 Subject: [PATCH 02/18] Fix --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4a28b95a00..a3d4d11290 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ env: jobs: lint: name: Lint - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - name: Install libcurl-dev @@ -53,7 +53,7 @@ jobs: lint_default: name: Lint Rust Default Features - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - name: Install libcurl-dev From b3e03f12a1fd7ae9efcf7180c1c586378652e0f0 Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 12:36:12 +0100 Subject: [PATCH 03/18] Fix --- .github/workflows/ci.yml | 51 +++++++++++++++++++--------------------- 1 file changed, 24 insertions(+), 27 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a3d4d11290..498a6512cc 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ env: jobs: lint: name: Lint - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest steps: - name: Install libcurl-dev @@ -53,7 +53,7 @@ jobs: lint_default: name: Lint Rust Default Features - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest steps: - name: Install libcurl-dev @@ -105,14 +105,14 @@ jobs: test_all: timeout-minutes: 15 - name: Test All Features (ubuntu-22.04) - runs-on: ubuntu-22.04 + name: Test All Features (ubuntu-latest) + runs-on: ubuntu-latest # Skip redundant checks for library releases if: "!startsWith(github.ref, 'refs/heads/release-library/')" # Testing all features requires Docker container operations that are only available on - # `ubuntu-22.04`. This `test-all` job is to be seen as complementary to the `test` job. If + # `ubuntu-latest`. This `test-all` job is to be seen as complementary to the `test` job. If # services become available on other platforms, the jobs should be consolidated. See # https://docs.github.com/en/actions/guides/about-service-containers @@ -201,18 +201,26 @@ jobs: if [[ "$FULL_CI" == "true" ]]; then echo "Running full CI" echo 'image_names=["relay", "relay-pop"]' >> $GITHUB_OUTPUT - echo 'targets=["x86_64-unknown-linux-gnu", "aarch64-unknown-linux-gnu"]' >> $GITHUB_OUTPUT - echo 'platforms=["linux/amd64","linux/arm64"]' >> $GITHUB_OUTPUT + echo 'targets=[ + { + "target": "x86_64-unknown-linux-gnu", + "runner": "ubuntu-20.04", + "platform": "linux/amd64" + }, + { + "target": "aarch64-unknown-linux-gnu", + "runner": "ubuntu-22.04-arm", + "platform": "linux/arm64" + } + ]' >> $GITHUB_OUTPUT else echo "Skipping some CI steps" echo 'image_names=["relay"]' >> $GITHUB_OUTPUT - echo 'targets=["x86_64-unknown-linux-gnu"]' >> $GITHUB_OUTPUT - echo 'platforms=["linux/amd64"]' >> $GITHUB_OUTPUT + echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04","platform":"linux/amd64"}]' >> $GITHUB_OUTPUT fi outputs: image_names: "${{ steps.set-outputs.outputs.image_names }}" targets: "${{ steps.set-outputs.outputs.targets }}" - platforms: "${{ steps.set-outputs.outputs.platforms }}" full_ci: "${{ steps.set-outputs.outputs.full_ci }}" build: @@ -222,10 +230,10 @@ jobs: strategy: matrix: image_name: ${{ fromJson(needs.build-setup.outputs.image_names) }} - target: ${{ fromJson(needs.build-setup.outputs.targets) }} + include: ${{ fromJson(needs.build-setup.outputs.targets) }} name: Build Relay Binary - runs-on: ubuntu-latest + runs-on: ${{ matrix.runner }} if: "!startsWith(github.ref, 'refs/heads/release-library/')" @@ -236,12 +244,7 @@ jobs: "relay": "processing,crash-handler", "relay-pop": "crash-handler" }')[matrix.image_name] }} - DOCKER_PLATFORM: |- - ${{fromJson('{ - "x86_64-unknown-linux-gnu": "linux/amd64", - "aarch64-unknown-linux-gnu": "linux/arm64" - }')[matrix.target] }} - # Fix editor: ' + DOCKER_PLATFORM: ${{ matrix.platform }} steps: - name: Install dependencies @@ -258,15 +261,9 @@ jobs: with: key: "${{ github.job }}-${{ matrix.target }}-${{ matrix.image_name }}" - - name: Install Cross - # We need a nightly version of cross for `cross-util`. - run: cargo install cross --git https://github.com/cross-rs/cross --rev 085092c - - name: Compile run: | - export PATH="/home/runner/.cargo/bin/:$PATH" - - cross build --release --locked --features "${FEATURES}" --target "${{ matrix.target }}" + cargo build --release --locked --features "${FEATURES}" --target "${{ matrix.target }}" - name: Split debug info run: | @@ -274,7 +271,7 @@ jobs: llvm-objcopy --strip-debug --strip-unneeded "${RELAY_BIN}" llvm-objcopy --add-gnu-debuglink "${RELAY_BIN}"{.debug,} - cross-util run --target "${{ matrix.target }}" -- "sentry-cli difutil bundle-sources ${RELAY_BIN}.debug" + sentry-cli difutil bundle-sources "${RELAY_BIN}.debug" zip "${RELAY_BIN}-debug.zip" "${RELAY_BIN}.debug" - name: Prepare Artifacts @@ -495,7 +492,7 @@ jobs: test_integration: name: Integration Tests - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest timeout-minutes: 30 # Skip redundant checks for library releases From 9bcfbb36766d6678c76c13e84e8e9f7deab9ea63 Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 12:45:31 +0100 Subject: [PATCH 04/18] Fix --- .github/workflows/ci.yml | 28 +++++++++++++++++++--------- 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 498a6512cc..a04f142080 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -216,7 +216,13 @@ jobs: else echo "Skipping some CI steps" echo 'image_names=["relay"]' >> $GITHUB_OUTPUT - echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04","platform":"linux/amd64"}]' >> $GITHUB_OUTPUT + echo 'targets=[ + { + "target": "x86_64-unknown-linux-gnu", + "runner": "ubuntu-20.04", + "platform": "linux/amd64" + } + ]' >> $GITHUB_OUTPUT fi outputs: image_names: "${{ steps.set-outputs.outputs.image_names }}" @@ -229,28 +235,32 @@ jobs: strategy: matrix: + target: ${{ fromJson(needs.build-setup.outputs.targets) }} image_name: ${{ fromJson(needs.build-setup.outputs.image_names) }} - include: ${{ fromJson(needs.build-setup.outputs.targets) }} name: Build Relay Binary - runs-on: ${{ matrix.runner }} + runs-on: ${{ matrix.target.runner }} if: "!startsWith(github.ref, 'refs/heads/release-library/')" env: - RELAY_BIN: "target/${{ matrix.target }}/release/relay" + RELAY_BIN: "target/${{ matrix.target.target }}/release/relay" FEATURES: |- ${{fromJson('{ "relay": "processing,crash-handler", "relay-pop": "crash-handler" }')[matrix.image_name] }} - DOCKER_PLATFORM: ${{ matrix.platform }} + DOCKER_PLATFORM: ${{ matrix.target.platform }} steps: - name: Install dependencies run: | sudo apt-get update - sudo apt-get install -y llvm + sudo apt-get install -y llvm curl + + - name: Install sentry-cli + run: | + curl -sL https://sentry.io/get-cli/ | bash - uses: actions/checkout@v4 with: @@ -259,11 +269,11 @@ jobs: - uses: dtolnay/rust-toolchain@stable - uses: swatinem/rust-cache@v2 with: - key: "${{ github.job }}-${{ matrix.target }}-${{ matrix.image_name }}" + key: "${{ github.job }}-${{ matrix.target.target }}-${{ matrix.image_name }}" - name: Compile run: | - cargo build --release --locked --features "${FEATURES}" --target "${{ matrix.target }}" + cargo build --release --locked --features "${FEATURES}" --target "${{ matrix.target.target }}" - name: Split debug info run: | @@ -283,7 +293,7 @@ jobs: uses: actions/upload-artifact@v4 with: retention-days: 1 - name: ${{ matrix.image_name }}@${{ matrix.target }} + name: ${{ matrix.image_name }}@${{ matrix.target.target }} path: "./artifacts/*" build-docker: From c91a6108d42d0ca19dfa3c73c61cd29272739b7a Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 12:46:53 +0100 Subject: [PATCH 05/18] Fix --- .github/workflows/ci.yml | 21 ++------------------- 1 file changed, 2 insertions(+), 19 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a04f142080..0f188e81bd 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -201,28 +201,11 @@ jobs: if [[ "$FULL_CI" == "true" ]]; then echo "Running full CI" echo 'image_names=["relay", "relay-pop"]' >> $GITHUB_OUTPUT - echo 'targets=[ - { - "target": "x86_64-unknown-linux-gnu", - "runner": "ubuntu-20.04", - "platform": "linux/amd64" - }, - { - "target": "aarch64-unknown-linux-gnu", - "runner": "ubuntu-22.04-arm", - "platform": "linux/arm64" - } - ]' >> $GITHUB_OUTPUT + echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04","platform":"linux/amd64"},{"target":"aarch64-unknown-linux-gnu","runner":"ubuntu-22.04-arm","platform":"linux/arm64"}]' >> $GITHUB_OUTPUT else echo "Skipping some CI steps" echo 'image_names=["relay"]' >> $GITHUB_OUTPUT - echo 'targets=[ - { - "target": "x86_64-unknown-linux-gnu", - "runner": "ubuntu-20.04", - "platform": "linux/amd64" - } - ]' >> $GITHUB_OUTPUT + echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04","platform":"linux/amd64"}]' >> $GITHUB_OUTPUT fi outputs: image_names: "${{ steps.set-outputs.outputs.image_names }}" From 02e3685a29ea4a1bb632b96dea5b9c4d471d7eb3 Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 12:55:10 +0100 Subject: [PATCH 06/18] Update --- .github/workflows/ci.yml | 48 ++++++++++++++++++--------------------- relay-crash/sentry-native | 2 +- 2 files changed, 23 insertions(+), 27 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0f188e81bd..0bfdccba8f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -200,15 +200,15 @@ jobs: if [[ "$FULL_CI" == "true" ]]; then echo "Running full CI" - echo 'image_names=["relay", "relay-pop"]' >> $GITHUB_OUTPUT + echo 'images=[{"name":"relay","features":"processing,crash-handler"},{"name":"relay-pop","features":"crash-handler"}]' >> $GITHUB_OUTPUT echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04","platform":"linux/amd64"},{"target":"aarch64-unknown-linux-gnu","runner":"ubuntu-22.04-arm","platform":"linux/arm64"}]' >> $GITHUB_OUTPUT else echo "Skipping some CI steps" - echo 'image_names=["relay"]' >> $GITHUB_OUTPUT + echo 'images=[{"name":"relay","features":"processing,crash-handler"}]' >> $GITHUB_OUTPUT echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04","platform":"linux/amd64"}]' >> $GITHUB_OUTPUT fi outputs: - image_names: "${{ steps.set-outputs.outputs.image_names }}" + images: "${{ steps.set-outputs.outputs.images }}" targets: "${{ steps.set-outputs.outputs.targets }}" full_ci: "${{ steps.set-outputs.outputs.full_ci }}" @@ -219,7 +219,7 @@ jobs: strategy: matrix: target: ${{ fromJson(needs.build-setup.outputs.targets) }} - image_name: ${{ fromJson(needs.build-setup.outputs.image_names) }} + image: ${{ fromJson(needs.build-setup.outputs.images) }} name: Build Relay Binary runs-on: ${{ matrix.target.runner }} @@ -228,11 +228,7 @@ jobs: env: RELAY_BIN: "target/${{ matrix.target.target }}/release/relay" - FEATURES: |- - ${{fromJson('{ - "relay": "processing,crash-handler", - "relay-pop": "crash-handler" - }')[matrix.image_name] }} + FEATURES: ${{ matrix.image.features }} DOCKER_PLATFORM: ${{ matrix.target.platform }} steps: @@ -252,7 +248,7 @@ jobs: - uses: dtolnay/rust-toolchain@stable - uses: swatinem/rust-cache@v2 with: - key: "${{ github.job }}-${{ matrix.target.target }}-${{ matrix.image_name }}" + key: "${{ github.job }}-${{ matrix.target.target }}-${{ matrix.image.name }}" - name: Compile run: | @@ -276,7 +272,7 @@ jobs: uses: actions/upload-artifact@v4 with: retention-days: 1 - name: ${{ matrix.image_name }}@${{ matrix.target.target }} + name: ${{ matrix.image.name }}@${{ matrix.target.target }} path: "./artifacts/*" build-docker: @@ -288,11 +284,11 @@ jobs: strategy: matrix: - image_name: ${{ fromJson(needs.build-setup.outputs.image_names) }} + image_name: ${{ fromJson(needs.build-setup.outputs.images) }} env: PLATFORMS: "${{ join(fromJSON(needs.build-setup.outputs.platforms), ',') }}" - DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image_name }}" + DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image.name }}" REVISION: "${{ github.event.pull_request.head.sha || github.sha }}" steps: @@ -303,7 +299,7 @@ jobs: - uses: actions/download-artifact@v4 with: - pattern: "${{ matrix.image_name }}@*" + pattern: "${{ matrix.image.name }}@*" merge-multiple: true - name: Build and push to ghcr.io @@ -326,7 +322,7 @@ jobs: --platform "${PLATFORMS}" \ --tag "${DOCKER_IMAGE}:${REVISION}" \ --file Dockerfile.release \ - --output type=docker,dest=${{ matrix.image_name }}-docker-image \ + --output type=docker,dest=${{ matrix.image.name }}-docker-image \ . - name: Upload docker image @@ -334,8 +330,8 @@ jobs: uses: actions/upload-artifact@v4 with: retention-days: 1 - name: ${{ matrix.image_name }}-docker-image - path: "${{ matrix.image_name }}-docker-image" + name: ${{ matrix.image.name }}-docker-image + path: "${{ matrix.image.name }}-docker-image" publish-to-dockerhub: needs: [build-setup, build-docker] @@ -350,8 +346,8 @@ jobs: if: ${{ (github.ref_name == 'master') }} env: - GHCR_DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image_name }}" - DH_DOCKER_IMAGE: "getsentry/${{ matrix.image_name }}" + GHCR_DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image.name }}" + DH_DOCKER_IMAGE: "getsentry/${{ matrix.image.name }}" REVISION: "${{ github.event.pull_request.head.sha || github.sha }}" steps: @@ -380,7 +376,7 @@ jobs: strategy: matrix: - image_name: ${{ fromJson(needs.build-setup.outputs.image_names) }} + image_name: ${{ fromJson(needs.build-setup.outputs.images) }} # required for google auth permissions: @@ -388,8 +384,8 @@ jobs: id-token: "write" env: - GHCR_DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image_name }}" - AR_DOCKER_IMAGE: "us-central1-docker.pkg.dev/sentryio/relay/${{ matrix.image_name }}" + GHCR_DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image.name }}" + AR_DOCKER_IMAGE: "us-central1-docker.pkg.dev/sentryio/relay/${{ matrix.image.name }}" REVISION: "${{ github.event.pull_request.head.sha || github.sha }}" # Skip redundant checks for library releases @@ -431,7 +427,7 @@ jobs: strategy: matrix: - image_name: ${{ fromJson(needs.build-setup.outputs.image_names) }} + image_name: ${{ fromJson(needs.build-setup.outputs.images) }} # required for google auth permissions: @@ -439,7 +435,7 @@ jobs: id-token: "write" env: - GHCR_DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image_name }}" + GHCR_DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image.name }}" REVISION: "${{ github.event.pull_request.head.sha || github.sha }}" if: "!startsWith(github.ref, 'refs/heads/release-library/') && !github.event.pull_request.head.repo.fork && github.actor != 'dependabot[bot]' && needs.build-setup.outputs.full_ci == 'true'" @@ -463,7 +459,7 @@ jobs: run: | set -euxo pipefail VERSION="$(docker run --rm "${GHCR_DOCKER_IMAGE}:${REVISION}" --version | cut -d" " -f2)" - echo "${{ matrix.image_name }}@${VERSION}+${REVISION}" > release-name + echo "${{ matrix.image.name }}@${VERSION}+${REVISION}" > release-name docker run --rm --entrypoint cat "${GHCR_DOCKER_IMAGE}:${REVISION}" /opt/relay-debug.zip > relay-debug.zip docker run --rm --entrypoint cat "${GHCR_DOCKER_IMAGE}:${REVISION}" /opt/relay.src.zip > relay.src.zip @@ -479,7 +475,7 @@ jobs: /home/runner/.gsutil/tracker-files/upload_TRACKER_*.rc.zip__JSON.url \ || true gsutil -m cp -L gsutil.log ./libs.tar ./relay-debug.zip ./relay.src.zip ./release-name \ - "gs://dicd-team-devinfra-cd--relay/deployment-assets/${REVISION}/${{ matrix.image_name }}/" || status=$? && status=$? + "gs://dicd-team-devinfra-cd--relay/deployment-assets/${REVISION}/${{ matrix.image.name }}/" || status=$? && status=$? cat gsutil.log exit "$status" diff --git a/relay-crash/sentry-native b/relay-crash/sentry-native index d380374c32..4072538dfd 160000 --- a/relay-crash/sentry-native +++ b/relay-crash/sentry-native @@ -1 +1 @@ -Subproject commit d380374c32d58f75b16758217338ec9cc9aa5b9e +Subproject commit 4072538dfdbcafb3974318fe08798e51f62786d9 From 649da9fca2182ec72f8e2f0f7a0541d152464e8e Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 13:01:12 +0100 Subject: [PATCH 07/18] Fix --- .github/workflows/ci.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0bfdccba8f..555cf86493 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -284,10 +284,10 @@ jobs: strategy: matrix: - image_name: ${{ fromJson(needs.build-setup.outputs.images) }} + image: ${{ fromJson(needs.build-setup.outputs.images) }} env: - PLATFORMS: "${{ join(fromJSON(needs.build-setup.outputs.platforms), ',') }}" + PLATFORMS: "${{ join(fromJson(format('[{0}]', join(fromJson(needs.build-setup.outputs.targets).*.platform, ','))), ',') }}" DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image.name }}" REVISION: "${{ github.event.pull_request.head.sha || github.sha }}" @@ -341,7 +341,7 @@ jobs: strategy: matrix: - image_name: [relay] # Don't publish relay-pop (for now) + image: [{"name": "relay", "features": "processing,crash-handler"}] # Don't publish relay-pop (for now) if: ${{ (github.ref_name == 'master') }} @@ -376,7 +376,7 @@ jobs: strategy: matrix: - image_name: ${{ fromJson(needs.build-setup.outputs.images) }} + image: ${{ fromJson(needs.build-setup.outputs.images) }} # required for google auth permissions: @@ -427,7 +427,7 @@ jobs: strategy: matrix: - image_name: ${{ fromJson(needs.build-setup.outputs.images) }} + image: ${{ fromJson(needs.build-setup.outputs.images) }} # required for google auth permissions: From 3f260914ebe6782b657b4e897dd82f4c26d4aae7 Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 13:09:51 +0100 Subject: [PATCH 08/18] Fix --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 555cf86493..2febbec0cc 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -287,7 +287,7 @@ jobs: image: ${{ fromJson(needs.build-setup.outputs.images) }} env: - PLATFORMS: "${{ join(fromJson(format('[{0}]', join(fromJson(needs.build-setup.outputs.targets).*.platform, ','))), ',') }}" + PLATFORMS: ${{ join(fromJson(format('[{0}]', join(fromJson(needs.build-setup.outputs.targets).*.platform, ','))), ',') }} DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image.name }}" REVISION: "${{ github.event.pull_request.head.sha || github.sha }}" From 0de372f8a50df711ff901f5a16ca4f63dab765ce Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 13:23:38 +0100 Subject: [PATCH 09/18] Revert --- .github/workflows/ci.yml | 32 ++++++++++++++++++-------------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2febbec0cc..4511af79b7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -200,15 +200,15 @@ jobs: if [[ "$FULL_CI" == "true" ]]; then echo "Running full CI" - echo 'images=[{"name":"relay","features":"processing,crash-handler"},{"name":"relay-pop","features":"crash-handler"}]' >> $GITHUB_OUTPUT + echo 'image_names=["relay", "relay-pop"]' >> $GITHUB_OUTPUT echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04","platform":"linux/amd64"},{"target":"aarch64-unknown-linux-gnu","runner":"ubuntu-22.04-arm","platform":"linux/arm64"}]' >> $GITHUB_OUTPUT else echo "Skipping some CI steps" - echo 'images=[{"name":"relay","features":"processing,crash-handler"}]' >> $GITHUB_OUTPUT + echo 'image_names=["relay"]' >> $GITHUB_OUTPUT echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04","platform":"linux/amd64"}]' >> $GITHUB_OUTPUT fi outputs: - images: "${{ steps.set-outputs.outputs.images }}" + image_names: "${{ steps.set-outputs.outputs.image_names }}" targets: "${{ steps.set-outputs.outputs.targets }}" full_ci: "${{ steps.set-outputs.outputs.full_ci }}" @@ -219,7 +219,7 @@ jobs: strategy: matrix: target: ${{ fromJson(needs.build-setup.outputs.targets) }} - image: ${{ fromJson(needs.build-setup.outputs.images) }} + image_name: ${{ fromJson(needs.build-setup.outputs.image_names) }} name: Build Relay Binary runs-on: ${{ matrix.target.runner }} @@ -228,7 +228,11 @@ jobs: env: RELAY_BIN: "target/${{ matrix.target.target }}/release/relay" - FEATURES: ${{ matrix.image.features }} + FEATURES: |- + ${{fromJson('{ + "relay": "processing,crash-handler", + "relay-pop": "crash-handler" + }')[matrix.image_name] }} DOCKER_PLATFORM: ${{ matrix.target.platform }} steps: @@ -248,7 +252,7 @@ jobs: - uses: dtolnay/rust-toolchain@stable - uses: swatinem/rust-cache@v2 with: - key: "${{ github.job }}-${{ matrix.target.target }}-${{ matrix.image.name }}" + key: "${{ github.job }}-${{ matrix.target.target }}-${{ matrix.image_name }}" - name: Compile run: | @@ -272,7 +276,7 @@ jobs: uses: actions/upload-artifact@v4 with: retention-days: 1 - name: ${{ matrix.image.name }}@${{ matrix.target.target }} + name: ${{ matrix.image_name }}@${{ matrix.target.target }} path: "./artifacts/*" build-docker: @@ -284,11 +288,11 @@ jobs: strategy: matrix: - image: ${{ fromJson(needs.build-setup.outputs.images) }} + image_name: ${{ fromJson(needs.build-setup.outputs.image_names) }} env: PLATFORMS: ${{ join(fromJson(format('[{0}]', join(fromJson(needs.build-setup.outputs.targets).*.platform, ','))), ',') }} - DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image.name }}" + DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image_name }}" REVISION: "${{ github.event.pull_request.head.sha || github.sha }}" steps: @@ -299,7 +303,7 @@ jobs: - uses: actions/download-artifact@v4 with: - pattern: "${{ matrix.image.name }}@*" + pattern: "${{ matrix.image_name }}@*" merge-multiple: true - name: Build and push to ghcr.io @@ -322,7 +326,7 @@ jobs: --platform "${PLATFORMS}" \ --tag "${DOCKER_IMAGE}:${REVISION}" \ --file Dockerfile.release \ - --output type=docker,dest=${{ matrix.image.name }}-docker-image \ + --output type=docker,dest=${{ matrix.image_name }}-docker-image \ . - name: Upload docker image @@ -330,8 +334,8 @@ jobs: uses: actions/upload-artifact@v4 with: retention-days: 1 - name: ${{ matrix.image.name }}-docker-image - path: "${{ matrix.image.name }}-docker-image" + name: ${{ matrix.image_name }}-docker-image + path: "${{ matrix.image_name }}-docker-image" publish-to-dockerhub: needs: [build-setup, build-docker] @@ -341,7 +345,7 @@ jobs: strategy: matrix: - image: [{"name": "relay", "features": "processing,crash-handler"}] # Don't publish relay-pop (for now) + image_name: ["relay"] # Don't publish relay-pop (for now) if: ${{ (github.ref_name == 'master') }} From f0c7ca60cec2e8410eebc83d497eda074dbc92fc Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 13:28:04 +0100 Subject: [PATCH 10/18] Fix --- .github/workflows/ci.yml | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4511af79b7..7e5f11ec07 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -201,15 +201,18 @@ jobs: if [[ "$FULL_CI" == "true" ]]; then echo "Running full CI" echo 'image_names=["relay", "relay-pop"]' >> $GITHUB_OUTPUT - echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04","platform":"linux/amd64"},{"target":"aarch64-unknown-linux-gnu","runner":"ubuntu-22.04-arm","platform":"linux/arm64"}]' >> $GITHUB_OUTPUT + echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04"},{"target":"aarch64-unknown-linux-gnu","runner":"ubuntu-22.04-arm"}]' >> $GITHUB_OUTPUT + echo 'platforms=["linux/amd64","linux/arm64"]' >> $GITHUB_OUTPUT else echo "Skipping some CI steps" echo 'image_names=["relay"]' >> $GITHUB_OUTPUT - echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04","platform":"linux/amd64"}]' >> $GITHUB_OUTPUT + echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04"}]' >> $GITHUB_OUTPUT + echo 'platforms=["linux/amd64"]' >> $GITHUB_OUTPUT fi outputs: image_names: "${{ steps.set-outputs.outputs.image_names }}" targets: "${{ steps.set-outputs.outputs.targets }}" + platforms: "${{ steps.set-outputs.outputs.platforms }}" full_ci: "${{ steps.set-outputs.outputs.full_ci }}" build: @@ -218,8 +221,8 @@ jobs: strategy: matrix: - target: ${{ fromJson(needs.build-setup.outputs.targets) }} image_name: ${{ fromJson(needs.build-setup.outputs.image_names) }} + target: ${{ fromJson(needs.build-setup.outputs.targets) }} name: Build Relay Binary runs-on: ${{ matrix.target.runner }} @@ -233,7 +236,11 @@ jobs: "relay": "processing,crash-handler", "relay-pop": "crash-handler" }')[matrix.image_name] }} - DOCKER_PLATFORM: ${{ matrix.target.platform }} + DOCKER_PLATFORM: |- + ${{fromJson('{ + "x86_64-unknown-linux-gnu": "linux/amd64", + "aarch64-unknown-linux-gnu": "linux/arm64" + }')[matrix.target.target] }} steps: - name: Install dependencies @@ -291,7 +298,7 @@ jobs: image_name: ${{ fromJson(needs.build-setup.outputs.image_names) }} env: - PLATFORMS: ${{ join(fromJson(format('[{0}]', join(fromJson(needs.build-setup.outputs.targets).*.platform, ','))), ',') }} + PLATFORMS: "${{ join(fromJson(needs.build-setup.outputs.platforms), ',') }}" DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image_name }}" REVISION: "${{ github.event.pull_request.head.sha || github.sha }}" From cda239cc64a8cb3e95370fa91841c87885b8973b Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 13:30:17 +0100 Subject: [PATCH 11/18] Fix --- .github/workflows/ci.yml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7e5f11ec07..b3939df73a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -357,8 +357,8 @@ jobs: if: ${{ (github.ref_name == 'master') }} env: - GHCR_DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image.name }}" - DH_DOCKER_IMAGE: "getsentry/${{ matrix.image.name }}" + GHCR_DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image_name }}" + DH_DOCKER_IMAGE: "getsentry/${{ matrix.image_name }}" REVISION: "${{ github.event.pull_request.head.sha || github.sha }}" steps: @@ -387,7 +387,7 @@ jobs: strategy: matrix: - image: ${{ fromJson(needs.build-setup.outputs.images) }} + image_name: ${{ fromJson(needs.build-setup.outputs.image_names) }} # required for google auth permissions: @@ -395,8 +395,8 @@ jobs: id-token: "write" env: - GHCR_DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image.name }}" - AR_DOCKER_IMAGE: "us-central1-docker.pkg.dev/sentryio/relay/${{ matrix.image.name }}" + GHCR_DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image_name }}" + AR_DOCKER_IMAGE: "us-central1-docker.pkg.dev/sentryio/relay/${{ matrix.image_name }}" REVISION: "${{ github.event.pull_request.head.sha || github.sha }}" # Skip redundant checks for library releases @@ -438,7 +438,7 @@ jobs: strategy: matrix: - image: ${{ fromJson(needs.build-setup.outputs.images) }} + image_name: ${{ fromJson(needs.build-setup.outputs.image_names) }} # required for google auth permissions: @@ -446,7 +446,7 @@ jobs: id-token: "write" env: - GHCR_DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image.name }}" + GHCR_DOCKER_IMAGE: "ghcr.io/getsentry/${{ matrix.image_name }}" REVISION: "${{ github.event.pull_request.head.sha || github.sha }}" if: "!startsWith(github.ref, 'refs/heads/release-library/') && !github.event.pull_request.head.repo.fork && github.actor != 'dependabot[bot]' && needs.build-setup.outputs.full_ci == 'true'" @@ -470,7 +470,7 @@ jobs: run: | set -euxo pipefail VERSION="$(docker run --rm "${GHCR_DOCKER_IMAGE}:${REVISION}" --version | cut -d" " -f2)" - echo "${{ matrix.image.name }}@${VERSION}+${REVISION}" > release-name + echo "${{ matrix.image_name }}@${VERSION}+${REVISION}" > release-name docker run --rm --entrypoint cat "${GHCR_DOCKER_IMAGE}:${REVISION}" /opt/relay-debug.zip > relay-debug.zip docker run --rm --entrypoint cat "${GHCR_DOCKER_IMAGE}:${REVISION}" /opt/relay.src.zip > relay.src.zip @@ -486,7 +486,7 @@ jobs: /home/runner/.gsutil/tracker-files/upload_TRACKER_*.rc.zip__JSON.url \ || true gsutil -m cp -L gsutil.log ./libs.tar ./relay-debug.zip ./relay.src.zip ./release-name \ - "gs://dicd-team-devinfra-cd--relay/deployment-assets/${REVISION}/${{ matrix.image.name }}/" || status=$? && status=$? + "gs://dicd-team-devinfra-cd--relay/deployment-assets/${REVISION}/${{ matrix.image_name }}/" || status=$? && status=$? cat gsutil.log exit "$status" From ed8697c005b579e032f8ff77ddcbf9111de34655 Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 13:52:28 +0100 Subject: [PATCH 12/18] Fix --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b3939df73a..d0e6839059 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -201,7 +201,7 @@ jobs: if [[ "$FULL_CI" == "true" ]]; then echo "Running full CI" echo 'image_names=["relay", "relay-pop"]' >> $GITHUB_OUTPUT - echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04"},{"target":"aarch64-unknown-linux-gnu","runner":"ubuntu-22.04-arm"}]' >> $GITHUB_OUTPUT + echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04"},{"target":"aarch64-unknown-linux-gnu","runner":"ubuntu-22.04-arm64"}]' >> $GITHUB_OUTPUT echo 'platforms=["linux/amd64","linux/arm64"]' >> $GITHUB_OUTPUT else echo "Skipping some CI steps" From eed587a2bd009772359974a2906cf6ca62175ac8 Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 14:40:50 +0100 Subject: [PATCH 13/18] Fix --- .github/workflows/ci.yml | 2 +- relay-crash/sentry-native | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d0e6839059..e56a0cc2b4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -201,7 +201,7 @@ jobs: if [[ "$FULL_CI" == "true" ]]; then echo "Running full CI" echo 'image_names=["relay", "relay-pop"]' >> $GITHUB_OUTPUT - echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04"},{"target":"aarch64-unknown-linux-gnu","runner":"ubuntu-22.04-arm64"}]' >> $GITHUB_OUTPUT + echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04"},{"target":"aarch64-unknown-linux-gnu","runner":"ubuntu-22.04-arm64-relay"}]' >> $GITHUB_OUTPUT echo 'platforms=["linux/amd64","linux/arm64"]' >> $GITHUB_OUTPUT else echo "Skipping some CI steps" diff --git a/relay-crash/sentry-native b/relay-crash/sentry-native index 4072538dfd..d380374c32 160000 --- a/relay-crash/sentry-native +++ b/relay-crash/sentry-native @@ -1 +1 @@ -Subproject commit 4072538dfdbcafb3974318fe08798e51f62786d9 +Subproject commit d380374c32d58f75b16758217338ec9cc9aa5b9e From ede6a352f836feed93544ab9d54cf6b87597dcfe Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 14:43:36 +0100 Subject: [PATCH 14/18] Update moduel --- relay-crash/sentry-native | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/relay-crash/sentry-native b/relay-crash/sentry-native index d380374c32..4072538dfd 160000 --- a/relay-crash/sentry-native +++ b/relay-crash/sentry-native @@ -1 +1 @@ -Subproject commit d380374c32d58f75b16758217338ec9cc9aa5b9e +Subproject commit 4072538dfdbcafb3974318fe08798e51f62786d9 From 09a5a8e140e7284cc8b677506ded8f4b3a9a7cd8 Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 15:06:24 +0100 Subject: [PATCH 15/18] Fix --- .github/workflows/ci.yml | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e56a0cc2b4..fd42e27426 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -201,17 +201,20 @@ jobs: if [[ "$FULL_CI" == "true" ]]; then echo "Running full CI" echo 'image_names=["relay", "relay-pop"]' >> $GITHUB_OUTPUT - echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04"},{"target":"aarch64-unknown-linux-gnu","runner":"ubuntu-22.04-arm64-relay"}]' >> $GITHUB_OUTPUT + echo 'targets=["x86_64-unknown-linux-gnu", "aarch64-unknown-linux-gnu"]' >> $GITHUB_OUTPUT + echo 'runners=["ubuntu-20.04", "ubuntu-22.04-arm64-relay"]' >> $GITHUB_OUTPUT echo 'platforms=["linux/amd64","linux/arm64"]' >> $GITHUB_OUTPUT else echo "Skipping some CI steps" echo 'image_names=["relay"]' >> $GITHUB_OUTPUT - echo 'targets=[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-20.04"}]' >> $GITHUB_OUTPUT + echo 'targets=["x86_64-unknown-linux-gnu"]' >> $GITHUB_OUTPUT + echo 'runners=["ubuntu-20.04"]' >> $GITHUB_OUTPUT echo 'platforms=["linux/amd64"]' >> $GITHUB_OUTPUT fi outputs: image_names: "${{ steps.set-outputs.outputs.image_names }}" targets: "${{ steps.set-outputs.outputs.targets }}" + runners: "${{ steps.set-outputs.outputs.runners }}" platforms: "${{ steps.set-outputs.outputs.platforms }}" full_ci: "${{ steps.set-outputs.outputs.full_ci }}" @@ -225,12 +228,15 @@ jobs: target: ${{ fromJson(needs.build-setup.outputs.targets) }} name: Build Relay Binary - runs-on: ${{ matrix.target.runner }} + runs-on: ${{fromJson('{ + "x86_64-unknown-linux-gnu": "ubuntu-20.04", + "aarch64-unknown-linux-gnu": "ubuntu-22.04-arm64-relay" + }')[matrix.target] }} if: "!startsWith(github.ref, 'refs/heads/release-library/')" env: - RELAY_BIN: "target/${{ matrix.target.target }}/release/relay" + RELAY_BIN: "target/${{ matrix.target }}/release/relay" FEATURES: |- ${{fromJson('{ "relay": "processing,crash-handler", @@ -240,7 +246,7 @@ jobs: ${{fromJson('{ "x86_64-unknown-linux-gnu": "linux/amd64", "aarch64-unknown-linux-gnu": "linux/arm64" - }')[matrix.target.target] }} + }')[matrix.target] }} steps: - name: Install dependencies @@ -259,11 +265,11 @@ jobs: - uses: dtolnay/rust-toolchain@stable - uses: swatinem/rust-cache@v2 with: - key: "${{ github.job }}-${{ matrix.target.target }}-${{ matrix.image_name }}" + key: "${{ github.job }}-${{ matrix.target }}-${{ matrix.image_name }}" - name: Compile run: | - cargo build --release --locked --features "${FEATURES}" --target "${{ matrix.target.target }}" + cargo build --release --locked --features "${FEATURES}" --target "${{ matrix.target }}" - name: Split debug info run: | @@ -283,7 +289,7 @@ jobs: uses: actions/upload-artifact@v4 with: retention-days: 1 - name: ${{ matrix.image_name }}@${{ matrix.target.target }} + name: ${{ matrix.image_name }}@${{ matrix.target }} path: "./artifacts/*" build-docker: From 1f28cdff121725075519cf1c26fb994010b12ab6 Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 15:12:03 +0100 Subject: [PATCH 16/18] Fix --- .github/workflows/ci.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index fd42e27426..d186a24236 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -228,10 +228,11 @@ jobs: target: ${{ fromJson(needs.build-setup.outputs.targets) }} name: Build Relay Binary - runs-on: ${{fromJson('{ - "x86_64-unknown-linux-gnu": "ubuntu-20.04", - "aarch64-unknown-linux-gnu": "ubuntu-22.04-arm64-relay" - }')[matrix.target] }} + runs-on: |- + ${{fromJson('{ + "x86_64-unknown-linux-gnu": "ubuntu-20.04", + "aarch64-unknown-linux-gnu": "ubuntu-22.04-arm64-relay" + }')[matrix.target] }} if: "!startsWith(github.ref, 'refs/heads/release-library/')" From 49fe4ecff4904eba69b9d9f49c62f12c714cba07 Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 15:23:52 +0100 Subject: [PATCH 17/18] Remove unused --- .github/workflows/ci.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d186a24236..9fa9047987 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -202,19 +202,16 @@ jobs: echo "Running full CI" echo 'image_names=["relay", "relay-pop"]' >> $GITHUB_OUTPUT echo 'targets=["x86_64-unknown-linux-gnu", "aarch64-unknown-linux-gnu"]' >> $GITHUB_OUTPUT - echo 'runners=["ubuntu-20.04", "ubuntu-22.04-arm64-relay"]' >> $GITHUB_OUTPUT echo 'platforms=["linux/amd64","linux/arm64"]' >> $GITHUB_OUTPUT else echo "Skipping some CI steps" echo 'image_names=["relay"]' >> $GITHUB_OUTPUT echo 'targets=["x86_64-unknown-linux-gnu"]' >> $GITHUB_OUTPUT - echo 'runners=["ubuntu-20.04"]' >> $GITHUB_OUTPUT echo 'platforms=["linux/amd64"]' >> $GITHUB_OUTPUT fi outputs: image_names: "${{ steps.set-outputs.outputs.image_names }}" targets: "${{ steps.set-outputs.outputs.targets }}" - runners: "${{ steps.set-outputs.outputs.runners }}" platforms: "${{ steps.set-outputs.outputs.platforms }}" full_ci: "${{ steps.set-outputs.outputs.full_ci }}" From d9ab6579c4350ae69a296fcc9af2df583a5bbabe Mon Sep 17 00:00:00 2001 From: Riccardo Busetti Date: Tue, 7 Jan 2025 15:25:52 +0100 Subject: [PATCH 18/18] Fix --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 35c0d1e8f5..4b6cadba93 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ **Internal**: - Remove the `spool` command from Relay. ([#4423](https://github.com/getsentry/relay/pull/4423)) +- Bump `sentry-native` to `0.7.17` and remove cross compilation in CI. ([#4427](https://github.com/getsentry/relay/pull/4427)) ## 24.12.1