* scripts/lint/autoformat.sh:
- rename run_sort_claude_settings worker to run_claude (matches the
renamed scripts/lint/claude.sh).
- drop the EXIT trap that wiped status_dir; cleanup happens explicitly
after `wait` returns, so a parallel worker that interrupts the
parent never races a vanished status dir.
- each worker now captures its tool's exit code and writes one of
OK / SKIP / FAIL. Tolerated `expected violations remain`-style exits
(markdownlint-cli2 rc≤1, ansible-lint rc≤2) still count as OK; only
real failures count as FAIL.
- all workers run to completion regardless of individual tool failures
(so the user always sees the full picture); after the summary, the
script exits 1 if any worker reported FAIL.
* scripts/lint/sort_claude_settings.sh -> scripts/lint/claude.sh
(history preserved via git mv); update test_claude_settings_sorted.py
fix-hint accordingly.
Plus working-tree drift across roles/, group_vars/, inventories/,
requirements/, and .pre-commit-config.yaml accumulated from the
make-test setup phase regenerating generated artefacts during recent
test runs.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
SSH Service (Client)
Description
This role installs the SSH client packages required to enable secure remote access and key-based authentication on Linux systems. It ensures that the appropriate SSH client is installed depending on the target distribution and that the installation is executed only once.
The role provides the foundation for SSH-based workflows and is designed to be used as a dependency by other roles that require SSH functionality.
Overview
Optimized for portability and idempotency, this role performs the following tasks:
- Installs the SSH client using the system package manager
- Automatically selects the correct package name for the target Linux distribution
- Ensures the installation runs only once using a shared run-once mechanism
- Serves as a reusable system-level SSH dependency for other roles
Purpose
The primary purpose of this role is to guarantee that an SSH client is available on the system before executing any SSH-related operations, such as key generation, remote access, or automated provisioning.
It is intentionally lightweight and does not configure the SSH server or modify SSH configuration files.
Supported Distributions
The role installs the correct SSH client package for the following platforms:
- Debian / Ubuntu →
openssh-client - Arch Linux →
openssh - Fedora / Red Hat / CentOS →
openssh-clients - Alpine Linux →
openssh-client
Features
- Distribution-aware package selection
- Idempotent execution using a run-once flag
- Minimal scope (client-only, no server configuration)
- Reusable dependency role for higher-level SSH workflows
- Best practices compliant with modern SSH usage
Credits
Developed and maintained by Kevin Veen-Birkenbach. Learn more at veen.world. Part of the Infinito.Nexus Project. Licensed under the Infinito.Nexus Community License (Non-Commercial).