Skip to content

repo-reprepro: log a count of skipped debs, not one line each - #10303

Merged
igorpecovnik merged 1 commit into
mainfrom
repo-reprepro-concise-skip-log
Jul 29, 2026
Merged

repo-reprepro: log a count of skipped debs, not one line each#10303
igorpecovnik merged 1 commit into
mainfrom
repo-reprepro-concise-skip-log

Conversation

@igorpecovnik

@igorpecovnik igorpecovnik commented Jul 29, 2026

Copy link
Copy Markdown
Member

Follow-up to #10301. That change skips debs missing on disk, but echoed one line per missing deb. A single target (e.g. armbian) holds thousands of debs, and on a partial build most are absent — so the generated reprepro.sh printed thousands of skip lines.

Combined with the caller running it under set -x (which reprints the very long for one_deb in <all debs> header on every iteration), a CI run produced a ~200 MB log and a multi-minute step (observed in armbian/ci#35 test runs).

Fix

Count the skipped debs and log a single summary line per target instead of one per deb:

[ "${missing_debs}" -gt 0 ] && echo "  ${missing_debs} expected deb(s) not present on disk, skipped"

Selection and includedeb behaviour are unchanged. (The set -x half is fixed on the caller side in armbian/ci#35.)

Testing

  • Python parses; generated bash passes bash -n.
  • Behaviour test (2 present, 3 missing): prints 3 expected deb(s) not present on disk, skipped and includedeb receives only the 2 present debs.

Summary by CodeRabbit

  • Bug Fixes
    • Improved repository processing output by replacing repeated missing-package messages with a single summary indicating how many expected packages were unavailable.
    • Continued processing available packages as before.

The missing-deb skip added in the previous change echoed one line per absent
deb. A single target can hold thousands of debs, and on a partial build most
are absent, so this printed thousands of lines -- and when the caller runs the
script under `set -x` (which reprints the long `for ... in <all debs>` header
every iteration) the CI log ballooned to hundreds of MB.

Count the skipped debs instead and log a single summary line per target. The
selection and includedeb behaviour are unchanged.

Signed-off-by: Igor Pecovnik <igor@armbian.com>
@coderabbitai

coderabbitai Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

The generated reprepro script now counts absent expected deb files during selection and emits a single summary message after the loop, while continuing to build the list of present debs.

Changes

Reprepro deb selection

Layer / File(s) Summary
Aggregate missing deb reporting
lib/tools/info/repo-reprepro.py
The generated script replaces per-file missing-deb messages with a counter and one conditional summary line after the selection loop.

Estimated code review effort: 2 (Simple) | ~5 minutes

Possibly related PRs

  • armbian/build#10301: Both changes update missing .deb handling in the generated reprepro.sh script.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main change: replacing per-deb skip logs with a single count summary.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch repo-reprepro-concise-skip-log

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions github-actions Bot added size/small PR with less then 50 lines Needs review Seeking for review Framework Framework components 08 Milestone: Third quarter release labels Jul 29, 2026
@igorpecovnik
igorpecovnik merged commit 5355281 into main Jul 29, 2026
1 check passed
@igorpecovnik
igorpecovnik deleted the repo-reprepro-concise-skip-log branch July 29, 2026 06:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

08 Milestone: Third quarter release Framework Framework components Needs review Seeking for review size/small PR with less then 50 lines

Development

Successfully merging this pull request may close these issues.

1 participant