name: Metrics on: [pull_request_target] jobs: binary-size: runs-on: ubuntu-latest steps: - name: Install dependencies run: sudo apt-get install build-essential imagemagick libfreetype6-dev libjpeg-dev libpng-dev pkg-config - name: Install ARM toolchain uses: numworks/setup-arm-toolchain@2020-q2 - name: Checkout PR base uses: actions/checkout@v4 with: submodules: recursive ref: ${{ github.event.pull_request.base.sha }} path: base - name: Build base run: make -j2 -C base MODEL=n0110 epsilon.elf - name: Checkout PR head uses: actions/checkout@v4 with: submodules: recursive ref: ${{ github.event.pull_request.head.sha }} path: head - name: Build head run: make -j2 -C head MODEL=n0110 epsilon.elf - name: Retrieve binary size analysis id: binary_size run: echo "::set-output name=table::$(python3 head/build/metrics/binary_size.py base/output/release/device/n0110/epsilon.elf head/output/release/device/n0110/epsilon.elf --labels Base Head --sections .text .rodata .bss .data --custom 'Total (RAM)' .data .bss --custom 'Total (ROM)' .text .rodata .data --escape)" - name: Add comment uses: actions/github-script@v7 with: script: | await github.issues.createComment({ owner: context.repo.owner, repo: context.repo.repo, issue_number: context.payload.pull_request.number, body: `${{ steps.binary_size.outputs.table }}`, });