{ "info": { "author": "Daniel Wallace", "author_email": "danielwallace@gtmanfred.com", "bugtrack_url": null, "classifiers": [], "description": "sh_ Hammercloud\n\n## What does it do\n\nCurrently still expanding that. This is just getting stuff added as I think about it\n\nCurrently it can:\n\n- Log you into nextgen cloud servers (using the uuid or server name)\n- Just show general information about the cloud server\n- Setup your `supernova temp ` stuff (ddi or username)\n\n## Installing\n\n```\npip install --upgrade hammercloud\n```\n\n## Configuring\n\nYou need a config file, if for nothing else than your sso\n\n### ~/.config/hammercloud/config.yml\n\n```yaml\nhammercloud:\n user: \n plugin: rackspace\n ssh_args: -F ~/.ssh/extraconf\n bastion_key: ~/.ssh/id_rsa\n bastion: \n terminal: iterm\n use_supernova: True\n shelltype: \n```\n\n## Autorun!\n\nAutorun scripts can go in two places, if you just want to have one script for\neverything, you can drop it in `~/.config/hammercloud/autorun`. Alternatively\n`~/.config/hammercloud/autorun.d/` is available. It runs them in order\n(running sorted() in python against the listdir of the directory.\n\nTo list out all the scripts so you can see the order they will run, pass\n--list-scripts.\n\n```\nhc --list-scripts\n```\n\n```\n[~]$ tail -c +0 ~/.config/hammercloud/autorun.d/*\n==> /home/gtmanfred/.config/hammercloud/autorun.d/1-terminfo <==\nexport TERM=xterm\n\n==> /home/gtmanfred/.config/hammercloud/autorun.d/10-check-ip <==\nip addr show\nip route show\nip -s link\n\n==> /home/gtmanfred/.config/hammercloud/autorun.d/20-heartbleed <==\nlsof +c 0 -n | awk '/lib(ssl|crypto)/ && /DEL/ && !x[$1]++ {print $1}'\n```\n\n## Setting up supernova\n\nAdd the following to your ~/.supernova file\n\n```ini\n[temp]\nOS_AUTH_URL=https://identity.api.rackspacecloud.com/v2.0/\nOS_AUTH_SYSTEM=rackspace\nOS_REGION_NAME=USE_KEYRING\nNOVA_SERVICE_NAME=cloudServersOpenStack\nOS_USERNAME=USE_KEYRING\nOS_PASSWORD=USE_KEYRING\nOS_TENANT_ID=USE_KEYRING\nNOVA_RAX_AUTH=1\nOS_NO_CACHE=1\nNOVACLIENT_INSECURE=1\n```\n\n## ssh_args for proxying\n\nSetup the below command, and begin the day with `ssh -Nf -F ~/.ssh/extraconf bastion`\n\nThen set the ssh_args in `~/.config/hammercloud/config.yml` to `-F ~/.ssh/extraconf`\n\n#### ~/.ssh/extraconf\n\n```\nHost bastion\n ProxyCommand none\n User \n Hostname \n ControlPath ~/.ssh/vts-%r@%h:%p\n IdentityFile \n ControlMaster auto\n ControlPersist 10m\n\nHost *\n ProxyCommand ssh -aY bastion -F ~/.ssh/extraconf -W %h:%p\n ForwardAgent yes\n ForwardX11 no\n GSSAPIAuthentication no\n VerifyHostKeyDNS no\n HashKnownHosts no\n StrictHostKeyChecking false\n TCPKeepAlive yes\n ServerAliveInterval 300\n```\n\n`Note: if you do not use something like this, and use Host * in your .ssh/config, you should include\nthe following above your Host * to make sure the ProxyCommand is empty`\n\n```\nHost cbast*\n ProxyCommand none\n```", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/gtmanfred/hammercloud", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "hammercloud", "package_url": "https://pypi.org/project/hammercloud/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/hammercloud/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/gtmanfred/hammercloud" }, "release_url": "https://pypi.org/project/hammercloud/3.0.5/", "requires_dist": null, "requires_python": null, "summary": "Openstack Command Line Interface for use in interacting with APIs and cloud devices", "version": "3.0.5" }, "last_serial": 2052163, "releases": { "3.0.1": [ { "comment_text": "", "digests": { "md5": "d36e2f9bebb03d18d74f6c1b19ab054b", "sha256": "27a1bedef4f19636ba84446490d0758c3921ee2e6a1f3b2218f8a53ae90e1aa9" }, "downloads": -1, "filename": "hammercloud-3.0.1.tar.gz", "has_sig": false, "md5_digest": "d36e2f9bebb03d18d74f6c1b19ab054b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 106287, "upload_time": "2016-02-29T02:26:18", "url": "https://files.pythonhosted.org/packages/55/38/9c1f8659b9670c025f39e35aa1b26ff3fd0c708fbaf78a4c93a6bad34478/hammercloud-3.0.1.tar.gz" } ], "3.0.2": [ { "comment_text": "", "digests": { "md5": "bd74d13feada3866f7c043e7f5a238d1", "sha256": "81745d95749c6baa4c4b45e4aaf4e4ef3fdedb971bb318910de0530936a02200" }, "downloads": -1, "filename": "hammercloud-3.0.2.tar.gz", "has_sig": false, "md5_digest": "bd74d13feada3866f7c043e7f5a238d1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 106220, "upload_time": "2016-02-29T02:48:42", "url": "https://files.pythonhosted.org/packages/f7/d5/07a8427743b15ed6c69f664b2289cb056824595c019377c75919a211be6a/hammercloud-3.0.2.tar.gz" } ], "3.0.3": [ { "comment_text": "", "digests": { "md5": "2c0851afde93ddc0acf7d86843a2c1c5", "sha256": "c807a79a38ff0ea79bddd9e27f025fc0e567fccf5b10db99d19a90274bf06181" }, "downloads": -1, "filename": "hammercloud-3.0.3.tar.gz", "has_sig": false, "md5_digest": "2c0851afde93ddc0acf7d86843a2c1c5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 107051, "upload_time": "2016-02-29T16:02:55", "url": "https://files.pythonhosted.org/packages/52/45/75c63b7a2eb7274473308f0decae9def6bf24b1ba76c77a7ce5d65f67ce4/hammercloud-3.0.3.tar.gz" } ], "3.0.4": [ { "comment_text": "", "digests": { "md5": "96e74951130f1ed039a370712db1d0e1", "sha256": "d0c200e5dbdfa32d6c4587efcc814d2fe4801ae567c882d261e6572dd40ac320" }, "downloads": -1, "filename": "hammercloud-3.0.4.tar.gz", "has_sig": false, "md5_digest": "96e74951130f1ed039a370712db1d0e1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 106808, "upload_time": "2016-02-29T20:14:11", "url": "https://files.pythonhosted.org/packages/59/a8/237143135c3e047e447837fe768abfc72048cc7f3a6cf96eba620f22a0e0/hammercloud-3.0.4.tar.gz" } ], "3.0.5": [ { "comment_text": "", "digests": { "md5": "0a7d990a5f47a3ce9f84f30604a59e02", "sha256": "545c47d8c6dffeacb318146fa67caae3fa372547528a34eef5b8351572f4b68a" }, "downloads": -1, "filename": "hammercloud-3.0.5.tar.gz", "has_sig": false, "md5_digest": "0a7d990a5f47a3ce9f84f30604a59e02", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 106667, "upload_time": "2016-04-07T20:37:19", "url": "https://files.pythonhosted.org/packages/f3/32/2883625ce27ea39e89ae5fdcc24318ef5271d0d0356c17a69985ed138ab7/hammercloud-3.0.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0a7d990a5f47a3ce9f84f30604a59e02", "sha256": "545c47d8c6dffeacb318146fa67caae3fa372547528a34eef5b8351572f4b68a" }, "downloads": -1, "filename": "hammercloud-3.0.5.tar.gz", "has_sig": false, "md5_digest": "0a7d990a5f47a3ce9f84f30604a59e02", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 106667, "upload_time": "2016-04-07T20:37:19", "url": "https://files.pythonhosted.org/packages/f3/32/2883625ce27ea39e89ae5fdcc24318ef5271d0d0356c17a69985ed138ab7/hammercloud-3.0.5.tar.gz" } ] }