Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion crude_engine/schemas/signal_contact.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ methods:
sense_fan_module: false
sense_module: false
sense_module_removal: false
sense_ps_state: false
# Per-PSU dict {psid: bool} (#293 / 1.17 anchor); no PS rows → {} (not bool/None).
sense_ps_state: {}
sense_envm_removal: false
sense_envm_not_in_sync: false
sense_ring_redundancy: false
Expand Down
15 changes: 7 additions & 8 deletions crude_engine/wire/diagnostic.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3647,22 +3647,21 @@ attributes:
sources:
snmp:
read:
# INDEX {hm2SigConID, hm2PSID}; key by contact for get_signal_contact (#235)
# INDEX {hm2SigConID, hm2PSID} → per-PSU dict {psid: bool} per contact
# (#293 Rank1; 1.17 anchor + archive signal_contact.yaml ps_state).
# group=SigConID (row key), inner=PSID. Was key_field collapse → scalar (#235).
oid: 1.3.6.1.4.1.248.11.22.1.3.1.2.1.1
method: walk
index_fields:
- {name: hm2SigConID, type: integer}
- {name: hm2PSID, type: integer}
key_field: hm2SigConID
index: [group, inner]
mops:
read:
mib: HM2-DIAGNOSTIC-MIB
table: hm2SigConPSEntry
field: hm2SigConSensePSState
index_field: hm2SigConID
index_fields:
- hm2SigConID
- hm2PSID
# MOPS rows carry no hm2PSID column → PSID from per-contact row order
# (1.17 mops_hios + archive inner_index_field: _enumerate). #293 Rank1.
inner_index_field: _enumerate
validation:
allowed:
- true
Expand Down
10 changes: 9 additions & 1 deletion crude_engine/wire/ssh/diagnostic.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -194,7 +194,7 @@ attributes:
# Prefer archive signal_contact.yaml + napalm-hios 1.17 (ssh_hios get_signal_contact).
# Dedup: one CLI exec per contact across fields. No invent floors.
# Left undeclared (no simple 1.17 dot-key / table≠schema-bool): sense_fan_module,
# sense_module, sense_ps_state (PS table), sense_if_link_alarm (Intf table).
# sense_module, sense_if_link_alarm (Intf table).
hm2sigconid:
sources:
ssh:
Expand Down Expand Up @@ -245,6 +245,14 @@ attributes:
ssh:
read: {command: "show signal-contact {entity} all", iterate_from: [1, 2], field: "ACA not in sync", tag: value_map, map: sigcon_sense_ssh}

# sense_ps_state (#293 Rank1): per-PSU dict {psid: bool} — Power Supply/Status table
# (1.17 ssh_hios PS rows; archive ps_state: table section 1, key_column 0, column 1).
# Same per-contact show (iterate cache) — no extra fanout. No table → {} (honest).
hm2sigconsensepsstate:
sources:
ssh:
read: {command: "show signal-contact {entity} all", iterate_from: [1, 2], parser: table, section: 1, key_column: 0, column: 1, tag: value_map, map: sigcon_sense_ssh}

hm2sigconsenseringredundancy:
sources:
ssh:
Expand Down
Loading