<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:15:44 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>OpenDaylight JIRA</title>
    <link>https://jira.opendaylight.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>8.20.10</version>
        <build-number>820010</build-number>
        <build-date>22-06-2022</build-date>
    </build-info>


<item>
            <title>[NETCONF-721] Running an edit-config through ODL Netconf?</title>
                <link>https://jira.opendaylight.org/browse/NETCONF-721</link>
                <project id="10142" key="NETCONF">netconf</project>
                    <description>&lt;p&gt;I&apos;m not sure if my issue here is 100% related to OpenDaylight because there are a few aspects to our stack, however our main goal is&#160;&lt;b&gt;How to run an Edit-Config netconf command through SSH into OpenDaylight?&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;To try to accomplish this, I am using netopeer2-cli to create an ssh connection to opendaylight netconf connection.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;First, I am not sure if this is a separate issue or part of the problem, but when I establish a connection to opendaylight via port 2830, I see a series of errors related to libyang:&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&lt;tt&gt;&amp;gt; connect --ssh --login admin --port 2830&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;The authenticity of the host &apos;localhost&apos; cannot be established.&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;ssh-rsa key fingerprint is ee:ee:a3:97:e3:76:44:17:09:00:c4:55:67:f6:f3:28:d1:b1:7c:1e.&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;Are you sure you want to continue connecting (yes/no)? yes&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;Password authentication&lt;/tt&gt;{{Password: }}&lt;br/&gt;
&lt;tt&gt;ly WARNING: Missing status in deprecated subtree (/opendaylight-queue-types:{grouping}&lt;span class=&quot;error&quot;&gt;&amp;#91;queue-prop-min-rate&amp;#93;&lt;/span&gt;/common-queue), inheriting.&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;ly WARNING: Missing status in deprecated subtree (/opendaylight-queue-types:{grouping}&lt;span class=&quot;error&quot;&gt;&amp;#91;queue-prop-min-rate&amp;#93;&lt;/span&gt;/rate), inheriting.&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&lt;em&gt;truncated&lt;/em&gt;&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;ly ERROR: Missing keyword &quot;key&quot; as a child to &quot;list&quot;. (/network-topology:network-topology/topology/node/opendaylight-topology-view:original-node)&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;ly WARNING: Missing status in deprecated subtree (/opendaylight-inventory:{grouping}&lt;span class=&quot;error&quot;&gt;&amp;#91;node&amp;#93;&lt;/span&gt;/id), inheriting.&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;ly WARNING: Missing status in deprecated subtree (/opendaylight-inventory:{grouping}&lt;span class=&quot;error&quot;&gt;&amp;#91;node&amp;#93;&lt;/span&gt;/node-connector), inheriting.&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&lt;em&gt;truncated&lt;/em&gt;&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;ly ERROR: Module &quot;opendaylight-meter-types&quot; parsing failed.&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;ly ERROR: Importing &quot;opendaylight-meter-types&quot; module into &quot;opendaylight-flow-types&quot; failed.&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;ly ERROR: Importing &quot;opendaylight-port-types&quot; module into &quot;flow-node-inventory&quot; failed.&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;ly ERROR: Missing keyword &quot;key&quot; as a child to &quot;list&quot;. (/openflow-instruction:instruction-container/instruction-choice/write-actions-case/write-actions/action)&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;ly ERROR: Module &quot;openflow-instruction&quot; parsing failed.&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&lt;em&gt;truncated&lt;/em&gt;&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;ly ERROR: Importing &quot;opendaylight-flow-types&quot; module into &quot;opendaylight-table-types&quot; failed.&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;ly ERROR: Module &quot;opendaylight-table-types&quot; parsing failed.&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;ly ERROR: Importing &quot;opendaylight-table-types&quot; module into &quot;sal-table&quot; failed.&lt;/tt&gt;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&lt;tt&gt;Here is the result of a `get-config` command:&lt;/tt&gt;&lt;/p&gt;



&lt;p&gt;&lt;tt&gt;&amp;gt; get-config --source=running&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;DATA&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&amp;lt;upgrade-config xmlns=&quot;urn:opendaylight:serviceutils:upgrade&quot;&amp;gt;&lt;/tt&gt;&lt;br/&gt;
{{ &amp;lt;upgradeInProgress&amp;gt;false&amp;lt;/upgradeInProgress&amp;gt;}}&lt;br/&gt;
&lt;tt&gt;&amp;lt;/upgrade-config&amp;gt;&lt;/tt&gt;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;So, the `ly` errors may be part of the problem or a separate issue. That said, when I try to connect to netconf via pure SSH, I get disconnected after 20 seconds:&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&lt;tt&gt;$ ssh -p 2830 admin@localhost -s netconf&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;Password authentication&lt;/tt&gt;&lt;br/&gt;
{{Password: }}&lt;br/&gt;
&lt;tt&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&amp;gt;&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&amp;lt;hello xmlns=&quot;urn:ietf:params:xml:ns:netconf:base:1.0&quot;&amp;gt;&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&amp;lt;capabilities&amp;gt;&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&amp;lt;capability&amp;gt;urn:ietf:params:xml:ns:yang:ietf-netconf-with-defaults?module=ietf-netconf-with-defaults&amp;amp;revision=2011-06-01&amp;lt;/capability&amp;gt;&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&amp;lt;capability&amp;gt;urn:opendaylight:openflowplugin:extension:general?module=openflowplugin-extension-general&amp;amp;revision=2014-07-14&amp;lt;/capability&amp;gt;&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&lt;em&gt;truncated&lt;/em&gt;&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&amp;lt;capability&amp;gt;urn:opendaylight:l2:types?module=opendaylight-l2-types&amp;amp;revision=2013-08-27&amp;lt;/capability&amp;gt;&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&amp;lt;/capabilities&amp;gt;&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&amp;lt;session-id&amp;gt;2&amp;lt;/session-id&amp;gt;&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&amp;lt;/hello&amp;gt;&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;]]&amp;gt;]]&amp;gt;&lt;/tt&gt;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Connection aside, when I do try to run&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&amp;gt; edit-config --target=running --config=/vagrant/odl-rmbn-reset.xml&lt;br/&gt;
ly ERROR: Failed to find &quot;running&quot; as a sibling to &quot;ietf-netconf:config-target&quot;.&lt;br/&gt;
cli_send_recv: Failed to send the RPC.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;So, the error that concerns me is&#160;&lt;b&gt;Failed to find &quot;running&quot; as a sibling to &quot;ietf-netconf:config-target&quot;&lt;/b&gt;. This tells me that running an edit-config doesn&apos;t work because odl-netconf-mdsal can&apos;t find the running configuration.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;So to simplify my question:&lt;/p&gt;

