{ "info": { "author": "Barnaby Gray", "author_email": "barnaby@pickle.me.uk", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "License :: OSI Approved :: MIT License", "Topic :: Utilities" ], "description": "iboto - an interactive Amazon webservices shell\n===============================================\n\nIntroduction\n------------\niboto offers an interactive shell with the basic set of ec2 commands from the Amazon\ncommand line tools, on steroids!\n\nIt adds:\n\n- multiple account support\n\n- multiple region support\n\n- powerful filtering\n\n- tab-completion on arguments:\n\n + amis\n\n + instance ids\n\n + tags\n\n + zones\n\n + instance types, etc.\n\n Saving much fiddly copy-pasting of ids around.\n \n- much snappier\n\n Without having to load all of Java up first before running a command you'll see it's\n much snappier controlling instances compared to the Amazon tools (as great as they are!).\n \n- extra functionality:\n\n + ec2ssh - waits for the instance to be running and SSH to be\n available before connecting; all without having to find and copy\n the public dns name, guess when it's booted fully or even open a\n new terminal for SSH.\n\n + ec2watch - closely monitor what is happening to your instances whilst you're waiting.\n \n- all the nice features of ipython\n\n History recall, python integration, session recording, configurability, etc.\n\nIt's probably best illustrated with a demo session::\n\n ~ % iboto\n iboto ready\n \n Commands available:\n %ec2din (aka ls)\n %limit (aka .)\n %pop (aka ..)\n %ec2ssh\n %ec2run\n %ec2start\n %ec2stop\n %ec2kill\n %ec2watch\n %account\n %region\n \n '%command?' for more information.\n \n demo1:us-east-1,demo2:eu-west-1\n [1]: limit Role:demo\n \n demo1:us-east-1,demo2:eu-west-1 Role:demo\n [2]: ec2run -T Role:demo\n account (demo1,demo2): demo1\n region: us-east-1\n instance type (m1.small,m1.large,m1.xlarge,c1.medium,c1.xlarge,m2.xlarge,m2.2xlarge,m2.4xlarge,cc1.4xlarge,t1.micro): t1.micro\n number [1]: \n key: default\n security group (default) [default]: \n zone (us-east-1a,us-east-1b,us-east-1c,us-east-1d,us-east-1e) [default]: \n arch (i386,x86_64) [x86_64]: \n ebs: yes\n ami (lucid,maverick,natty,oneiric,precise,ami-xxxxxx): lucid\n tags: Role:demo\n Out[2]: \n \n demo1:us-east-1,demo2:eu-west-1 Role:demo i-63f38e07\n [3]: ec2ssh\n Instance i-63f38e07\n Waiting for i-63f38e07 pending->running... (Ctrl+C to abort)\n Waiting for i-63f38e07 SSH port... (Ctrl+C to abort)\n Connecting to ec2-107-21-194-97.compute-1.amazonaws.com... (Ctrl+C to abort)\n The authenticity of host 'ec2-107-21-194-97.compute-1.amazonaws.com (107.21.194.97)' can't be established.\n RSA key fingerprint is e7:fe:c9:a9:bb:cc:ca:88:f1:26:0d:86:b0:b7:9d:87.\n Are you sure you want to continue connecting (yes/no)? yes\n Warning: Permanently added 'ec2-107-21-194-97.compute-1.amazonaws.com,107.21.194.97' (RSA) to the list of known hosts.\n Linux domU-12-31-38-01-A9-1C 2.6.32-342-ec2 #43-Ubuntu SMP Wed Jan 4 18:22:42 UTC 2012 x86_64 GNU/Linux\n Ubuntu 10.04.4 LTS\n \n Welcome to Ubuntu!\n ...\n ubuntu@domU-12-31-38-01-A9-1C:~$ logout\n Connection to ec2-107-21-194-97.compute-1.amazonaws.com closed.\n Out[3]: 'i-63f38e07'\n \n demo1:us-east-1,demo2:eu-west-1 Role:demo i-63f38e07\n [4]: ..\n \n demo1:us-east-1,demo2:eu-west-1 Role:demo\n [5]: ec2run -T Role:demo\n account (demo1,demo2): demo2\n region: eu-west-1\n instance type (m1.small,m1.large,m1.xlarge,c1.medium,c1.xlarge,m2.xlarge,m2.2xlarge,m2.4xlarge,cc1.4xlarge,t1.micro): t1.micro\n number [1]: \n key: default\n security group (default) [default]: \n zone (eu-west-1a,eu-west-1b,eu-west-1c) [default]: \n arch (i386,x86_64) [x86_64]: \n ebs: yes\n ami (lucid,maverick,natty,oneiric,precise,ami-xxxxxx): lucid\n tags: Role:demo\n Out[5]: \n \n demo1:us-east-1,demo2:eu-west-1 Role:demo i-3affcd73\n [6]: ..\n \n demo1:us-east-1,demo2:eu-west-1 Role:demo\n [7]: ls\n account instance state type zone ami launch time name\n =======================================================================================\n demo1 i-63f38e07 running t1.micro us-east-1d ami-349b495d 2012-03-18 17:35 \n demo2 i-3affcd73 pending t1.micro eu-west-1b ami-fb665f8f 2012-03-18 17:36 \n \n demo1:us-east-1,demo2:eu-west-1 Role:demo\n [8]: ec2watch\n Watching 2 instance(s) (press Ctrl+C to end)\n i-3affcd73 state: pending->running\n ^C\n demo1:us-east-1,demo2:eu-west-1 Role:demo\n [9]: I.public_dns_name\n Out[9]: \n [u'ec2-107-21-194-97.compute-1.amazonaws.com',\n u'ec2-176-34-173-80.eu-west-1.compute.amazonaws.com']\n \n demo1:us-east-1,demo2:eu-west-1 Role:demo\n [10]: I.placement\n Out[10]: [u'us-east-1d', u'eu-west-1b']\n \n demo1:us-east-1,demo2:eu-west-1 Role:demo\n [11]: I.add_tag('MyTag', '123')\n This will add_tag 2 instances, ok? (y/N) y\n Out[11]: \n \n demo1:us-east-1,demo2:eu-west-1 Role:demo\n [12]: I.tags\n Out[12]: \n [{u'MyTag': u'123', u'Role': u'demo'},\n {u'MyTag': u'123', u'Role': u'demo'}]\n \n demo1:us-east-1,demo2:eu-west-1 Role:demo\n [13]: limit MyTag:123\n \n demo1:us-east-1,demo2:eu-west-1 MyTag:123\n [14]: I.add_volume(1, '/dev/sdf')\n Creating and attaching volumes...\n Created 2 volumes\n \n demo1:us-east-1,demo2:eu-west-1 MyTag:123\n [15]: ec2ssh latest\n Instance i-3affcd73\n Connecting to ec2-176-34-173-80.eu-west-1.compute.amazonaws.com... (Ctrl+C to abort)\n The authenticity of host 'ec2-176-34-173-80.eu-west-1.compute.amazonaws.com (176.34.173.80)' can't be established.\n RSA key fingerprint is c9:cc:8b:fe:bc:8b:59:6c:3b:0a:07:54:fc:c2:a8:8c.\n Are you sure you want to continue connecting (yes/no)? yes\n Warning: Permanently added 'ec2-176-34-173-80.eu-west-1.compute.amazonaws.com,176.34.173.80' (RSA) to the list of known hosts.\n Linux ip-10-227-133-146 2.6.32-342-ec2 #43-Ubuntu SMP Wed Jan 4 18:22:42 UTC 2012 x86_64 GNU/Linux\n Ubuntu 10.04.4 LTS\n ...\n ubuntu@ip-10-227-133-146:~$ ls -al /dev/sdf\n brw-rw---- 1 root disk 8, 80 2012-03-18 17:38 /dev/sdf\n ubuntu@ip-10-227-133-146:~$ logout\n Connection to ec2-176-34-173-80.eu-west-1.compute.amazonaws.com closed.\n Out[15]: 'i-3affcd73'\n \n demo1:us-east-1,demo2:eu-west-1 MyTag:123\n [16]: ec2kill\n This will terminate 2 instances, ok? (y/N) y\n Out[16]: \n \n demo1:us-east-1,demo2:eu-west-1 MyTag:123\n [17]: ls\n account instance state type zone ami launch time name\n =======================================================================================\n demo1 i-63f38e07 shutting t1.micro us-east-1d ami-349b495d 2012-03-18 17:35 \n demo2 i-3affcd73 shutting t1.micro eu-west-1b ami-fb665f8f 2012-03-18 17:36 \n \n demo1:us-east-1,demo2:eu-west-1 MyTag:123\n\nInstallation\n------------\nInstall with your favourite package manager::\n\n $ pip install iboto\n\nYou can then run iboto from your path::\n\n $ iboto\n\nThe default is to start the shell with every account/region visible.\nYou can limit to a specific account/region from the command line::\n\n $ iboto demo1 eu-west-1\n \n \nConfiguration\n-------------\n\nThe first time iboto is run you'll be taken through a wizard which will configure the\ncredentials for your account(s).\n\nHelp\n----\nThe best documentation is the command documentation accessed by entering '%command?' at the\nshell prompt, e.g.::\n\n '%ec2start?'\n\n '%limit?'\n\nFuture plans\n------------\n- Add the full set of ec2 tools\n- Add further AWS apis.\n- Parallel ec2ssh execution for more than one host.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://loads.pickle.me.uk/iboto/", "keywords": null, "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "iboto", "package_url": "https://pypi.org/project/iboto/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/iboto/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://loads.pickle.me.uk/iboto/" }, "release_url": "https://pypi.org/project/iboto/0.20.2/", "requires_dist": null, "requires_python": null, "summary": "Amazon EC2 shell for managing multiple accounts and regions easily", "version": "0.20.2" }, "last_serial": 738816, "releases": { "0.12.1": [ { "comment_text": "", "digests": { "md5": "d77494f8284ca1602b9fc2e5166cd218", "sha256": "5cc00f1d70f60a51e6db76bef49a1deb6ba211fddcdbaf8c67ae8afb173c136f" }, "downloads": -1, "filename": "iboto-0.12.1.tar.gz", "has_sig": false, "md5_digest": "d77494f8284ca1602b9fc2e5166cd218", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10451, "upload_time": "2012-03-09T22:16:03", "url": "https://files.pythonhosted.org/packages/fe/a4/ca1345079e847f4faa9793b0b92b7ff85c6d335671cad9893e596e954fcb/iboto-0.12.1.tar.gz" } ], "0.20.0": [ { "comment_text": "", "digests": { "md5": "55a3d4fe9634fcff4d083aa834c1be1a", "sha256": "aa8234b048756ebd8270f9c529118fad6e0a671f34d26103bed34be99ba61fef" }, "downloads": -1, "filename": "iboto-0.20.0.tar.gz", "has_sig": false, "md5_digest": "55a3d4fe9634fcff4d083aa834c1be1a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18711, "upload_time": "2012-03-18T19:00:51", "url": "https://files.pythonhosted.org/packages/c1/2b/bd5a7d8db2a40f7980dc04547e4830310dcdb180f207f36d6a61f2c2c1e3/iboto-0.20.0.tar.gz" } ], "0.20.1": [ { "comment_text": "", "digests": { "md5": "879525b35182d25742f80b970d9e1874", "sha256": "34e97b1332122c6ca55bb63e1cfcf519c9479f037bbe2687415e0cbe47da0a1c" }, "downloads": -1, "filename": "iboto-0.20.1.tar.gz", "has_sig": false, "md5_digest": "879525b35182d25742f80b970d9e1874", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18909, "upload_time": "2012-04-06T15:17:51", "url": "https://files.pythonhosted.org/packages/ee/c0/f875bc10637fd53ff57fee8ede64913c732bae65e480eb95bab8eec79396/iboto-0.20.1.tar.gz" } ], "0.20.2": [ { "comment_text": "", "digests": { "md5": "a415d6861e8d2a4f24ed69a4dc650684", "sha256": "1d9bf236119e47f5aa3c5c8086e676859ab554b834b0e0fa306cf8ac1042c6ed" }, "downloads": -1, "filename": "iboto-0.20.2.tar.gz", "has_sig": false, "md5_digest": "a415d6861e8d2a4f24ed69a4dc650684", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19085, "upload_time": "2012-11-24T17:06:17", "url": "https://files.pythonhosted.org/packages/32/63/22a8d4dac37ebf605754a6cb9f281d4c3f0052cbb05de26302d27e1c04bc/iboto-0.20.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a415d6861e8d2a4f24ed69a4dc650684", "sha256": "1d9bf236119e47f5aa3c5c8086e676859ab554b834b0e0fa306cf8ac1042c6ed" }, "downloads": -1, "filename": "iboto-0.20.2.tar.gz", "has_sig": false, "md5_digest": "a415d6861e8d2a4f24ed69a4dc650684", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19085, "upload_time": "2012-11-24T17:06:17", "url": "https://files.pythonhosted.org/packages/32/63/22a8d4dac37ebf605754a6cb9f281d4c3f0052cbb05de26302d27e1c04bc/iboto-0.20.2.tar.gz" } ] }