Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Cisco NX-OS: verify supported `gNMI` extensions with `capabilities`: `confirmed-commit`

Aperta
#171 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
45/100
Tipo di issue
Bug
Chiarezza
Da chiarire
Stato di attività
Tranquilla
Stack tecnologico
go
Ambito
api, networking

Direzione di ricerca

Inizia esaminando il riferimento gNMI confirmed-commit e la documentazione sulla programmabilità di NX-OS collegati nell’issue, quindi analizza l’integrazione di gnmiext menzionata in Workarounds. Determina se capabilities possono rilevare in modo affidabile il supporto o se è necessario un rilevamento basato sulla release; il lavoro è completato quando lo stato di supporto può essere verificato prima di usare l’estensione.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

area/switch-automation firmware-bug platform/nx vendor/cisco

Description

Devices do not return supported gNMI extension in capabilities responses.

Example: gNMI extension confirmed-commits

The gNMI confirmed-commits extension is supported on NXOS starting from 10.6.2.

Suspected Issue

Device does not add a list of the supported extensions into their capabilities responses (standard is unclear about it).

Reproduction

We verified the extension is supported, by first issuing a Set request configured to use the confirmed-commit extension:

❯ gnmic -a localhost -u admin -p admin --port 9340 --skip-verify set --commit-request --commit-id=10 --rollback-duration=10s --update-path="System/fm-items/lldp-items"  --update-value '{"adminSt":"disabled"}'
{
  "source": "localhost",
  "timestamp": 1770122720198432232,
  "time": "2026-02-03T13:45:20.198432232+01:00",
  "results": [
    {
      "operation": "UPDATE",
      "path": "System/fm-items/lldp-items"
    }
  ]
}

Next we log into the target machine and see the transactions:

leaf1# show grpc gnmi transactions

=============
gRPC Endpoint
=============

Vrf            : management
Server address : [::]:9339

Cert notBefore : Feb  3 11:29:14 2026 GMT
Cert notAfter  : Feb  4 11:29:14 2026 GMT
Client Root Cert notBefore : n/a
Client Root Cert notAfter  : n/a

RPC          DataType   Session         Time In              Duration(ms) Status
------------ ---------- --------------- -------------------- ------------ ------
Set          -          8               02/03 12:45:20       42           0
subtype: dtx:  st: path:
Update   -     OK  /System/fm-items/lldp-items
Commit Type: CommitRequest   Persist: 10                   Timeout :10

Unfortunately, the device does not advertise that it supports this extension via the capabilities request:

❯ gnmic -a localhost -u admin -p admin --port 9340 --skip-verify capabilities --print-request
Capabilities Request:
{}
Capabilities Response:
gNMI version: 0.8.0
supported models:
  - Cisco-NX-OS-device, Cisco Systems, Inc., 2025-12-12
  - DME, Cisco Systems, Inc.,
  - Cisco-NX-OS-Syslog-oper, Cisco Systems, Inc., 2019-08-15
supported encodings:
  - JSON
  - PROTO

Workarounds:

  1. find/design a method to discover if this capability is supported before we integrate it into gnmiext, or
  2. blindly rely on release name and date
Lingua principale
Go
Stelle
12
Fork
9
Merge medio
3g 15h
PR unite (30g)
46

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di ironcore-dev/network-operator

Tutte le issue di ironcore-dev/network-operator

Issue simili

Altre issue su Go

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.