πŸ› οΈ Troubleshoot TrueNAS Configuration Runs

Diagnose failures in configure_truenas.yml without blindly rerunning every stage. Refer to Bootstrap TrueNAS for Ansible, Add TrueNAS Local Users, and Add TrueNAS Shares for prerequisites.

πŸ“‹ Evidence to Collect

πŸ”Ž Initial Controller Checks

ansible-inventory -i inventory/truenas/inventory.ini --graph
ansible-playbook -i inventory/truenas/inventory.ini playbooks/truenas/configure_truenas.yml --limit truenas-01 --syntax-check --ask-vault-pass
ansible-playbook -i inventory/truenas/inventory.ini playbooks/truenas/configure_truenas.yml --limit truenas-01 --tags truenas_preflight --ask-vault-pass

Preflight connects to the NAS for read-only readiness, version, and administrator checks. Syntax validation alone does not establish SSH, root escalation, middleware access, or API compatibility. Use -k/-K only for the corresponding connection/become password, separately from vault authentication.

πŸ“ Symptom Matrix to Complete

Symptom First Boundary to Check Required Guidance
SSH or become failure Inventory connection identity and approved privileges Verified connection/host-key checks and console recovery
Middleware not ready or unsupported version Always-run preflight Expected wait behavior and supported-release decision
Group name not found during preview Existing NAS identities versus simulated creation Staged prerequisite creation, not ignored API errors
Share path missing during preview Dataset existence and selected tags Dataset creation before share validation
Existing password unchanged Create-only secret handling Deliberate password reset, not vault-only edits
Permission denied from a client Dataset ACL, share restrictions, identity mapping Non-administrator access tests without globally loosening access
Repeated changes or unexpected side effects Selected complete lists and raw post-calls Review non-idempotent calls and completed stages before retry

βœ… Recovery and Escalation