{ "info": { "author": "Dexter Tad-y", "author_email": "dtady@cpan.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Web Environment", "Intended Audience :: Developers", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Utilities" ], "description": "*************\ncuisine_sweet\n*************\n\nSugar-coated declarative deployment recipes built on top of `Fabric `_ \nand `Cuisine `_.\n\nWith Fabric's low-level remote ssh orchestration and Cuisine's generic recipes; the goal\nis to build a collection of wrappers capturing various, usually opinionated, system deployment \nstyles.\n\nAt the heart of ``cuisine_sweet`` is the collection of ``ensure`` modules. These modules encapsulate\nwhat is being checked/deployed (declarative), without specifying the how and the where parts\n(imperative). An ensure is both an assertion check + action-if-needed in the form: \n``ensure.object.state(params)``. \n\n\nSample Usage\n------------\n\n``cuisine_sweet`` is to be used in tandem with ``fabric``.\n\nTo illustrate usage, see the sample ``fabfile.py`` below::\n\n from fabric.api import task, env\n from cuisine_sweet import ensure\n \n env.hosts = [ 'myproject@server1.example.com', 'myproject@server2.example.com' ]\n\n @task\n def initial():\n ensure.yum.package_installed('gcc')\n ensure.yum.package_installed('make')\n ensure.yum.package_installed('git')\n ensure.yum.package_installed('python')\n ensure.yum.package_installed('python-devel')\n ensure.supervisord.installed()\n\n @task\n def deploy():\n ensure.local_git.up_to_date(against='origin/master')\n ensure.local_git.clean()\n ensure.git.rsync('git@ourgit.example.com:myproject.git', 'myproject', refspec='master', base_dir='git')\n ensure.user_crontab.loaded('git/myproject/user.cron')\n ensure.supervisord.running('git/myproject/supervisord.conf', '/tmp/myproject.supervisord.pid')\n ensure.supervisord.updated_with_latest_config('git/myproject/supervisord.conf')\n\n\nReferences\n----------\n\n- `Source Code `_\n- `Documentation `_\n- Feedback / Patches - `Create an issue `_\n\n\nCopyright \u00a9 2012, Dexter B. Tad-y\n\n", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/dexterbt1/cuisine_sweet/tarball/0.1.18", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/dexterbt1/cuisine_sweet", "keywords": "fabric,cuisine,deployment", "license": "Revised BSD License", "maintainer": null, "maintainer_email": null, "name": "cuisine_sweet", "package_url": "https://pypi.org/project/cuisine_sweet/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/cuisine_sweet/", "project_urls": { "Download": "https://github.com/dexterbt1/cuisine_sweet/tarball/0.1.18", "Homepage": "http://github.com/dexterbt1/cuisine_sweet" }, "release_url": "https://pypi.org/project/cuisine_sweet/0.1.18/", "requires_dist": null, "requires_python": null, "summary": "Sugar-coated declarative deployment recipes built on top of Fabric and Cuisine", "version": "0.1.18" }, "last_serial": 2489175, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "8747d46e8e8630487a88415070e580db", "sha256": "27b8f93376fb0826c2b7522646b40853ede2d391fea156cfee7f11b273fcab39" }, "downloads": -1, "filename": "cuisine_sweet-0.1.0.tar.gz", "has_sig": false, "md5_digest": "8747d46e8e8630487a88415070e580db", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6736, "upload_time": "2012-05-25T03:27:30", "url": "https://files.pythonhosted.org/packages/0a/5d/fb4784d7a0b41c792f4d4bb5e33dd5d204cc19512f3f9d98cc9278efedf8/cuisine_sweet-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "bbb229a73da1e83b45cc0ad10c4fc8eb", "sha256": "a2bd95cf020383a68e2f4785cb05f1ead6da16c5aa225b8c8284d1309b111fef" }, "downloads": -1, "filename": "cuisine_sweet-0.1.1.tar.gz", "has_sig": false, "md5_digest": "bbb229a73da1e83b45cc0ad10c4fc8eb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9194, "upload_time": "2012-05-27T22:37:55", "url": "https://files.pythonhosted.org/packages/90/f3/eec2a6280ab404bb2df706dcfc816c599f41af12d7a554c830919cee4559/cuisine_sweet-0.1.1.tar.gz" } ], "0.1.10": [ { "comment_text": "", "digests": { "md5": "c0f84663b8ba2683e18cbbbb4f674c3d", "sha256": "df6d8170539e27f6ccec5cc5c3c8d28192922c5807a6193cfc4a45835d6f38fe" }, "downloads": -1, "filename": "cuisine_sweet-0.1.10.tar.gz", "has_sig": false, "md5_digest": "c0f84663b8ba2683e18cbbbb4f674c3d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9104, "upload_time": "2012-11-28T10:50:15", "url": "https://files.pythonhosted.org/packages/04/85/9ba6abfbd644c8354f5e73306644a237e172f0772dcb3bcab6975ed1ea37/cuisine_sweet-0.1.10.tar.gz" } ], "0.1.11": [ { "comment_text": "", "digests": { "md5": "53f9c327a6b9a3f2472381e7ce70566b", "sha256": "a3343ae1e1b182a56c52ab0e0a43fa198fa66ded111ae3c765614460ee1bc9c8" }, "downloads": -1, "filename": "cuisine_sweet-0.1.11.tar.gz", "has_sig": false, "md5_digest": "53f9c327a6b9a3f2472381e7ce70566b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9108, "upload_time": "2012-12-03T16:03:59", "url": "https://files.pythonhosted.org/packages/49/b5/cbf8fb40d87e784726e97208bbd3922a4d17be0e09d7a370a352cdd6522d/cuisine_sweet-0.1.11.tar.gz" } ], "0.1.12": [ { "comment_text": "", "digests": { "md5": "38509679438caa0a236f4a69fd02dae5", "sha256": "c529602664a042f1ab8a441506edbe0e60de1affe75ea1db02112465e8ba6c62" }, "downloads": -1, "filename": "cuisine_sweet-0.1.12.tar.gz", "has_sig": false, "md5_digest": "38509679438caa0a236f4a69fd02dae5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9198, "upload_time": "2012-12-04T15:05:49", "url": "https://files.pythonhosted.org/packages/01/e2/aacfadeb4e36ebe37c9c2cd1b29b33e6996842565612f1e32514fbc5bd3e/cuisine_sweet-0.1.12.tar.gz" } ], "0.1.13": [ { "comment_text": "", "digests": { "md5": "23641d184fc47173ac26caefda0f11d8", "sha256": "65912f7996866c8562052b3b451e3015e9efdd8e1773ac0ad8588c9bc9b291c4" }, "downloads": -1, "filename": "cuisine_sweet-0.1.13.tar.gz", "has_sig": false, "md5_digest": "23641d184fc47173ac26caefda0f11d8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9197, "upload_time": "2013-03-14T06:20:04", "url": "https://files.pythonhosted.org/packages/5b/fb/1d2c8eb901c8c04fde79a79c3b67219a89b3a9fd9dffbbc6303e3fdba0aa/cuisine_sweet-0.1.13.tar.gz" } ], "0.1.14": [ { "comment_text": "", "digests": { "md5": "7737e245a1a2c8aedb7c614c678fec42", "sha256": "123304105612c498b196d780ce8e3d867225203b9f27640bae5cd1612ef0a0ba" }, "downloads": -1, "filename": "cuisine_sweet-0.1.14.tar.gz", "has_sig": false, "md5_digest": "7737e245a1a2c8aedb7c614c678fec42", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9201, "upload_time": "2013-03-14T06:25:52", "url": "https://files.pythonhosted.org/packages/b1/42/2cc90235a8a59d8e5641bdb0fa1d5026308342117c89fb49cbd40d391716/cuisine_sweet-0.1.14.tar.gz" } ], "0.1.15": [ { "comment_text": "", "digests": { "md5": "9c448d782a2e7ba09e81fd42b64226d0", "sha256": "caee785708bffe98549a92c306186bc6e33fcf7e43a74f8e1a4409e84cd5286b" }, "downloads": -1, "filename": "cuisine_sweet-0.1.15.tar.gz", "has_sig": false, "md5_digest": "9c448d782a2e7ba09e81fd42b64226d0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9274, "upload_time": "2013-03-20T07:14:05", "url": "https://files.pythonhosted.org/packages/29/d8/f59b1db34a2b2f40881b459ef4224e3b6e1ca6474aff223834c7e0aa97df/cuisine_sweet-0.1.15.tar.gz" } ], "0.1.16": [ { "comment_text": "", "digests": { "md5": "7e9e2d2e835a4695505b66a4e4fdf239", "sha256": "50fde455cc54e25d547720bbb4e75259766aecb77bf5211226ad5dcd848dad4d" }, "downloads": -1, "filename": "cuisine_sweet-0.1.16.tar.gz", "has_sig": false, "md5_digest": "7e9e2d2e835a4695505b66a4e4fdf239", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10126, "upload_time": "2013-11-27T09:05:33", "url": "https://files.pythonhosted.org/packages/01/c5/5b960df75aa95c3f53b6e3d6c4cf5dacb505bfb8f93dcf628b82617e7f2b/cuisine_sweet-0.1.16.tar.gz" } ], "0.1.17": [ { "comment_text": "", "digests": { "md5": "450e6829dae1fdb94e956ec791b8b44c", "sha256": "b74769b99cbaebb5a8a3e3956f53352973143d7b72d3f1f1325c79f0a316d494" }, "downloads": -1, "filename": "cuisine_sweet-0.1.17.tar.gz", "has_sig": false, "md5_digest": "450e6829dae1fdb94e956ec791b8b44c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10811, "upload_time": "2014-05-29T11:45:47", "url": "https://files.pythonhosted.org/packages/f2/de/0b5ea6935066965f815bba7fa3ef3e71c3b90399bcb4beb7c49bd64f4fde/cuisine_sweet-0.1.17.tar.gz" } ], "0.1.18": [ { "comment_text": "", "digests": { "md5": "a3a00365e57e120c3f8a2779125ec293", "sha256": "b98d0db3fa023beaa1dcdd97d62ad3447c40f460b4e2e072bef47970a6595622" }, "downloads": -1, "filename": "cuisine_sweet-0.1.18.tar.gz", "has_sig": false, "md5_digest": "a3a00365e57e120c3f8a2779125ec293", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11322, "upload_time": "2016-11-29T08:29:20", "url": "https://files.pythonhosted.org/packages/cb/7c/d0da1fd4db90db0eea860d7e4d5b434df4a28bc2515d55270120be207bbe/cuisine_sweet-0.1.18.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "4ff5452e396130fbb7f9da8478bd92bf", "sha256": "345945340079d8a50f88141f4bf41ac242ea2a42eb05ee30e9140353557b2705" }, "downloads": -1, "filename": "cuisine_sweet-0.1.2.tar.gz", "has_sig": false, "md5_digest": "4ff5452e396130fbb7f9da8478bd92bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9208, "upload_time": "2012-05-28T07:09:47", "url": "https://files.pythonhosted.org/packages/65/84/f4be1b1db07ec58c354b1526b51ca77f70614bd1d65bc8aecb9b05057102/cuisine_sweet-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "754e438160e79a114ce26f86c39c8afb", "sha256": "ac313c72740f9910b7bda352f887235e224eb220302ef3bfa3481218f3386b38" }, "downloads": -1, "filename": "cuisine_sweet-0.1.3.tar.gz", "has_sig": false, "md5_digest": "754e438160e79a114ce26f86c39c8afb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9195, "upload_time": "2012-05-28T20:28:08", "url": "https://files.pythonhosted.org/packages/ba/1d/11b667b799c8f1e528c8acf55f69971e6835600515b0d6800e1296d6936c/cuisine_sweet-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "d1a2ee820d675db9cf8777c890fbc23e", "sha256": "1d028d2055e2fe96bd8ffb2efa6f71934e5bbdea2e57665f9b2b12663646ceff" }, "downloads": -1, "filename": "cuisine_sweet-0.1.4.tar.gz", "has_sig": false, "md5_digest": "d1a2ee820d675db9cf8777c890fbc23e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8779, "upload_time": "2012-05-30T13:10:15", "url": "https://files.pythonhosted.org/packages/60/89/dd65d95ad9d670fdb56f8e0d52715027651da5f5351f9230eca8aeaec6f7/cuisine_sweet-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "2ef38c1c22943d22724856fb62b3fa57", "sha256": "2d629ef249a9f39fc4914efa21815959e8c2483f58f11cc0d6ea9b8f801e1ceb" }, "downloads": -1, "filename": "cuisine_sweet-0.1.5.tar.gz", "has_sig": false, "md5_digest": "2ef38c1c22943d22724856fb62b3fa57", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8786, "upload_time": "2012-05-30T13:20:04", "url": "https://files.pythonhosted.org/packages/33/c8/3cd9060b9df022f3b91bab7cde9cbc0759180914fc8e07d726eabe491751/cuisine_sweet-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "2bc398cc7ac087d758a7efd09f78801c", "sha256": "f5c497c5b38319aa9a62c7244edec44abfe6fc78fba19cb467bb75c3083df901" }, "downloads": -1, "filename": "cuisine_sweet-0.1.6.tar.gz", "has_sig": false, "md5_digest": "2bc398cc7ac087d758a7efd09f78801c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9007, "upload_time": "2012-06-26T16:10:21", "url": "https://files.pythonhosted.org/packages/94/7e/8f3d137299226824ef1861797951026d3d6ac088f4370eb6180b53ef99a2/cuisine_sweet-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "883f3627b7132ab55d355900b6f7fee8", "sha256": "2fa69a69a078537d93806d38a2e1281a9d125a32a1fb15afdf829e9e251d7210" }, "downloads": -1, "filename": "cuisine_sweet-0.1.7.tar.gz", "has_sig": false, "md5_digest": "883f3627b7132ab55d355900b6f7fee8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9005, "upload_time": "2012-08-10T07:01:19", "url": "https://files.pythonhosted.org/packages/a8/9e/8d192c837e7295862fd781a0537d7a8c1253dbb61f81ba42df1c869c559d/cuisine_sweet-0.1.7.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "b20cf0fd81d6cb7fd1023c2ace94fdc5", "sha256": "7a171eded9c263e01825d90b6728ef862cca08b09a76d2a68be8a9b944ce7caa" }, "downloads": -1, "filename": "cuisine_sweet-0.1.8.tar.gz", "has_sig": false, "md5_digest": "b20cf0fd81d6cb7fd1023c2ace94fdc5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9008, "upload_time": "2012-09-05T15:49:01", "url": "https://files.pythonhosted.org/packages/60/ad/9da0853cea6aadce0fcde652a28209985136a30d47a87d30a9a141996653/cuisine_sweet-0.1.8.tar.gz" } ], "0.1.9": [ { "comment_text": "", "digests": { "md5": "edd46c5d8b1ac4776c1c6de55abc6262", "sha256": "2350e3c3f3d7a36b90f925159251a4cea25fc1a5a31ab7b8f3b3326701fdd0aa" }, "downloads": -1, "filename": "cuisine_sweet-0.1.9.tar.gz", "has_sig": false, "md5_digest": "edd46c5d8b1ac4776c1c6de55abc6262", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9011, "upload_time": "2012-11-13T07:44:56", "url": "https://files.pythonhosted.org/packages/00/31/00b279ccadc9a80c5c8db42c2a342687acff3fc89a5026064101ff3b7079/cuisine_sweet-0.1.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a3a00365e57e120c3f8a2779125ec293", "sha256": "b98d0db3fa023beaa1dcdd97d62ad3447c40f460b4e2e072bef47970a6595622" }, "downloads": -1, "filename": "cuisine_sweet-0.1.18.tar.gz", "has_sig": false, "md5_digest": "a3a00365e57e120c3f8a2779125ec293", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11322, "upload_time": "2016-11-29T08:29:20", "url": "https://files.pythonhosted.org/packages/cb/7c/d0da1fd4db90db0eea860d7e4d5b434df4a28bc2515d55270120be207bbe/cuisine_sweet-0.1.18.tar.gz" } ] }