Commit Graph

5 Commits

Author SHA1 Message Date
Robert McMahon 376616808e Add fabric/concentrator packages, FDIR, and lab documentation
Introduce fiwicontrol.fabric (definition, merge, builder CLI, fingerprint checks)
and fiwicontrol.concentrator for local workstation snapshots. Add system scripts
(fabric_realize, dump_concentrator, pcie_hotswap_harness, acroname discovery).

Document architecture (docs/architecture.md) and fault handling (docs/fdir.md);
expand fabric-builder, system-test-scripts, pcie-hotswap-setup, install, and
README with env vars, security boundaries, and intended-use limits.

Harden INI merge and serial resolution for pcie_bdf and patch_panel_ports;
bound patch-panel JSON reads; gate remote SSH tests behind FIWI_RUN_REMOTE_TESTS.

fabric_realize: exit codes, --realize-discovery-timeout, --patch-panel-json,
and [FiWi-FDIR] stderr lines. Fabric.realize supports discovery timeout and
FDIR logging; binding_cache_status logs fault paths.

Made-with: Cursor
2026-04-12 20:33:54 -07:00
Robert McMahon 58489091c3 test: always run remote power integration tests (remove skipUnless)
Remote tests fail loudly when SSH or the rig is misconfigured; FIWI_SSH_CONFIG
defaults remain via conftest and unittest module setup.

Made-with: Cursor
2026-04-10 18:46:31 -07:00
Robert McMahon 14ba9783fe fix(ssh): FIWI_SSH_CONFIG -F for tests; skip remote tests without pubkey auth
- node_control: honor FIWI_SSH_CONFIG (insert -F after ssh) so clients skip
  broken /etc/ssh/ssh_config.d drop-ins; use same argv for clean/pkill helpers.
- tests/conftest.py: setdefault FIWI_SSH_CONFIG to tests/fixtures/ssh_config_minimal.
- Fixture: writable UserKnownHostsFile, BatchMode, accept-new.
- test_remote_power_dependencies: skipUnless passwordless root@FIWI_REMOTE_IP;
  setdefault fixture path for unittest runs; FIWI_FORCE_REMOTE_TESTS to always run.
- docs/install.md: document FIWI_SSH_CONFIG for Fedora-style ssh_config.d errors.

Made-with: Cursor
2026-04-10 18:45:18 -07:00
Robert McMahon c3df0145ea Document bring-up; fix SSH as root; remote power setup tweaks
- docs/install.md: add Bring up systems checklist; generic clone URL; keep remote/PEP668 notes
- README and power design doc: point new operators at the checklist
- node_control: always use root@host for sshtype ssh (not bare host / local username)
- power: FIWI_REMOTE_PYTHON and --remote-python for setup-remote and discovery; tests honor env
- remote_setup: apply pip flags to both pip lines; optional remote python in script

Made-with: Cursor
2026-04-10 17:33:31 -07:00
Robert McMahon be9cc4c7b5 major work 2026-04-10 17:14:15 -07:00