Skip to content

Device-domain config option breaks controller operation #241

@v1shnya

Description

@v1shnya

Use docker-compose-demo.yml. I only removed git checkout commands from Dockerfile-demo to pull the latest code

docker compose -f docker-compose-demo.yml build
docker compose -f docker-compose-demo.yml up

then connect to the controller docker exec -it demo-controller clixon_cli -f /usr/local/etc/clixon/controller.xml

Before opening connection to the devices, add the device-domain option. Connections are established.

nobody@da44d27c592a> show configuration | display cli
set devices device openconfig1
set devices device openconfig1 enabled true
set devices device openconfig1 user noc
set devices device openconfig1 conn-type NETCONF_SSH
set devices device openconfig1 addr r1
set devices device openconfig2
set devices device openconfig2 enabled true
set devices device openconfig2 user noc
set devices device openconfig2 conn-type NETCONF_SSH
set devices device openconfig2 addr r2

nobody@da44d27c592a> configure
nobody@da44d27c592a[/]# set devices device openconfig* device-domain OPENCONFIG
nobody@da44d27c592a[/]# commit local
nobody@da44d27c592a[/]# exit
nobody@da44d27c592a> connection open

nobody@8042b702edde> show connections
Name                    State      Time                   Logmsg
==================================================
openconfig1             OPEN       2026-02-04T17:05:05
openconfig2             OPEN       2026-02-04T17:05:05

Now, it looks like the controller can't identify proper YANG models for the devices

nobody@da44d27c592a> show configuration | display cli
Feb  4 17:00:51.713818: pipe_showas_fn: 310: Netconf error: Parse top file: application unknown-element Failed to find YANG spec of XML node: restconf with parent: config in namespace: http://clicon.org/restconf <bad-element>restconf</bad-element>
cligen_eval_pipe_pre child retval:-1

nobody@8042b702edde> show devices openconfig1 yang
Feb  4 17:10:33.202530: show_yang_revisions: 2428: Netconf error: Get configuration: application operation-failed Failed to find YANG spec of XML node: restconf with parent: config in namespace: http://clicon.org/restconf. Internal error, backend returned invalid XML. <bad-element>restconf</bad-element>
CLI command error

At the same time, the device configurations were successfully pulled from the devices

nobody@8042b702edde> show configuration
<devices xmlns="http://clicon.org/controller">
   <device>
      <name>openconfig1</name>
      <enabled>true</enabled>
      <user>noc</user>
      <conn-type>NETCONF_SSH</conn-type>
      <device-domain>OPENCONFIG</device-domain>
      <addr>r1</addr>
      <config>
         <restconf xmlns="http://clicon.org/restconf">
            <enable>true</enable>
            <auth-type>none</auth-type>
            <debug>0</debug>
            <log-destination>file</log-destination>
            <pretty>false</pretty>
            <socket>
               <namespace>default</namespace>
               <address>0.0.0.0</address>
               <port>80</port>
               <ssl>false</ssl>
            </socket>
         </restconf>
      </config>
   </device>
   <device>
      <name>openconfig2</name>
      <enabled>true</enabled>
      <user>noc</user>
      <conn-type>NETCONF_SSH</conn-type>
      <device-domain>OPENCONFIG</device-domain>
      <addr>r2</addr>
      <config>
         <restconf xmlns="http://clicon.org/restconf">
            <enable>true</enable>
            <auth-type>none</auth-type>
            <debug>0</debug>
            <log-destination>file</log-destination>
            <pretty>false</pretty>
            <socket>
               <namespace>default</namespace>
               <address>0.0.0.0</address>
               <port>80</port>
               <ssl>false</ssl>
            </socket>
         </restconf>
      </config>
   </device>
</devices>

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions