{"id":26375124,"url":"https://github.com/ctc-nt/nagato","last_synced_at":"2026-02-13T11:46:38.105Z","repository":{"id":255435885,"uuid":"607958827","full_name":"ctc-nt/NAGATO","owner":"ctc-nt","description":"NAGATO - Network Automation Gears And Test Orchestrator","archived":false,"fork":false,"pushed_at":"2024-11-07T04:36:00.000Z","size":943,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"develop","last_synced_at":"2025-03-17T02:15:54.914Z","etag":null,"topics":["robotframework"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ctc-nt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-03-01T02:38:04.000Z","updated_at":"2025-01-29T06:36:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"dfefd557-41df-4074-b4c2-0f4b42329593","html_url":"https://github.com/ctc-nt/NAGATO","commit_stats":null,"previous_names":["ctc-nt/nagato"],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ctc-nt%2FNAGATO","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ctc-nt%2FNAGATO/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ctc-nt%2FNAGATO/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ctc-nt%2FNAGATO/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ctc-nt","download_url":"https://codeload.github.com/ctc-nt/NAGATO/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243960667,"owners_count":20375105,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["robotframework"],"created_at":"2025-03-17T02:15:58.843Z","updated_at":"2026-02-13T11:46:38.053Z","avatar_url":"https://github.com/ctc-nt.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"![nagato](/images/Nagato_Logo_Horizontal.png)\n\n![PyPI - Python Version](https://img.shields.io/pypi/pyversions/nagato-network)\n[![pypi](https://img.shields.io/pypi/v/nagato-network)](https://pypi.org/project/nagato-network/)\n[![Code Style](https://img.shields.io/badge/code%20style-black-000000)](https://github.com/ambv/black)\n[![License](https://img.shields.io/pypi/l/nagato-network)](https://www.apache.org/licenses/LICENSE-2.0)\n\nNAGATO\n===============\nNetwork Automation Gears and Test Orchestrator.\n\nContents\n- [NAGATO](#nagato)\n  - [Introduction](#introduction)\n  - [Libraries](#libraries)\n  - [High-Level Keywords](#high-level-keywords)\n  - [Installation](#installation)\n  - [Usage](#usage)\n  - [Reference](#reference)\n\nIntroduction\n-------------\nNAGATO provides components for network test automation. It is based on Robot Framework.  \nThe project is hosted on [GitHub](https://github.com/ctc-nt/NAGATO).\n\nNAGATO provides the following:  \n- Robot Framework tools for automating infrastructure tests\n- System to automatically generate robot files for tests incorporating the created tools\n\n![nagato](/images/Nagato_Scope_of_Provision.png)\n\nLibraries\n-------------\nThe RobotFramework Libraries in NAGATO is the following:\n\n| LIBRARY NAME | DESCRIPTION |\n| ---- | ---- |\n| IxNetworkLibrary | Provide operations on IxNetwork |\n| NetmikoLibrary | Provide operations on network devices through ssh/telnet connections |\n| Pcap FileReader | Provide packet capture file verification |\n| SNMP | Provide operations relevant to SNMP |\n\nFor general information about using test libraries with Robot Framework, see\n[Robot Framework User Guide](https://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#using-test-libraries).\n\nHigh-Level Keywords\n-------------\nThe RobotFramework resource files in NAGATO is the following:\n\n| LIBRARY NAME | DESCRIPTION |\n| ---- | ---- |\n| Cisco_IOS_XR.resource | Provides high-level keywords defining the basic operations of Cisco IOS-XR using NetmikoLibrary |\n| Juniper_Junos.resource | Provides high-level keywords defining the basic operations of Junos using NetmikoLibrary |\n\nInstallation\n------------\nExecute the following command:\n```\npip install nagato-network\n```\n\nThe command will also install the following latest-packages:\n- [ixnetwork-restpy](https://pypi.org/project/ixnetwork-restpy/)\n- [netmiko](https://pypi.org/project/netmiko/)\n- [ntc-templates](https://pypi.org/project/ntc-templates/)\n- [pyshark](https://pypi.org/project/pyshark/)\n- [pysnmp](https://pypi.org/project/pysnmp/)\n- [robotframework](https://pypi.org/project/robotframework/)\n- [setuptools](https://pypi.org/project/setuptools/)\n\nUsage\n------------\nTo use NAGATO in Robot Framework tests,  \nimport the libraries you want to use in the settings section.\n\nOne of the advantages to use Robot Framework  \nin a form closer to Natural Language,  \nso write tests as easy-to-understand as possible.\n\nBelow is an example of a robot file using NetmikoLibrary and Cisco_IOS_XR.resource.\n\n```robotframework\n*** Settings ***\nDocumentation          This example demonstrates executing a command on a remote machine\n...                    and getting its output.\n...\n...                    Notice how connections are handled as part of the suite setup and\n...                    teardown. This saves some time when executing several test cases.\n\nLibrary                NAGATO.NetmikoLibrary\nResource               NAGATO/Resources/Cisco_IOS_XR.resource\nSuite Setup            Connect   \u0026{device}\nSuite Teardown         Disconnect All\n\n*** Variables ***\n\u0026{device}\n...    device_type=cisco_xr\n...    host=192.0.2.1\n...    alias=test\n...    username=test\n...    password=test\n\n*** Test Cases ***\nExecute Command And Verify Parsed Output\n    [Documentation]    Send the command, get the parsed output, and verify that it is as expected\n    ...                If parsing is not needed, the use_textfsm argument is not necessary.\n\n    ${parsed_output} =    NAGATO.NetmikoLibrary.Send Command    command_string=show version    use_textfsm=${True}  host=${device}[alias]\n    Should Be Equal    ${output}[0][hardware]    ASR9K\n\nGet Normalized Running Config\n    [Documentation]    Get only the configuration contents that do not contain date data \n    ...                from the output of show running-config\n\n    ${output} =    NAGATO.NetmikoLibrary.Send Command     command_string=show running-config    host=${device}[alias]\n    ${normalized_config} =    Cisco_IOS_XR.Normalize Config Text    ${output}\n    Builtin.Log    ${normalized_config}\n```\n\nReference\n------------\n- [Robot Framework Libraries docs (Libdoc)](./docs/index.md)  \n- [Contributing](./CONTRIBUTING.md)  \n- [Policies](./POLICIES.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fctc-nt%2Fnagato","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fctc-nt%2Fnagato","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fctc-nt%2Fnagato/lists"}