Skip to content

Commit dbb71ca

Browse files
committed
feat(_checks-rs): default dev-profile debuginfo to line-tables-only
Full debuginfo dominates cargo target size (~58 of 61 GB on the kunobi-frontend workspace) and is the main driver of the runner-pool ephemeral-storage evictions on builder1. line-tables-only keeps file:line backtraces at a fraction of the disk, and shrinks the kache store and S3 transfer along with target/. Applied to clippy/test/integration-build/build steps via a new rust_debuginfo input (default line-tables-only, 'full' restores the cargo default). The coverage step is exempt: tarpaulin manages its own debuginfo flags.
1 parent 7f61511 commit dbb71ca

1 file changed

Lines changed: 8 additions & 0 deletions

File tree

.github/workflows/_checks-rs.yaml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,10 @@ on:
163163
description: "Enable Rust compilation caching via kache"
164164
type: boolean
165165
default: false
166+
rust_debuginfo:
167+
description: "CARGO_PROFILE_DEV_DEBUG for check/test builds (coverage builds are exempt). Full debuginfo dominates target size; the default keeps file:line backtraces at a fraction of the disk. Set 'full' to restore cargo's default. Must be a valid cargo `profile.debug` value."
168+
type: string
169+
default: "line-tables-only"
166170
cache_bucket:
167171
description: "S3-compatible bucket name for caching (e.g., Cloudflare R2)"
168172
type: string
@@ -383,13 +387,15 @@ jobs:
383387
if: inputs.enable_linting
384388
env:
385389
CARGO_INCREMENTAL: ${{ inputs.use_rust_cache && '0' || '' }}
390+
CARGO_PROFILE_DEV_DEBUG: ${{ inputs.rust_debuginfo }}
386391
RUSTFLAGS: "-D warnings"
387392
run: ${{ inputs.lint_command }}
388393

389394
- name: Run tests
390395
if: inputs.enable_tests && !inputs.enable_coverage
391396
env:
392397
CARGO_INCREMENTAL: ${{ inputs.use_rust_cache && '0' || '' }}
398+
CARGO_PROFILE_DEV_DEBUG: ${{ inputs.rust_debuginfo }}
393399
run: ${{ inputs.test_command }} ${{ inputs.test_args }}
394400

395401
- name: Run tests with coverage
@@ -402,6 +408,7 @@ jobs:
402408
if: inputs.enable_integration_tests && inputs.integration_build_command != ''
403409
env:
404410
CARGO_INCREMENTAL: ${{ inputs.use_rust_cache && '0' || '' }}
411+
CARGO_PROFILE_DEV_DEBUG: ${{ inputs.rust_debuginfo }}
405412
run: ${{ inputs.integration_build_command }}
406413

407414
- name: Run integration tests
@@ -412,6 +419,7 @@ jobs:
412419
if: inputs.enable_build
413420
env:
414421
CARGO_INCREMENTAL: ${{ inputs.use_rust_cache && '0' || '' }}
422+
CARGO_PROFILE_DEV_DEBUG: ${{ inputs.rust_debuginfo }}
415423
run: ${{ inputs.build_command }}
416424

417425
- name: Security audit with cargo-audit

0 commit comments

Comments
 (0)