Skip to content

fix: apply RPS on re-run and preserve nftables service ownership - #44

Merged
jestivald merged 6 commits into
mainfrom
fix/nftables-boot-ownership
Sep 5, 2026
Merged

jestivald merged 6 commits into
mainfrom
fix/nftables-boot-ownership

Conversation

@jestivald

@jestivald jestivald commented Sep 5, 2026 •

Copy link
Copy Markdown
Owner

Two re-run defects left the fleet in a different state from what the installer reported.

protect enabled the distribution's nftables.service alongside NA's own boot unit. The distribution's default configuration starts with flush ruleset, so a later boot can erase NA, CrowdSec and Docker tables depending on service ordering. Enable only na-firewall.service and leave the operator's distribution service state unchanged. The changelog describes migration without triggering the distribution unit's potentially destructive ExecStop.

optimize updated the RPS helper but used enable --now on an already-active oneshot. On a three-CPU node, rps_cpus stayed zero after upgrade while the installer reported success. Explicitly restart the RPS setup unit after updating it and report failed activation. This setup unit changes queue settings and does not restart the VPN process.

Validation: behavioral regressions reproduce both defects against v4.1.1; the fixed tests check service ownership, the resulting RPS CPU mask, and activation failure. All nine shell suites passed locally for the firewall change; the updated RPS suite and ShellCheck gate pass with the second fix. Changed modules are signed with minisign. Linux distribution checks run in CI on the final branch head.


Релизная обвязка v4.1.2 (два коммита поверх фиксов): NA_VERSION 4.1.1 → 4.1.2, секция ## v4.1.2 — 2026-09-06 в CHANGELOG (с инструкцией миграции существующих нод: systemctl disable nftables.service без --now), NA_REF=v4.1.2 в README/install.sh, новые комментарии и сообщения тестов — на языке репо; все 6 модулей переподписаны minisign последним коммитом (verify 6/6). Локально: 9/9 тест-сюит, shellcheck gate чист.

@jestivald jestivald changed the title fix: avoid enabling the global nftables boot service fix: apply RPS on re-run and preserve nftables service ownership Sep 5, 2026
jestivald and others added 2 commits September 6, 2026 01:31
…рез na-firewall.service); optimize на ре-ране явно перезапускает na-rps (RPS реально применяется, отказ = warn); changelog v4.1.2, NA_REF-примеры, комментарии и тесты — на языке репо

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@jestivald
jestivald marked this pull request as ready for review September 5, 2026 22:31
@jestivald
jestivald merged commit 70e34f5 into main Sep 5, 2026
6 checks passed
@jestivald
jestivald deleted the fix/nftables-boot-ownership branch September 5, 2026 22:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant