Skip to content

Conversation

@hussamsh
Copy link

@hussamsh hussamsh commented Jul 5, 2024

Why I did it

I wanted to add NETCONF server support for configuring SONiC switches. Similar to the work done on RESTCONF server.

How I did it

First, the changes themselves are on the Official sonic netconf repositroy.
This work focuses on integrating the netconf server in build-image processes. I updated relevant build scripts , dockerfiles and git modules to include the netconf server in the final image.

How to verify it

  1. Normally build the image
  2. Install new image with netconf server on a switch. After switch stabilizes inspect the docker to see the netconf-server docker image is up.
  3. Test NETCONF connection using ssh <username>@<ip> -p 830 -s netconf

Description for the changelog

This change adds support for a RFC compliant NETCONF server for SONiC switches.

Implements sonic-net/SONiC#1466
Implements sonic-net/SONiC#1498
Uses sonic-net/sonic-netconf-server#2

@linux-foundation-easycla
Copy link

linux-foundation-easycla bot commented Jul 5, 2024

CLA Signed

The committers listed above are authorized under a signed CLA.

@hussamsh
Copy link
Author

hussamsh commented Jul 5, 2024

Hello @zhangyanzhao @aseaudi

This is the remaining part of the NETCONF server implementation, integration in the sonic-build-image.

For your info

@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Pull request contains merge conflicts.

@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@hussamsh
Copy link
Author

hussamsh commented Jul 2, 2025

@msosyak

I have already implemented all of these RPCs locally , what I am sharing today is a minimal implementation with <get> and <close-session> only to start the integration of NETCONF into SONiC.

Once NETCONF is accepted into SONiC I will update the sonic-netconf-server submodule with all of the missing RPCs.

Do you think it is better to share the entire NETCONF implementation from the start ?

@msosyak
Copy link
Contributor

msosyak commented Jul 2, 2025

@hussamsh Thank you for the clarification. Since the implementation resides in a separate repository, its completeness doesn’t directly affect the review of this PR. However, including the full implementation from the start could help facilitate broader discussions and a more comprehensive assessment of the overall NETCONF integration into SONiC.

@EmmaLin11
Copy link

Hi @hussamsh,

Thanks for the quick update and for looking into this!

That's great to hear you'll be updating the PR to the latest sonic-netconf-server commit. This should definitely resolve the runtime panic we observed with the older version.

On a related note regarding sonic-mgmt-common, I've observed that the later commits of sonic-netconf-server seem to call translib.GetYanglibInfo. This function might not be exported in the current sonic-mgmt-common master branch. So, if we move to the latest sonic-netconf-server, it looks like another PR might be needed in sonic-mgmt-common to export translib.GetYanglibInfo to ensure proper build and functionality.

@zhangyanzhao zhangyanzhao moved this from 📋 In Plan Features to 🏗 In Progress in SONiC 202511 Release Aug 12, 2025
@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@hussamsh
Copy link
Author

hussamsh commented Sep 8, 2025

@EmmaLin11
PR for the mgmt-common created. Pending review by the mgmt-common reviewers.

@EmmaLin11
Copy link

PR for the mgmt-common created. Pending review by the mgmt-common reviewers.

Hi @hussamsh,

Thanks for the update! 👍

@hussamsh
Copy link
Author

hussamsh commented Oct 8, 2025

@lguohan @xumia can we get any updates about the merge of netconf on sonic ?

@nakano-omw
Copy link

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Commenter does not have sufficient privileges for PR 19492 in repo sonic-net/sonic-buildimage

@nakano-omw
Copy link

/azpw run Azure.sonic-buildimage

@mssonicbld
Copy link
Collaborator

/AzurePipelines run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: 🏗 In Progress

Development

Successfully merging this pull request may close these issues.

5 participants