* Reworks some workflows to run a script instead Advantages are: - Only one set of tests needs maintenance. - Local results match workflows, no surprises. - Reduced reliance on GitHub actions. Fixes #50, #168, #169, #171, #507 * Adds macos to the test matrix
41 lines
1.5 KiB
YAML
41 lines
1.5 KiB
YAML
name: Binary size report
|
|
on: pull_request
|
|
|
|
jobs:
|
|
cargo_bloat:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
# Setup
|
|
- uses: actions/setup-python@v1
|
|
with:
|
|
python-version: "3.10"
|
|
- uses: actions-rs/cargo@v1
|
|
with:
|
|
command: install
|
|
args: cargo-bloat
|
|
|
|
# First run: PR
|
|
- uses: actions/checkout@v2
|
|
with:
|
|
submodules: true
|
|
- name: Set up OpenSK
|
|
run: ./setup.sh
|
|
- name: Run bloat on the PR
|
|
run: RUSTFLAGS="-C link-arg=-icf=all -C force-frame-pointers=no -C link-arg=-Tnrf52840_layout.ld" cargo bloat --release --target=thumbv7em-none-eabi --features=with_ctap1,vendor_hid --crates >> .github/workflows/bloat_output_new.txt
|
|
|
|
# Second run: PR
|
|
- uses: actions/checkout@v2
|
|
with:
|
|
submodules: true
|
|
ref: ${{ github.base_ref }}
|
|
path: OpenSK_base
|
|
- name: Set up OpenSK
|
|
working-directory: ./OpenSK_base
|
|
run: ./setup.sh
|
|
- name: Run bloat on base
|
|
working-directory: ./OpenSK_base
|
|
run: RUSTFLAGS="-C link-arg=-icf=all -C force-frame-pointers=no -C link-arg=-Tnrf52840_layout.ld" cargo bloat --release --target=thumbv7em-none-eabi --features=with_ctap1,vendor_hid --crates >> "$GITHUB_WORKSPACE/.github/workflows/bloat_output_old.txt"
|
|
|
|
- name: Run output formatter to echo workflow command
|
|
run: ./.github/workflows/bloat_formatter.sh bloat_output_new.txt bloat_output_old.txt bloat_comment.md
|