{ "info": { "author": "Andrew Fort", "author_email": "notch-dev@googlegroups.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Environment :: Console", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Operating System :: POSIX", "Programming Language :: Python :: 2.6", "Topic :: System :: Networking :: Monitoring", "Topic :: System :: Systems Administration" ], "description": "Notch\n=====\n\nNotch brings a programmatic interface to all your network equipment\nlike switches, routers and firewalls. Its Agent manages the\ncommand-line interfaces of network equipment in your network so that\nyou can write powerful network management applications using the\nincluded Python library or from other languages by using the JSON-RPC\ninterface.\n\n.. note::\n This package provides just the Notch Agent. A basic installation on\n a single machine also requires the client library, available in the\n ``notch.client`` package.\n\nFor example, to get the version information from every cisco-ish\ndevice on your network (via a Notch Agent running at ``localhost:8080``)::\n\n #!/usr/bin/env python\n\n import notch.client\n\n def callback(request):\n \"\"\"Called by the Notch Client when a request is complete.\"\"\"\n if request.error:\n print 'Exception: ', str.error.__class__.__name__\n print str(request.error)\n else:\n print request.result\n\n nc = notch.client.Connection('localhost:8080')\n\n # Gets a list of devices from the Notch Agent.\n try:\n all_devices = nc.devices_matching('^.*$')\n except notch.client.Error:\n print 'Error querying for devices.'\n all_devices = []\n\n # Send the command to each device, asynchronously receiving results.\n for device in all_devices:\n nc.command(device, 'show version', callback=callback)\n\n # Wait for all outstanding requests to complete.\n nc.wait_all()\n\n\nInstallation\n------------\n\n.. note::\n As of version 0.5, Notch is split into separate ``notch.client``\n and ``notch.agent`` pypi packages sharing a namespace package\n ``notch``.\n\n Users upgrading from earlier versions must remove all existing Notch\n packages before proceeding with installation::\n\n $ pip uninstall notch\n $ pip uninstall notch.client\n $ pip uninstall notch.agent\n\n Also check your Python ``site-packages`` directories to ensure you\n do not have any ``notch*`` files or directories.\n\nUse ``pip`` to install both the Notch Agent or Client library.\n\nYou'll need both packages to start with, but in larger installations,\nonly machines acting as Agents require the ``notch.agent`` package.\n\n $ pip install notch.agent\n $ pip install notch.client\n\nThis will install all but one dependency, which can be then installed using::\n\n $ pip install -e git+https://github.com/joshmarshall/tornadorpc.git@fda3e0e4#egg=tornadorpc-dev\n\nYou can also use ``easy_install``, but we don't recommend that. If you don't\nhave ``pip``, install it with ``easy_install`` first.\n\nConfiguration\n-------------\n\nThe Notch Agent requires some configuration to get started, and things\nare easiest if you already use the RANCID system, as the Notch Agent\nwill read its router.db configuration file to populate its inventory.\n\nThen, you can start a Notch Agent using the built-in testing server::\n\n $ notch-agent --config=/path/to/your/notch.yaml\n\nThe built-in testing server does not support parallel operation, so you\nmust use a WSGI compatible server for production operation. Apache2 with\n``mod_wsgi`` is used for many installations and an example configuration\ncan be found in ``config/notch-mod_wsgi.sample.conf``. The WSGI application\nobject itself is defined in ``wsgi/notch.wsgi``.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://code.google.com/p/notch/", "keywords": null, "license": "http://www.apache.org/licenses/LICENSE-2.0", "maintainer": null, "maintainer_email": null, "name": "notch.agent", "package_url": "https://pypi.org/project/notch.agent/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/notch.agent/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://code.google.com/p/notch/" }, "release_url": "https://pypi.org/project/notch.agent/0.5/", "requires_dist": null, "requires_python": null, "summary": "The Network Operator's Toolkit for Command-line Hacking", "version": "0.5" }, "last_serial": 795549, "releases": { "0.5": [ { "comment_text": "", "digests": { "md5": "e6b3bd7deb70ececb2be969fd703f542", "sha256": "121de34585feb62ec069588526c37ff85b2c5ec7a1872e9356fb56120f173145" }, "downloads": -1, "filename": "notch.agent-0.5.tar.gz", "has_sig": false, "md5_digest": "e6b3bd7deb70ececb2be969fd703f542", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34447, "upload_time": "2011-11-25T08:18:20", "url": "https://files.pythonhosted.org/packages/62/a8/9453babfe63ff089987acbf7873f771bd0e0167c98b8a4e3457c1f43dbc7/notch.agent-0.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e6b3bd7deb70ececb2be969fd703f542", "sha256": "121de34585feb62ec069588526c37ff85b2c5ec7a1872e9356fb56120f173145" }, "downloads": -1, "filename": "notch.agent-0.5.tar.gz", "has_sig": false, "md5_digest": "e6b3bd7deb70ececb2be969fd703f542", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34447, "upload_time": "2011-11-25T08:18:20", "url": "https://files.pythonhosted.org/packages/62/a8/9453babfe63ff089987acbf7873f771bd0e0167c98b8a4e3457c1f43dbc7/notch.agent-0.5.tar.gz" } ] }