Skip to content

Commit f09b22b

Browse files
committed
Add test workflow
1 parent 57efbaa commit f09b22b

File tree

1 file changed

+70
-0
lines changed

1 file changed

+70
-0
lines changed

.github/workflows/test.yml

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,3 +56,73 @@ jobs:
5656

5757
- name: Run Cargo Tests
5858
run: cargo test --workspace --target ${{ matrix.target }} ${{ matrix.feature-args }}
59+
60+
cross-platform-test:
61+
strategy:
62+
fail-fast: false
63+
matrix:
64+
os: [macos-14, macos-14-large]
65+
feature-args: ['', '-Funstable-mobile-app']
66+
include:
67+
- feature-args: ''
68+
feature-suffix: ''
69+
- feature-args: '-Funstable-mobile-app'
70+
feature-suffix: ' (-Funstable-mobile-app)'
71+
72+
name: Build on macOS 14, Test on macOS 13${{ matrix.feature-suffix }}
73+
runs-on: ${{ matrix.os }}
74+
75+
steps:
76+
- name: Checkout Repository
77+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # 4.2.2
78+
79+
- name: Cache Dependencies
80+
uses: swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # 2.8.0
81+
82+
- name: Build on macOS 14
83+
run: cargo build --release --workspace ${{ matrix.feature-args }}
84+
85+
- name: Upload Build Artifacts
86+
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # 4.6.2
87+
with:
88+
name: sentry-cli-macos14-build${{ matrix.feature-suffix }}-${{ matrix.os }}
89+
path: target/release/sentry-cli
90+
retention-days: 1
91+
92+
cross-platform-test-runner:
93+
needs: cross-platform-test
94+
strategy:
95+
fail-fast: false
96+
matrix:
97+
os: [macos-13, macos-13-xlarge]
98+
feature-args: ['', '-Funstable-mobile-app']
99+
include:
100+
- os: macos-13
101+
base-os: macos-14-large
102+
- os: macos-13-xlarge
103+
base-os: macos-14
104+
- feature-args: ''
105+
feature-suffix: ''
106+
- feature-args: '-Funstable-mobile-app'
107+
feature-suffix: ' (-Funstable-mobile-app)'
108+
109+
name: Run macOS 13 ${{ matrix.feature-suffix }}
110+
runs-on: ${{ matrix.os }}
111+
112+
steps:
113+
- name: Checkout Repository
114+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # 4.2.2
115+
116+
- name: Download Build Artifacts
117+
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # 4.3.0
118+
with:
119+
name: sentry-cli-macos14-build${{ matrix.feature-suffix }}-${{ matrix.base-os }}
120+
path: ./bin
121+
122+
- name: Make Binary Executable
123+
run: chmod +x ./bin/sentry-cli
124+
125+
- name: Test Binary Compatibility
126+
run: |
127+
# Ensure the cli runs
128+
./bin/sentry-cli --help

0 commit comments

Comments
 (0)