Skip to content

feat(sentry_integration): exec app in subprocess #879

feat(sentry_integration): exec app in subprocess

feat(sentry_integration): exec app in subprocess #879

name: build sentry_streams
on:
pull_request:
push:
branches:
- main
- release-sentry-streams/**
jobs:
linux:
permissions: read-all
timeout-minutes: 5
runs-on: ${{ matrix.platform.runner }}
env:
# Setting CMAKE_POLICY_VERSION_MINIMUM to 3.5 because librdkafka imported
# by rdkafka does not compile with cmake 4 provided by the maturin action.
CMAKE_POLICY_VERSION_MINIMUM: "3.5"
strategy:
matrix:
platform:
- runner: ubuntu-latest
target: x86_64
- runner: ubuntu-24.04-arm
target: aarch64
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065
with:
python-version: 3.11
- name: Build wheels
uses: PyO3/maturin-action@aef21716ff3dcae8a1c301d23ec3e4446972a6e3
with:
target: ${{ matrix.platform.target }}
args: --release --out dist --find-interpreter --features=extension-module
sccache: ${{ !startsWith(github.ref, 'refs/tags/') }}
manylinux: "2014"
working-directory: ./sentry_streams
before-script-linux: |
cmake --version
# If we're running on rhel centos, install needed packages.
if command -v yum &> /dev/null; then
yum update -y && yum install -y openssl openssl-devel pkgconfig
else
# If we're running on debian-based system.
apt update -y && apt-get install -y libssl-dev openssl pkg-config
fi
docker-options: -e CMAKE_POLICY_VERSION_MINIMUM
- name: Upload wheels
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02
with:
name: wheels-linux-${{ matrix.platform.target }}
path: ./sentry_streams/dist
macos:
permissions: read-all
timeout-minutes: 5
runs-on: ${{ matrix.platform.runner }}
env:
# Setting CMAKE_POLICY_VERSION_MINIMUM to 3.5 because librdkafka imported
# by rdkafka does not compile with cmake 4 provided by the maturin action.
CMAKE_POLICY_VERSION_MINIMUM: "3.5"
strategy:
matrix:
platform:
- runner: macos-latest
target: x86_64
- runner: macos-latest
target: aarch64
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065
with:
python-version: 3.11
- name: Build wheels
uses: PyO3/maturin-action@aef21716ff3dcae8a1c301d23ec3e4446972a6e3
with:
target: ${{ matrix.platform.target }}
args: --release --out dist --find-interpreter --features=extension-module
sccache: ${{ !startsWith(github.ref, 'refs/tags/') }}
working-directory: ./sentry_streams
- name: Upload wheels
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02
with:
name: wheels-macos-${{ matrix.platform.target }}
path: ./sentry_streams/dist
sdist:
permissions: read-all
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- name: Build sdist
uses: PyO3/maturin-action@aef21716ff3dcae8a1c301d23ec3e4446972a6e3
with:
command: sdist
args: --out dist
working-directory: ./sentry_streams
- name: Upload sdist
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02
with:
name: wheels-sdist
path: ./sentry_streams/dist
merge:
permissions: read-all
name: Create Release Artifact
runs-on: ubuntu-latest
needs: [linux, macos, sdist]
steps:
- uses: actions/upload-artifact/merge@ea165f8d65b6e75b540449e92b4886f43607fa02
with:
# Craft expects release assets from github to be a single artifact named after the sha.
name: ${{ github.sha }}
pattern: wheels-*
delete-merged: true