&lt;p&gt;&lt;b&gt;How does one run an edit-config against the running or candidate config in OpenDaylight?&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</description>
                <environment>&lt;ul&gt;
	&lt;li&gt;libnetconf2 v1.1.26&lt;/li&gt;
	&lt;li&gt;libyang v1.0.184&lt;/li&gt;
	&lt;li&gt;netopeer2 v1.1.39&lt;/li&gt;
	&lt;li&gt;sysrepo v1.4.70&lt;/li&gt;
	&lt;li&gt;ODL v0.11.0 (Sodium)&lt;/li&gt;
&lt;/ul&gt;



&lt;ul&gt;
	&lt;li&gt;ODL Features:&lt;/li&gt;
&lt;/ul&gt;



&lt;ul&gt;
	&lt;li&gt;service-wrapper&lt;/li&gt;
	&lt;li&gt;odl-restconf&lt;/li&gt;
	&lt;li&gt;odl-mdsal-apidocs&lt;/li&gt;
	&lt;li&gt;odl-openflowplugin-flow-services-rest&lt;/li&gt;
	&lt;li&gt;odl-openflowplugin-app-table-miss-enforcer&lt;/li&gt;
	&lt;li&gt;odl-openflowplugin-nxm-extensions&lt;/li&gt;
	&lt;li&gt;odl-openflowplugin-flow-services&lt;/li&gt;
	&lt;li&gt;odl-netconf-all&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&#160;&lt;/p&gt;</environment>
        <key id="33196">NETCONF-721</key>
            <summary>Running an edit-config through ODL Netconf?</summary>
                <type id="10104" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="3" iconUrl="https://jira.opendaylight.org/images/icons/priorities/major.svg">Medium</priority>
                        <status id="1" iconUrl="https://jira.opendaylight.org/images/icons/statuses/open.png" description="The issue is open and ready for the assignee to start work on it.">Open</status>
                    <statusCategory id="2" key="new" colorName="blue-gray"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="rovarga">Robert Varga</assignee>
                                    <reporter username="esender">Eric Sender</reporter>
                        <labels>
                    </labels>
                <created>Thu, 27 Aug 2020 18:27:22 +0000</created>
                <updated>Tue, 2 May 2023 19:02:48 +0000</updated>
                                                                            <component>netconf</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="72141" author="rovarga" created="Tue, 2 May 2023 19:02:20 +0000"  >&lt;p&gt;Hmm... opendaylight-topology-view is something we ditched quite a while ago. It seems you are hitting strict validation of YANG models on the side of netopeer2-cli &amp;#8211; ODL can support YANG models which have &apos;list&apos; statements without &apos;key&apos; statement and &apos;config true&apos; &amp;#8211; which is beyond the YANG spec.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10003">
                    <name>Relates</name>
                                            <outwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="33201">NETCONF-722</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="17309" name="[NETCONF-721] Steps to reproduce.odt" size="23157" author="ivanm1996" created="Thu, 3 Feb 2022 13:25:40 +0000"/>
                            <attachment id="17307" name="files721.zip" size="3676" author="ivanm1996" created="Thu, 3 Feb 2022 13:23:25 +0000"/>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_11400" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i03umf:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>