mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-08 11:46:35 +00:00
Adds a lint-packages target/workflow that parses the generated packaging metadata with each ecosystem's native parser (dpkg-parsechangelog, rpmspec, bash -n for the PKGBUILD), failing on any parser stderr so warnings cannot slip through. Wired into the make lint fan-out and ci-orchestrator's lint gate; an install group provisions the parsers (best-effort, cross-distro). Hardens package_mirror so the generated changelogs parse without warnings: every RPM body line gets a '- ' continuation prefix (a column-0 '*' was read as a new %changelog entry -> 'bad date'), and the archived-releases notice is folded into the oldest kept entry instead of trailing after the final entry (free text there made dpkg-parsechangelog warn). Regenerates packaging/debian/changelog and the Fedora spec accordingly. Adds a test-lint check (test_package_changelog_completeness) asserting both package changelogs list every CHANGELOG.md + docs/changelog release and that their inline window matches CHANGELOG.md, plus unit regressions for the RPM continuation prefix and the Debian footer fold. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Lint Scripts
This directory contains scripts that run repository lint checks.
- 🧹 Execute focused lint checks for workflows, Ansible, Python, and shell scripts
- 🔎 Keep lint entry points small, explicit, and callable from
make - ✅ Separate lint execution from tool installation and environment bootstrap
The scope of this folder is lint execution.
Tool installation belongs in scripts/install, while build and test workflows should stay in their dedicated script directories.