{ "info": { "author": "Martin Volf", "author_email": "mvolf@cisco.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "Intended Audience :: Telecommunications Industry", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Topic :: System :: Networking", "Topic :: System :: Networking :: Monitoring" ], "description": "netconf-console\n===============\n\nA console application for interacting with NETCONF servers built on top\nof `ncclient `__.\n\nRequirements and installation\n-----------------------------\n\nThis application runs both in Python 2 and Python 3 environments. The\nonly package required for running this application is ``ncclient``; if\nthis is installed, all other necessary packages are installed as\ndependencies. This means that if you can (successfully) run something\nlike ``pip install ncclient`` on the target platform, all requirements\nshould be met.\n\nIf you cannot, there still is a chance you can run it if the target platform\nsupports at least packages ``six`` and ``lxml``, which are commonly present;\nand if it contains ``paramiko`` or at least ``cryptography``, you will be able\nto use SSH (without them you can only use plain and nonstandard TCP\ntransport). The missing piece, ``ncclient``, can be `cloned\n`__ and compiled to a \"Python Wheel\" -\nyou can do this on any computer and copy the resulting ``.whl`` file to the\ntarget platform, it should work there. Pretty much the same holds for\n``paramiko``. You may also want to create a wheel for the application itself by\nrunning ``python setup.py bdist_wheel``.\n\nInstalling and running the application\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nIf you can and want to install the application and all necessary\nlibraries, just run ``python setup.py install``. Otherwise prepare all\nnecessary .whl files and the script ``netconf-console`` to the target\nplatform. If they are in the same directory, nothing else is needed,\notherwise you may need to add the wheel files to ``PYTHONPATH`` before\nrunning the script.\n\nOnce installed or copied, you can just run the script with appropriate\noptions - see below.\n\nCommand-line mode\n-----------------\n\nThe application can be run in two different modes: command-line mode and\ninteractive (console) mode. The command-line mode allows you to request\nseveral RPC operations in one shell command. The command line would\ncontain the operation command options (``--get``, ``--lock``, etc.) in\nthe desired order, all common options (such as ``--host``, ``--port``\netc.) as well as command options (``--db``, ``--style``); the command\noptions are all used for the commands that accept them, so for example\nno two commands can address different datastores.\n\nAn example of such command line:\n\n::\n\n # netconf-console --host=example.com --db candidate --lock --edit-config=fragment1.xml \\\n --rpc=commit-confirmed.xml --unlock --sleep 5 --rpc=confirm.xml\n\nInteractive mode\n----------------\n\nThe interactive mode is started by ``--interactive`` (or ``-i``). During\nan interactive session the user issues commands, one per line, with\nrequired arguments or options. The options are isolated now, so it is\npossible to have two commands in one session accessing different\ndatastores. The interactive console provides limited support for\ntab-completion of commands, options, and their arguments.\n\nThe previous example can look like this:\n\n::\n\n # netconf-console --host=example.com -i\n netconf> lock\n netconf> edit-config fragment1.xml --db candidate\n netconf> rpc commit-confirmed.xml\n netconf> unlock\n netconf> get-config\n netconf> rpc confirm.xml\n netconf>\n\nNote: some commands (``rpc``, ``edit-config`` and others) may accept\ndata from standard input in the command-line mode; this does not work in\nthe interactive mode.\n\nSome capabilities of the interactive mode can be used in command-line\nmode too using ``--expr`` pseudo-command: the argument is a command\n(including options) as if it was added in the interactive mode, such as\n\n::\n\n # netconf-console --expr 'get-config --db candidate' 'get-config'\n\nCommands\n--------\n\nA command may accept an argument and a number of options. In\ncommand-line mode, all option values are shared (see above); conversely,\nin interactive mode the option needs to be provided for every command\nwhere its desired value differs from the default. If a command does not\naccept given option, it is a syntax error to provide it in interactive\nmode (in command-line mode such situations are ignored).\n\n``hello``\n Send just the initial ``hello`` message and display the reply. Does\n not accept any arguments or options.\n\n``get``\n Send ``get`` RPC. Accepts options ``outputStyle``, ``with-defaults``,\n ``xpath``. As an alternative to ``xpath``, ``get`` accepts path as an\n argument.\n\n``get-config``\n Send ``get-config`` RPC. Accepts the same set of options as ``get``\n plus ``db``.\n\n``set``\n Send ``edit-config`` with single leaf assignment. Requires the assignment\n in the form ``=`` as an argument, accepts ``db``, ``test``,\n and ``operation``. The path may contain (or actually needs to contain, in\n case it descends into a list instance) simple predicates in the form\n ``node[key1=value1][key2=value2]...``.\n\n``delete``\n Sends ``edit-config`` with a single node to be deleted. The node is\n determined by the path provided as an argument, see ``set`` for the path\n format. Accepts ``db``, ``test``, and ``del-operation`` options.\n\n``create``\n Sends ``edit-config`` with a single node to be created. The node is\n determined by the path provided as an argument, see ``set`` for the path\n format.\n\n``kill-session``\n Send ``kill-session`` RPC. Requires session identifier as an\n argument, accepts no options.\n\n``discard-changes``\n Send ``discard-changes`` RPC. Accepts no arguments or options.\n\n``lock``\n Send ``lock`` RPC towards the datastore indicated by ``db`` option.\n\n``unlock``\n Send ``unlock`` RPC, counterpart of ``lock``.\n\n``commit``\n Send ``commit`` request. Accepts optional ``confirmed`` as an\n argument and option ``timeout``.\n\n``validate``\n Send ``validate`` RPC. Accepts one argument, which can be either the\n literal ``candidate`` (to validate the contents of the candidate\n datastore) or a filename pointing to a file with full configuration\n to be validated; defaults to ``-``, standard input.\n\n``copy-running-to-startup``\n Send ``copy-config`` RPC with ``running`` datastore as the source\n and ``startup`` datastore as target. Accepts no arguments or\n options.\n\n``copy-config``\n Send ``copy-config`` RPC. Accepts a filename for the source\n configuration as a argument (defaults to ``-``), and the ``db``\n option for the target datastore.\n\n``edit-config``\n Send ``edit-config`` RPC. Accepts the same set of arguments and\n options as ``copy-config``.\n\n``get-schema``\n Send ``get-schema`` RPC. Requires schema identifier as an argument.\n\n``create-subscription``\n Send ``create-subscription`` RPC. Requires notification stream\n identifier as an argument. The notifications received from the\n server are displayed on standard output while the session is active\n - i.e. makes sense either in an interactive mode or in command-line\n mode with the command ``sleep``.\n\n``rpc``\n If none of the commands above is sufficient, a custom RPC can be\n send using this command. Accepts a filename (or ``-`` as default) as\n an argument; the file contents is sent to the server enveloped in\n the ``rpc`` element.\n\n``sleep``\n Do nothing, just sleep for given number of seconds provided as an\n argument.\n\nAs a backward-compatibility option, it is possible to provide a filename (or\n``-`` for standard input) containing all messages that are supposed to be sent\nto the server, separated by the NETCONF transport v1.0 message separator. This\noption cannot be used with any other command. Note that RPC message-id is not\npreserved.\n\n\nOptions\n-------\n\nThere are two sets of options: global options and command options.\nGlobal options affect overall behavior of the tool and can be provided\nin the shell command line (i.e. not to individual commands in the\ninteractive mode). Command options affect individual commands and in\ninteractive mode they need to be provided per command.\n\nGlobal options\n~~~~~~~~~~~~~~\n\n``help``\n Display a usage message and exit.\n\n``host``\n Hostname or IP address of the NETCONF server.\n\n``port``\n Port number of the NETCONF server.\n\n``user``\n Username for the authentication on the server (defaults to\n ``admin``).\n\n``password``\n Password for the authentication on the server (defaults to\n ``admin``). If the option is provided without a value, the password\n is read from the terminal.\n\n``privKeyFile``\n File containing the user's private key.\n\n``raw``\n Print all received replies in the original form. The option accepts\n one argument, name of file where the text should be stored; defaults\n to standard output.\n\n``tcp``\n Use plain TCP for the communication with the server (without this\n option SSH is used).\n\n``dry``\n Do not actually send any RPCs, just display them to standard output.\n\nLocal options\n~~~~~~~~~~~~~\n\nAs written above, local (or command) options are meaningful only for\ncertain command.\n\n``outputStyle``\n Affects the format of the displayed RPC reply. By default, the reply\n is pretty-printed, but otherwise kept as is. The option accepts\n ``plain`` (do no pretty-printing) and ``noaaa`` (remove the ``aaa``\n subtree from the reply from ``get`` or ``get-config`` requests).\n\n``db``\n Target datastore for some of the RPC operations. Defaults to\n ``running``.\n\n``timeout``\n Timeout in seconds for confirmed commit.\n\n``with-defaults``\n Set default values handling. Accepted values are ``explicit``,\n ``trim``, ``report-all``, ``report-all-tagged``.\n\n``xpath``\n Set the XPath filter for get or subscribe requests.\n\n``ns``\n Set a namespace prefix list; useful in case ``xpath`` option uses\n namespace prefixes.\n\n``test``\n Test-option value. Accepted values are ``test-only``,\n ``test-then-set`` and ``set``.\n\n``operation``\n Value of the attribute ``nc:operation``. Useful with the ``set``\n operation, can be ``merge`` (the default), ``replace``, ``create``.\n\n``del-operation``\n Value of the attribute ``nc:operation`` when used with the ``delete``\n operation, can be ``remove`` (the default) or ``delete``.\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://bitbucket.org/martin_volf/ncc", "keywords": "NETCONF CLI client", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "netconf-console", "package_url": "https://pypi.org/project/netconf-console/", "platform": "", "project_url": "https://pypi.org/project/netconf-console/", "project_urls": { "Homepage": "https://bitbucket.org/martin_volf/ncc" }, "release_url": "https://pypi.org/project/netconf-console/2.2.0/", "requires_dist": [ "paramiko (>=2.5.0)", "ncclient (>=0.5.2)", "readline" ], "requires_python": "", "summary": "Netconf client CLI tool and interactive console", "version": "2.2.0" }, "last_serial": 5571140, "releases": { "1.0.1": [ { "comment_text": "", "digests": { "md5": "533f9957f1bbbb9bec06e4aa6478a1f4", "sha256": "6c52a86b85f85882c2cbaf8411b3dee136fc3c4b050d7db995875febce674e27" }, "downloads": -1, "filename": "netconf_console-1.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "533f9957f1bbbb9bec06e4aa6478a1f4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 20823, "upload_time": "2017-10-05T09:59:36", "url": "https://files.pythonhosted.org/packages/dd/4f/d95c958cd90294a11af4bcf49eb698c9956deb6bc575603c4a2bad26f594/netconf_console-1.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ead7ab83fc2d26510685113173ea0def", "sha256": "0a9909870fdec0f56d59877f11baa8df18cb5ea62222948ad2815153e5820322" }, "downloads": -1, "filename": "netconf-console-1.0.1.tar.gz", "has_sig": false, "md5_digest": "ead7ab83fc2d26510685113173ea0def", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28298, "upload_time": "2017-10-05T09:59:37", "url": "https://files.pythonhosted.org/packages/6c/18/4eb07aaf4485a30da1b4955d790760280e317f4154cf07cae946694ce0e5/netconf-console-1.0.1.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "fb739eb055fc0ce8da54917b1748f5c8", "sha256": "6cd4b3f03272f0d1e8cf14ccedca18c34d308e379c0c189c7a37667b1b11f96d" }, "downloads": -1, "filename": "netconf_console-1.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fb739eb055fc0ce8da54917b1748f5c8", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 21617, "upload_time": "2017-10-05T14:54:53", "url": "https://files.pythonhosted.org/packages/fc/93/b8e30241c03f687479c43c4dd1c722bbc33b65897dc963f6fb97ba3022aa/netconf_console-1.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "75da7d676c9e5312be0b4678b9e84801", "sha256": "b26e39f66e23e2576ef1f6453a9a0dab2a39a8c22546a56c3e09fb5da9c71066" }, "downloads": -1, "filename": "netconf-console-1.1.0.tar.gz", "has_sig": false, "md5_digest": "75da7d676c9e5312be0b4678b9e84801", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29207, "upload_time": "2017-10-05T14:54:54", "url": "https://files.pythonhosted.org/packages/d3/3b/d190e192c18b881109232e3bf7492c380341d5890e8c4bf81f985bd221c8/netconf-console-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "85c47bcec678b6566cb477d606c719d4", "sha256": "dc5a39918dcf6b9443d2ffdcea18cfc2989916a1bf15e140d1394c863cbb05cd" }, "downloads": -1, "filename": "netconf_console-1.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "85c47bcec678b6566cb477d606c719d4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 21610, "upload_time": "2017-12-08T07:42:58", "url": "https://files.pythonhosted.org/packages/1f/09/98c5c3c05cf3edf4be0648aba5e62742c34069b0c235d5ae7caf6ab87a36/netconf_console-1.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6c6bd92587e91a96dff7455eed7dcaa7", "sha256": "70e8747ea153156e4d8d356502efb16b1e3132ec3646f7e81ad216033244e12c" }, "downloads": -1, "filename": "netconf-console-1.1.1.tar.gz", "has_sig": false, "md5_digest": "6c6bd92587e91a96dff7455eed7dcaa7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29220, "upload_time": "2017-12-08T07:43:01", "url": "https://files.pythonhosted.org/packages/f7/8c/68a9f8c9e94c0dd901cf33cce99432ad6aa0bbbec0575ed2d46fc238808d/netconf-console-1.1.1.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "d4467792c5a4a7d16db50b515e239a92", "sha256": "e85cbfc43ad7c84692e15515becd4b5241b91527718a7130461f5fd105f4f0d6" }, "downloads": -1, "filename": "netconf_console-2.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d4467792c5a4a7d16db50b515e239a92", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 21638, "upload_time": "2018-01-31T10:00:03", "url": "https://files.pythonhosted.org/packages/66/bb/5d46e5341b52c8c511656018d132fdc5f5b7067e03ac71b6f2bb8930c269/netconf_console-2.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "716e4718d013bb1e0c3507a0097fa62d", "sha256": "1cc5db8a711e083c3528ee37a29fe46357c6641519a5038b7e18ed31d1268ebb" }, "downloads": -1, "filename": "netconf-console-2.0.0.tar.gz", "has_sig": false, "md5_digest": "716e4718d013bb1e0c3507a0097fa62d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29709, "upload_time": "2018-01-31T10:00:05", "url": "https://files.pythonhosted.org/packages/60/47/02e9498089467ec4cb9c6f73a93abd793dd06635581b640238d2c06255a7/netconf-console-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "4e74945406ec656a9b5be1221662ffcd", "sha256": "2f6bb3ecf0bd9538c1469129fdf6458433b0c9b09483d75475263300283c131e" }, "downloads": -1, "filename": "netconf_console-2.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4e74945406ec656a9b5be1221662ffcd", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16898, "upload_time": "2018-05-22T15:52:52", "url": "https://files.pythonhosted.org/packages/bf/0c/ec37ea4ce1b9d1f16b2ca4f875111b0e00c4c4defcdde2920b621efa392a/netconf_console-2.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "af6765d9fdde7921684835272c8df393", "sha256": "0dc2645daf9f8ae80aa1ebe6374c3e33f67138eae7009b18765be83fad96f9d4" }, "downloads": -1, "filename": "netconf-console-2.0.1.tar.gz", "has_sig": false, "md5_digest": "af6765d9fdde7921684835272c8df393", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29014, "upload_time": "2018-05-22T15:52:54", "url": "https://files.pythonhosted.org/packages/ba/45/206476ed2518d7b4fb7e72667c079e1cb161b38095c17f2daecb762b76ad/netconf-console-2.0.1.tar.gz" } ], "2.1.0": [ { "comment_text": "", "digests": { "md5": "722bfa7de741b5949ad693e8ac0278f8", "sha256": "6f9c870967bdf63a27f9dfcb3cb77eb68df8f0cbada75fb9b3884d081a9cfb03" }, "downloads": -1, "filename": "netconf_console-2.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "722bfa7de741b5949ad693e8ac0278f8", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17393, "upload_time": "2018-10-08T15:56:40", "url": "https://files.pythonhosted.org/packages/c3/49/60d82c348d71302bce87decada195eaa3db3720b587348651ed8cd122f2d/netconf_console-2.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4f1f9f07605aad282ef062338ad49d63", "sha256": "f2d79dc0395b7eea4c0ec4b232e3061ff1311c09d9d6c01331da20e4aa7e6b44" }, "downloads": -1, "filename": "netconf-console-2.1.0.tar.gz", "has_sig": false, "md5_digest": "4f1f9f07605aad282ef062338ad49d63", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29828, "upload_time": "2018-10-08T15:56:42", "url": "https://files.pythonhosted.org/packages/94/61/1de9ebcb7356961f31a2fc53a6dc04d77af5809a6c66914cedf8d63438c7/netconf-console-2.1.0.tar.gz" } ], "2.1.1": [ { "comment_text": "", "digests": { "md5": "d6197fdf4fea06ae51c50f753251cf6f", "sha256": "a5afe930a44507b048111b4e52d4bddfdac870044df29306f68b73d23a1bfe67" }, "downloads": -1, "filename": "netconf_console-2.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d6197fdf4fea06ae51c50f753251cf6f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17366, "upload_time": "2018-10-10T10:47:39", "url": "https://files.pythonhosted.org/packages/c4/fa/a7997d9f813d71c0d1caeaea33e7e55bc9a223305a91fc8345dde36d96d6/netconf_console-2.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "86b75bc1448ac0e3c0c7bd79378e9bee", "sha256": "7829ebe08203a5b2140ce2eb08fde28b5a16a6a3eee58e6c7b9dca354db631d7" }, "downloads": -1, "filename": "netconf-console-2.1.1.tar.gz", "has_sig": false, "md5_digest": "86b75bc1448ac0e3c0c7bd79378e9bee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29746, "upload_time": "2018-10-10T10:47:40", "url": "https://files.pythonhosted.org/packages/e7/74/4f4f37ce3ec320c7b69e9cc90435c9e642c1a50bad6cd4e9699f41deae76/netconf-console-2.1.1.tar.gz" } ], "2.2.0": [ { "comment_text": "", "digests": { "md5": "be209e8bd6a17a96a85ca727839412c2", "sha256": "86a79a4f9301fac1906efe0958f18a92e20caff7db926a082653edfdea7f9e54" }, "downloads": -1, "filename": "netconf_console-2.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "be209e8bd6a17a96a85ca727839412c2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17572, "upload_time": "2019-07-23T08:26:40", "url": "https://files.pythonhosted.org/packages/d8/88/3f9eb0c8f3ee789c3a3649098996aad7ce0446d601e9958f21f46c0b3c09/netconf_console-2.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c0f4e71b64c678ad72d14e1e3120bb7c", "sha256": "93559190701510c3fb445ca5150e189f3a2853769d474cd2ea4a8bb49a79b55c" }, "downloads": -1, "filename": "netconf-console-2.2.0.tar.gz", "has_sig": false, "md5_digest": "c0f4e71b64c678ad72d14e1e3120bb7c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30315, "upload_time": "2019-07-23T08:26:42", "url": "https://files.pythonhosted.org/packages/98/a4/64cae71c90d39b07a65b0f97258db17c735f5f66995ee18e8f6d31c313bb/netconf-console-2.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "be209e8bd6a17a96a85ca727839412c2", "sha256": "86a79a4f9301fac1906efe0958f18a92e20caff7db926a082653edfdea7f9e54" }, "downloads": -1, "filename": "netconf_console-2.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "be209e8bd6a17a96a85ca727839412c2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17572, "upload_time": "2019-07-23T08:26:40", "url": "https://files.pythonhosted.org/packages/d8/88/3f9eb0c8f3ee789c3a3649098996aad7ce0446d601e9958f21f46c0b3c09/netconf_console-2.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c0f4e71b64c678ad72d14e1e3120bb7c", "sha256": "93559190701510c3fb445ca5150e189f3a2853769d474cd2ea4a8bb49a79b55c" }, "downloads": -1, "filename": "netconf-console-2.2.0.tar.gz", "has_sig": false, "md5_digest": "c0f4e71b64c678ad72d14e1e3120bb7c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30315, "upload_time": "2019-07-23T08:26:42", "url": "https://files.pythonhosted.org/packages/98/a4/64cae71c90d39b07a65b0f97258db17c735f5f66995ee18e8f6d31c313bb/netconf-console-2.2.0.tar.gz" } ] }