Skip to content

Commit 673df98

Browse files
committed
chore(ci): add memory profiling
1 parent 1c7a75e commit 673df98

File tree

1 file changed

+17
-41
lines changed

1 file changed

+17
-41
lines changed

.github/workflows/ci.yml

Lines changed: 17 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -127,47 +127,18 @@ jobs:
127127
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
128128
- run: cargo nextest run -p cargo-codspeed --partition hash:${{ matrix.partition }}/5
129129

130-
compat-integration-test-instrumentation:
131-
runs-on: ubuntu-latest
132-
strategy:
133-
matrix:
134-
build-args:
135-
- "-p codspeed"
136-
- "-p codspeed-bencher-compat"
137-
- "--features async_futures -p codspeed-criterion-compat"
138-
- "-p codspeed-divan-compat"
139-
- "-p codspeed-divan-compat-examples"
140-
steps:
141-
- uses: actions/checkout@v4
142-
with:
143-
submodules: true
144-
- uses: moonrepo/setup-rust@v1
145-
with:
146-
cache-target: release
147-
env:
148-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
149-
150-
- run: cargo install --path crates/cargo-codspeed --locked
151-
152-
- run: cargo codspeed build ${{ matrix.build-args }}
153-
154-
- name: Run the benchmarks
155-
uses: CodSpeedHQ/action@main
156-
env:
157-
MY_ENV_VAR: "YES"
158-
with:
159-
run: cargo codspeed run
160-
mode: instrumentation
161-
token: ${{ secrets.CODSPEED_TOKEN }}
162-
163-
compat-integration-test-walltime:
164-
runs-on: codspeed-macro
130+
compat-integration-test:
165131
strategy:
166132
matrix:
167133
package:
168134
- codspeed-divan-compat
169135
- codspeed-divan-compat-examples
170136
- codspeed-criterion-compat
137+
mode:
138+
- walltime
139+
- instrumentation
140+
- memory
141+
runs-on: ${{ matrix.mode == 'walltime' && 'codspeed-macro' || 'ubuntu-latest' }}
171142
steps:
172143
- uses: actions/checkout@v4
173144
with:
@@ -180,18 +151,24 @@ jobs:
180151

181152
- run: cargo install --path crates/cargo-codspeed --locked
182153

154+
- name: Remove .cargo/config.toml to not force instrumentation mode
155+
if: ${{ matrix.mode != 'instrumentation' }}
156+
run: rm -f .cargo/config.toml
157+
183158
- run: |
184-
# Remove the cargo config else it forces instrumentation mode
185-
rm -f .cargo/config.toml
186-
cargo codspeed build -p ${{ matrix.package }}
159+
if [ "${{ matrix.package }}" = "codspeed-criterion-compat" ]; then
160+
cargo codspeed build -p ${{ matrix.package }} --features async_futures
161+
else
162+
cargo codspeed build -p ${{ matrix.package }}
163+
fi
187164
188165
- name: Run the benchmarks
189166
uses: CodSpeedHQ/action@main
190167
env:
191168
MY_ENV_VAR: "YES"
192169
with:
193170
run: cargo codspeed run
194-
mode: walltime
171+
mode: ${{ matrix.mode }}
195172
token: ${{ secrets.CODSPEED_TOKEN }}
196173

197174
musl-build-check:
@@ -228,8 +205,7 @@ jobs:
228205
- tests-without-cargo-codspeed
229206
- test-cargo-codspeed
230207
- msrv-check
231-
- compat-integration-test-instrumentation
232-
- compat-integration-test-walltime
208+
- compat-integration-test
233209
- musl-build-check
234210
steps:
235211
- uses: re-actors/alls-green@release/v1

0 commit comments

Comments
 (0)