{ "info": { "author": "Unai Zalakain (GISA)", "author_email": "unai@gisa-elkartea.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: System Administrators", "License :: OSI Approved :: GNU General Public License (GPL)", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python :: 2.6", "Topic :: Utilities" ], "description": ".. _Webfaction: http://webfaction.com \n.. _API: http://docs.webfaction.com/xmlrpc-api/apiref.html\n\n\nOverview\n========\n\n``inifaction`` makes possible to write an INI style file and setup a Webfaction_ project with it through Webfaction's API_.\n\nIt has a command line utility but it's possible to also use the API implementation of ``inifaction`` as a module.\n\n\nCommand line utility\n====================\n\nCreate a template to configure a project::\n\n inifaction template -f config.ini\n\nAfter making the needed changes, call the API of Webfaction and setup the project::\n\n inifaction setup -f config.ini\n\nIf any error happens, it will continue with the setup. Later on, you can setup only the section where the error happened::\n\n inifaction setup -f config.ini -s domains\n\n\nAs a module\n===========\n\nThe API is created instantiating `inifaction.api.API` with the URL as parameter. Login requires user, password and the machine::\n\n # Setup the API\n from inifaction import API_URL\n from inifaction.api import API\n\n api = API(API_URL)\n api.login('user', 'password', 'Web210')\n\nAll the configuration sections of Webfacion's API are available at `inifaction.items` as items. Those items hold all the needed information to call the API with certain parameters, depending on the API's call. \n\nFor example, we can create an email address::\n\n from inifaction.items import Email\n\n email = Email('example@email.net', ['example_target_mailbox', 'target@emai.net'],\n autoresponder_on=True, autoresponder_subject='Hi!', autoresponder_message='Hello!',\n autoresponder_from='dont-answer@email.net', script_machine='', script_path='')\n\nCalling the item's ``args`` function with the API call type (``create``, ``update`` or ``delete``), returns the needed parameters to making that call. This happens automatically on API's level::\n\n # Create the email\n api.create(email)\n\n # Change the item and update it\n email = email._replace(email_address='other@emai.net')\n api.update(email)\n\n # Check if it exists\n api.exists(email)\n\n # List all the emails\n api.list('emails')\n\n # Delete the email\n api.delete(email)\n\n # Delete all the emails\n api.delete_all('emails')\n\nIt's possible to subclass the default items and create customized ones, it only requires to change `inifaction.SECTIONS` and `inifaction.NAMES` values to point to the customized item.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://lagunak.gisa-elkartea.org/projects/inifaction/", "keywords": "webfaction,api,xml,rpc,ini,configuration", "license": "LICENSE.txt", "maintainer": null, "maintainer_email": null, "name": "inifaction", "package_url": "https://pypi.org/project/inifaction/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/inifaction/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://lagunak.gisa-elkartea.org/projects/inifaction/" }, "release_url": "https://pypi.org/project/inifaction/0.1/", "requires_dist": null, "requires_python": null, "summary": "Manage your Webfaction settings in a per project basis from an INI style file.", "version": "0.1" }, "last_serial": 793347, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "0089601e1b117b851b34fc7c826cc02c", "sha256": "34cbf3e16910d7ac938230936b7b3e366f7430d265092609180a28dd459fab6e" }, "downloads": -1, "filename": "inifaction-0.1.tar.gz", "has_sig": true, "md5_digest": "0089601e1b117b851b34fc7c826cc02c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23363, "upload_time": "2012-01-25T17:13:05", "url": "https://files.pythonhosted.org/packages/d4/61/a572da93ca279d59835fd9010c7dbb864f7008b9888242e6429a85ab7ed3/inifaction-0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0089601e1b117b851b34fc7c826cc02c", "sha256": "34cbf3e16910d7ac938230936b7b3e366f7430d265092609180a28dd459fab6e" }, "downloads": -1, "filename": "inifaction-0.1.tar.gz", "has_sig": true, "md5_digest": "0089601e1b117b851b34fc7c826cc02c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23363, "upload_time": "2012-01-25T17:13:05", "url": "https://files.pythonhosted.org/packages/d4/61/a572da93ca279d59835fd9010c7dbb864f7008b9888242e6429a85ab7ed3/inifaction-0.1.tar.gz" } ] }