{ "info": { "author": "Evan Siroky", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3" ], "description": "# deploy_utils\nUtilities for deploying projects to EC2\n\n## Table of Contents\n\n* [Documentation](#documentation)\n* [Installation](#installation)\n* [EC2 Notes](#ec2-notes)\n* [Sample AWS Config File](#config-file-data)\n\n\n## Documentation\n\nFor now, just look at the test code.\n\n## Installation \n\n### In Another Project\n\nInstall with pip: `pip install deploy_utils` or put it in your `setup.py` in `install_requires`: `deploy_utils`.\n\n### As Standalone\n\nThe project is based of off python 2.7, but is best used with the `virtualenv` development scheme.\n\n1. Install Python 2.7\n2. Install virtualenv: `$ [sudo] pip install virtualenv`\n3. Instantiate the virtual python environment for the project using python 2.7: \n - Windows: `virtualenv --python=C:\\Python27\\python.exe deploy_utils`\n - Linux: `virtualenv -p /path/to/python27 deploy_utils`\n4. Browse to project folder `cd deploy_utils`\n5. Activate the virtualenv: \n - Windows: `.\\Scripts\\activate`\n - Linux: `source bin/activate`\n6. (Windows only) Manually install the `pycrypto` library. The followin command assumes you have 32 bit python 2.7 installed: `pip install http://www.voidspace.org.uk/python/pycrypto-2.6.1/pycrypto-2.6.1-cp27-none-win32.whl` If 64 bit python 2.7 is installed, run the following command instaed: `pip install http://www.voidspace.org.uk/python/pycrypto-2.6.1/pycrypto-2.6.1-cp27-none-win_amd64.whl`\n7. Install the python project using develop mode: `python setup.py develop`\n\n## EC2 Notes\n\nYou will need to do the following for automatically launching Amazon EC2 instances using the scripts:\n\n- Create AWS account\n - Get the access key\n - Get the secret access key\n - Create a profile in `~/.aws/credentials` with the above keys\n- Create security group\n - Add your IP to list of allowed inbound traffic [(see aws docs)](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/authorizing-access-to-an-instance.html).\n- Create key pair [(see aws docs)](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html).\n - Download .pem file to computer\n- (Windows only) instally PuTTY and PuTTYgen\n - [Download from here](http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html).\n - Create .ppk file [(see aws docs)](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/putty.html).\n- AMI ids\n - You need to use the appropriate one for your region\n - Do this by going to the marketplace and selecting the type to use and then find the AMI id by saying you'll manually launch it.\n- Use of CentOS\n - Requires that you agree to some TOS, I did this by launching an instance\n - This library targets CentOS 6 HVM with Updates\n - Pre 2015 instance setup machine with only `root` user\n - Post 2014 uses `centos` user\n - Includes script to automatically install PostGIS. :)\n\n## Config File Data\n\n| Setting Name | Description |\n| --- | --- |\n| ami_id | The base ami to start from. See notes about finding AMI ids above. |\n| aws_access_key_id | Access key for account. |\n| aws_profile_name | The profile name where you put the keys |\n| aws_secret_access_key | Secret access key for account. |\n| block_device_map | Where to attach storage. Amazon Linux: `/dev/xvda` CentOS 6: `/dev/sda1` |\n| cron_email | Who to email in cron jobs. |\n| key_filename | The filename of your .pem file. |\n| key_pair_name | The key pair name for the EC2 instance to use. |\n| instance_name | The name to tag the instance with. |\n| instance_type | The EC2 instance type. [(See instance types)](http://aws.amazon.com/ec2/pricing/). |\n| non_root_user | The non-root user ot use when fabbing on the machine. Amazon Linux: `ec2-user` CentOS 6: `centos` |\n| region | The AWS region to connect to. |\n| security_groups | Security groups to grant to the instance. If more than one, seperate with commas. |\n| volume_size | Size of the AWS Volume for the new instance in GB. | \n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/evansiroky/deploy_utils", "keywords": "AWS Fabric deployment", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "deploy-utils", "package_url": "https://pypi.org/project/deploy-utils/", "platform": "", "project_url": "https://pypi.org/project/deploy-utils/", "project_urls": { "Homepage": "https://github.com/evansiroky/deploy_utils" }, "release_url": "https://pypi.org/project/deploy-utils/1.0.1/", "requires_dist": [ "boto3 (>=1.9.101)", "fabric (<2,>=1.10.1)", "django-fab-deploy (>=0.7.5)" ], "requires_python": "", "summary": "Utilities for deploying projects to EC2", "version": "1.0.1" }, "last_serial": 4862558, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "46e0fef71f49458f20609e5042b4b560", "sha256": "b4b1b50198b355c1e0c63c332b60065825adf9f129ba54a511bf314c54600d6b" }, "downloads": -1, "filename": "deploy_utils-0.1.0.zip", "has_sig": false, "md5_digest": "46e0fef71f49458f20609e5042b4b560", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15072, "upload_time": "2015-12-05T05:02:11", "url": "https://files.pythonhosted.org/packages/3c/47/6866cd4239202653b6f3b3268344f9ad01fdc8fa69936041c205db2d6fc9/deploy_utils-0.1.0.zip" } ], "0.1.0rc1": [], "0.2.0": [ { "comment_text": "", "digests": { "md5": "277006bd27639fe6d88eb133aeb1057f", "sha256": "02fe82c90de1ee57ba0de3ad587fdf2ea26bede91370c861ac67b3d498813378" }, "downloads": -1, "filename": "deploy_utils-0.2.0.zip", "has_sig": false, "md5_digest": "277006bd27639fe6d88eb133aeb1057f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15096, "upload_time": "2015-12-08T03:47:41", "url": "https://files.pythonhosted.org/packages/5e/7f/b84b106787a0460b3ac3620f516d352db887fcae967e6e623e01cb5f68aa/deploy_utils-0.2.0.zip" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "c18400d10d5c8cef25fea194b0b24588", "sha256": "d9a3999ce182efd31908210d5c3f4a0d3949bdd1acee4a733502b921071e1bb7" }, "downloads": -1, "filename": "deploy_utils-0.3.0.zip", "has_sig": false, "md5_digest": "c18400d10d5c8cef25fea194b0b24588", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17314, "upload_time": "2016-02-05T20:40:34", "url": "https://files.pythonhosted.org/packages/8c/d9/c69c0fe957c0caa0a683fd3494a6ccfd54d829298c55fa4180e4ee5952a0/deploy_utils-0.3.0.zip" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "b8ca670801ef4a5e7d67c793f4367dcf", "sha256": "672577fed83622fbf280767e9de53e19cb9afca09b7f77f374f9144fb5fa9b23" }, "downloads": -1, "filename": "deploy_utils-1.0.0-py2-none-any.whl", "has_sig": false, "md5_digest": "b8ca670801ef4a5e7d67c793f4367dcf", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 18263, "upload_time": "2019-02-24T20:38:32", "url": "https://files.pythonhosted.org/packages/60/8f/f856bda82c3ee94b304736f1b85bd4b250845be62c3bb37ceddfb8063fcf/deploy_utils-1.0.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1c3757ff10dbd10363c538a8afdd192a", "sha256": "b3b3e4b36cb9a9c264ba0acc9d93e90923c5c80c90391bbde0ab243ccd07a996" }, "downloads": -1, "filename": "deploy_utils-1.0.0.tar.gz", "has_sig": false, "md5_digest": "1c3757ff10dbd10363c538a8afdd192a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14145, "upload_time": "2019-02-24T20:38:34", "url": "https://files.pythonhosted.org/packages/1e/b1/56ddca655fddedce978dc4cb0ac2bb852e9f8f1c9ba2c8482f3b4f915714/deploy_utils-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "4e79b4592afdc3b634c15ab4dd88a792", "sha256": "06e7e5a66a3c008afa9e37424582eb4207dcae5a80bcf712424a36db49b80148" }, "downloads": -1, "filename": "deploy_utils-1.0.1-py2-none-any.whl", "has_sig": false, "md5_digest": "4e79b4592afdc3b634c15ab4dd88a792", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 18279, "upload_time": "2019-02-25T01:36:48", "url": "https://files.pythonhosted.org/packages/a7/52/62331ed37e0319efddbcbbd6aa9124db11534ee2a9103ff0636bfd28e681/deploy_utils-1.0.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ae794082055537c0e44e981f2ea96aef", "sha256": "067fcfb33e619c83b2f0cd0ff454914c7c450c74bc59b527867f720f0b9b26a3" }, "downloads": -1, "filename": "deploy_utils-1.0.1.tar.gz", "has_sig": false, "md5_digest": "ae794082055537c0e44e981f2ea96aef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14155, "upload_time": "2019-02-25T01:36:49", "url": "https://files.pythonhosted.org/packages/e3/80/b446701c00d520f94385ca2d3b322ed8b118615657305a836e6dc2010062/deploy_utils-1.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "4e79b4592afdc3b634c15ab4dd88a792", "sha256": "06e7e5a66a3c008afa9e37424582eb4207dcae5a80bcf712424a36db49b80148" }, "downloads": -1, "filename": "deploy_utils-1.0.1-py2-none-any.whl", "has_sig": false, "md5_digest": "4e79b4592afdc3b634c15ab4dd88a792", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 18279, "upload_time": "2019-02-25T01:36:48", "url": "https://files.pythonhosted.org/packages/a7/52/62331ed37e0319efddbcbbd6aa9124db11534ee2a9103ff0636bfd28e681/deploy_utils-1.0.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ae794082055537c0e44e981f2ea96aef", "sha256": "067fcfb33e619c83b2f0cd0ff454914c7c450c74bc59b527867f720f0b9b26a3" }, "downloads": -1, "filename": "deploy_utils-1.0.1.tar.gz", "has_sig": false, "md5_digest": "ae794082055537c0e44e981f2ea96aef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14155, "upload_time": "2019-02-25T01:36:49", "url": "https://files.pythonhosted.org/packages/e3/80/b446701c00d520f94385ca2d3b322ed8b118615657305a836e6dc2010062/deploy_utils-1.0.1.tar.gz" } ] }