{ "info": { "author": "RED Interactive Agency", "author_email": "geeks@ff0000.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Utilities" ], "description": "ec2selector is a tool to select an EC2 AMI (Amazon Machine Image) from those \navailable on Amazon.\nThere are three basic ways in which you can use this tool.\n\n# Selecting an image knowing its ID\n\nIf you already know the image ID, you can use ec2selector to make sure that \nsuch an instance is still available on Amazon for a given region, e.g.:\n\n from ec2selector import EC2Selector\n EC2Selector().select(region_id='us-east-1', image_id='ami-ed16f984')\n\nwill return `Image:ami-ed16f984` if such an image exists on US East 1.\n\n# Selecting an image specifying a set of properties\n\nIf you don't know the image ID, you can specify a set of properties to match \none of the images available on Amazon. The properties you can filter on are:\n\n* name\n* owner_id\n* virtualization_type\n* image_type\n* architecture\n\nYou can also use the properties followed by '_contains' to specify a partial \nmatch. For instance, the following commands will return an AMI in US East,\nowned by the user 'alestic' with a 'machine' image at 64bit, and whose name \nincludes the string 'ubuntu-10':\n\n from ec2selector import EC2Selector\n EC2Selector().select(region_id='us-east-1', filters={\n 'name_contains': 'ubuntu-10', \n 'owner_id':'063491364108', # corresponds to 'alestic'\n 'image_type': 'machine', \n 'virtualization_type':'paravirtual',\n 'architecture': 'x86_64', \n })\n\n# Selecting an image with an interactive prompt\n\nFinally, if you do not specify enough filters to get exactly *one* image,\nyou will get an interactive shell to add more filters or pick one of the\navailable images. For instance, this is a prompt session:\n\n >>> from ec2selector import EC2Selector\n >>> EC2Selector().select()\n \n 5 regions available\n Please pick one of the available options:\n [0] eu-west-1\n [1] us-east-1\n [2] ap-northeast-1\n [3] us-west-1\n [4] ap-southeast-1\n \n > 0\n Loading list of available EC2 images for eu-west-1 with filters: None, might take a while...\n 1717 images available.\n Please pick one of the available options:\n [0] name\n [1] owner_id\n [2] architecture\n [3] type\n [4] virtualization_type\n \n > 2\n Please pick one of the available options:\n [0] x86_64\n [1] i386\n\n > 0\n 577 images available.\n Please pick one of the available options:\n [0] name\n [1] owner_id\n [2] architecture\n [3] type\n [4] virtualization_type\n\n > 3\n Please pick one of the available options:\n [0] machine\n [1] kernel\n [2] ramdisk\n\n > 0\n 519 images available.\n Please pick one of the available options:\n [0] name\n [1] owner_id\n [2] architecture\n [3] type\n [4] virtualization_type\n\n > 4\n Please pick one of the available options:\n [0] hvm\n [1] paravirtual\n\n > 1\n 386 images available.\n Please pick one of the available options:\n [0] name\n [1] owner_id\n [2] architecture\n [3] type\n [4] virtualization_type\n\n > 0\n Please pick one of the available options:\n [0] Ubuntu 10.10 64-bit Server Python Erlang Java\n [1] RightImage_Ubuntu_8.04_x64_v5.5.9.1_EBS\n ...\n [383] ubuntu-9.10-karmic-server-amd64-20100121\n [384] xarch-core-image\n [385] radiant-0.9.1_64_0.2_ami-75d4e101\n\n > 385\n Image selected: radiant-0.9.1_64_0.2_ami-75d4e101\n Image:ami-033d0977\n \n# Requirements\n\nIn order to use `ec2selector` you need login credentials to Amazon EC2.\nYou can either pass these credentials to EC2Selector, e.g.:\n\n from ec2selector import EC2Selector\n EC2Selector().select(access_key='AKIA...', secret_key='xWD3...')\n\nor you can set them in environment variables, e.g.:\n\n import os\n os.environ['AWS_ACCESS_KEY_ID'] = 'AKIA...'\n os.environ['AWS_SECRET_ACCESS_KEY'] = 'xWD3...'\n\nIf you don't specify them, the interactive prompt will ask for them.\n\n# Motivation\n\n`ec2selector` is based on [boto](https://github.com/boto/boto), a great Python \nlibrary to interact with Amazon EC2 instances. The only way to select an AMI \nwith boto is by specifying its image ID. `ec2selector` expands this behavior by\nletting you pick an image based on its attributes, not on its ID.\n\n# Installing\n\n pip install ec2selector\n\n# Contributing\n\n1. fork and clone the project\n2. install the dependencies above\n3. run the tests with `python tests.py`\n4. hack at will\n5. commit and push\n6. send a pull request\n\n# License\n\nSee LICENSE.txt", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/ff0000/ec2selector", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ff0000/ec2selector", "keywords": "amazon,ec2,ami,cloud,boto,red", "license": "MIT license", "maintainer": null, "maintainer_email": null, "name": "ec2selector", "package_url": "https://pypi.org/project/ec2selector/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/ec2selector/", "project_urls": { "Download": "https://github.com/ff0000/ec2selector", "Homepage": "https://github.com/ff0000/ec2selector" }, "release_url": "https://pypi.org/project/ec2selector/1.0.0/", "requires_dist": null, "requires_python": null, "summary": "Interactive prompt to select an AMI (Amazon Machine Image) from Amazon EC2", "version": "1.0.0" }, "last_serial": 791534, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "13af92901dd61695950e733ec5dc4469", "sha256": "bb5bffcdac66851c8afd4e2d0d35dec126a9271dc62ab539d4ee642905bb8a7f" }, "downloads": -1, "filename": "ec2selector-0.0.1.tar.gz", "has_sig": false, "md5_digest": "13af92901dd61695950e733ec5dc4469", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6677, "upload_time": "2011-04-22T23:29:29", "url": "https://files.pythonhosted.org/packages/c9/e2/5088c2fac589b191d0632fdee00692831d6b7530e6ec244b5bfa6a98c644/ec2selector-0.0.1.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "2403b7d2f83bcffe1b652589b9dce341", "sha256": "d3b54e7ea5d4357ba0e71ea6ba7d28b538854cef4fc08799afe272ae154c6b7a" }, "downloads": -1, "filename": "ec2selector-1.0.0.tar.gz", "has_sig": false, "md5_digest": "2403b7d2f83bcffe1b652589b9dce341", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6681, "upload_time": "2011-04-22T23:33:48", "url": "https://files.pythonhosted.org/packages/bd/e5/15bc08e6db3572d5ec2267c3642f5b500333dc3c011bf5a5db148f927584/ec2selector-1.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "2403b7d2f83bcffe1b652589b9dce341", "sha256": "d3b54e7ea5d4357ba0e71ea6ba7d28b538854cef4fc08799afe272ae154c6b7a" }, "downloads": -1, "filename": "ec2selector-1.0.0.tar.gz", "has_sig": false, "md5_digest": "2403b7d2f83bcffe1b652589b9dce341", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6681, "upload_time": "2011-04-22T23:33:48", "url": "https://files.pythonhosted.org/packages/bd/e5/15bc08e6db3572d5ec2267c3642f5b500333dc3c011bf5a5db148f927584/ec2selector-1.0.0.tar.gz" } ] }