{ "info": { "author": "Craig Pearson", "author_email": "thepearson@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "# CWP Dash CLI\n\nThis is a command line interface tool for interacting with the NZ Common Web Platform Dash API. The primary aim of this tool is to be supported easily on linux hosts without additional packages having being installed. While it could be implemented easily in many different frameworks/languages, it's written in Python for the simple reason that **most** linux servers support Python out of the box. This package uses no external libraries and only core Python modules.\n\n## Support\n\nCurrently dash-cli supports <= Python 2.7. A version supporting Python >= 3 is actively being worked on.\n\n## Installation\n\nYou'll need to navigate to ``https://dash.cwp.govt.nz/naut/profile`` and obtain an `API token` before continuing.\n\n### Using PIP - (Ubuntu based distros)\n```\n$ sudo pip install dash-cli\nCollecting dash-cli\n Downloading dash-cli-0.1.1.tar.gz\nInstalling collected packages: dash-cli\n Running setup.py install for dash-cli ... done\nSuccessfully installed dash-cli-0.1.1\n\n$ dash-cli\n\nExecuting dash version 0.1.1.\nConfig file not found, lets get configured\n\nCWP Email Address: [CWP_DASH_EMAIL]\nCWP API Token: [CWP_DASH_API_TOKEN]\nYou are now configured\n```\n\n### Using easy_install - (Centos/RHEL based distros)\n\n```\n$ sudo easy_install dash-cli\n\nSearching for dash-cli\n...\nInstalled /usr/lib/python2.7/site-packages/dash_cli-0.1.1-py2.7.egg\nProcessing dependencies for dash-cli\nFinished processing dependencies for dash-cli\n\n$ dash-cli\n\nExecuting dash version 0.1.1.\nConfig file not found, lets get configured\n\nCWP Email Address: [CWP_DASH_EMAIL]\nCWP API Token: [CWP_DASH_API_TOKEN]\nYou are now configured\n```\n\n## Changelog\n```\n0.1.4: 21 May 2018\n--------------------------\n Support for snapshots failing and timeouts during simple mode\n\n0.1.3: 10 April 2018\n--------------------------\n Support for large file downloads\n\n0.1.2: 3 April 2018\n--------------------------\n Simple snapshots\n\n0.1.1: 21 March 2018\n--------------------------\n Packaging changes\n Documentation updates\n\n0.1.0: 19 March 2018\n--------------------------\n Initial release\n```\n\n## Roadmap\n\n* Locks\n* Git Fetches\n* Deployments\n* `sspak` integration\n\n## Usage\n\n```\n$ dash-cli -h\n\nExecuting dash version 0.1.2.\nusage: cwp [|]\n\nTop level commands:\n stack Perform actions on stacks\n snapshot Perform snapshot actions\n\nCLI interface with CWP dash\n\npositional arguments:\n command Subcommand to run\n\noptional arguments:\n -h, --help show this help message and exit\n```\n\n### Listing stacks\n```\n# List all stacks/projects\n$ dash-cli stacks\n\n# List info about a single stack/project\n$ dash-cli stack --project=[project_id]\n```\n\n### Snapshots\n\n#### List snapshots\n\nLists all snapshots for a given stack.\n\n```\n$ dash-cli snapshot list [project_id]\nExecuting dash version 0.1.2.\n\nRetrieving snapshots for '[project_id]'\n\nID TYPE SIZE STATUS ENV DATE\n---\n12345 all 2.3GB complete uat 2018-03-19 11:44:05\n67890 db 90.0MB complete prod 2018-03-13 15:25:05\n```\n\n#### Create snapshot\n\nQueues a snapshot creation for a given stack. The request creates a **transfer** which is essentially a queued job, the transfer ID returned can be used with `snapshot status` to query the state of the snapshot transfer.\n\n```\n$ dash-cli snapshot create [project_id] [snap_type] [snap_env]\nExecuting dash version 0.1.2.\nSnapshot for 'moeedgazette' queued\nTRANSFER ID\tSTATUS\t\tPROJECT\t\tTYPE\t\tENVIRONMENT\n---\n12345\t\tn/a\t\t[project_id]\t\tdb\t\tprod\n\n```\n\n\n#### Query snapshot transfer status\n\n```\n$ dash-cli snapshot status [project_id] [transfer_id]\nExecuting dash version 0.1.2.\nSnapshot for '[project_id]' queued\nTRANSFER ID\t STATUS\t\tPROJECT\n---\n12345 Started\t\t[project_id]\n\n```\n\n\n#### Delete snapshot\n\n```\n$ dash-cli snapshot delete [project_id] [snapshot_id]\nExecuting dash version 0.1.0.\nDeleting '[project_id]' snapshot with the following ID: 12345\nOK.\n```\n\n#### Download snapshot\n\n```\n$ dash-cli snapshot download [project_id] [snapshot_id]\nExecuting dash version 0.1.2.\nDownloading 'moeinside' snapshot with the following ID: 12345\nOK.\n\n```\n\n#### Simple snapshot\n\nRequest a snapshot, download it, then delete it with one command, useful for automated jobs.\n\n```\n$ dash-cli snapshot simple [project_id] [snap_type] [snap_env]\nExecuting dash version 0.1.2.\nCreating snapshot request\nWaiting for [project_id] snapshot to complete... elapsed x seconds\nWaiting for [project_id] snapshot to complete... elapsed x seconds\nWaiting for [project_id] snapshot to complete... elapsed x seconds\nDownloading snapshot...\nCleaning up API snapshots\nOK.\n\n```", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/thepearson/cwp-cli", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "dash-cli", "package_url": "https://pypi.org/project/dash-cli/", "platform": "", "project_url": "https://pypi.org/project/dash-cli/", "project_urls": { "Homepage": "https://github.com/thepearson/cwp-cli" }, "release_url": "https://pypi.org/project/dash-cli/0.1.4/", "requires_dist": null, "requires_python": ">=2.7", "summary": "Python command line interface to CWP's Dash API.", "version": "0.1.4" }, "last_serial": 3881765, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "b23c31779e0e9b3e4e559d4108b130cb", "sha256": "8796363ae6aa85ee313bf593036cf23bbc82d04f161e7c73c5ae96b54794b964" }, "downloads": -1, "filename": "dash-cli-0.1.0.tar.gz", "has_sig": false, "md5_digest": "b23c31779e0e9b3e4e559d4108b130cb", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 6273, "upload_time": "2018-03-19T09:59:36", "url": "https://files.pythonhosted.org/packages/23/ea/00173559dc1def17062a9c92c3ede39b248f20fe2e9ea30e70fe5ce28ad7/dash-cli-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "5c2a2d5894e9888ae4774a8013555216", "sha256": "4524eab65cb4d6da0e14f1d6c0b2bcf77223fe9b7f3d4afea1fbf0e57f88695b" }, "downloads": -1, "filename": "dash-cli-0.1.1.tar.gz", "has_sig": false, "md5_digest": "5c2a2d5894e9888ae4774a8013555216", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 7084, "upload_time": "2018-03-20T21:37:59", "url": "https://files.pythonhosted.org/packages/9e/39/23e6dc2e3e2489f177523a5079b7a055d0dcd4de23a2c7298558a6a2557b/dash-cli-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "4b3af00704122f36f584d3d469b1e026", "sha256": "23bddb656475f1a0ad607f8903edaaade435afb1fa8db1f81acfa902972d9d31" }, "downloads": -1, "filename": "dash-cli-0.1.2.tar.gz", "has_sig": false, "md5_digest": "4b3af00704122f36f584d3d469b1e026", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 8574, "upload_time": "2018-04-03T02:36:44", "url": "https://files.pythonhosted.org/packages/88/f0/f5a4214de99f14824ed3be8972579af3a914a6c6132921e7a2de742592f9/dash-cli-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "abe3a6aba68c8f318cf44a442191de67", "sha256": "854b0c3453711113a61b69edd7c96932593dc1b65abd260f65aea29a2c2f5c9e" }, "downloads": -1, "filename": "dash-cli-0.1.3.tar.gz", "has_sig": false, "md5_digest": "abe3a6aba68c8f318cf44a442191de67", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 8669, "upload_time": "2018-04-10T03:22:51", "url": "https://files.pythonhosted.org/packages/30/cf/03a2af7837891bce3c1a73573eb535edb23bdbdfc370ad33b768e55c45d3/dash-cli-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "b8d8ea220f17fd44cfb94ddabef43479", "sha256": "43b54c59617f9d1ac3712b6ed1b2b46a472e8d637d443e7a5e5812adbbee712a" }, "downloads": -1, "filename": "dash-cli-0.1.4.tar.gz", "has_sig": false, "md5_digest": "b8d8ea220f17fd44cfb94ddabef43479", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 8194, "upload_time": "2018-05-20T23:55:54", "url": "https://files.pythonhosted.org/packages/85/b4/627d07d6bb0b67b5422aaf1b8ad1c0daf1023e00bfd92be5f9cb1cd218e9/dash-cli-0.1.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b8d8ea220f17fd44cfb94ddabef43479", "sha256": "43b54c59617f9d1ac3712b6ed1b2b46a472e8d637d443e7a5e5812adbbee712a" }, "downloads": -1, "filename": "dash-cli-0.1.4.tar.gz", "has_sig": false, "md5_digest": "b8d8ea220f17fd44cfb94ddabef43479", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 8194, "upload_time": "2018-05-20T23:55:54", "url": "https://files.pythonhosted.org/packages/85/b4/627d07d6bb0b67b5422aaf1b8ad1c0daf1023e00bfd92be5f9cb1cd218e9/dash-cli-0.1.4.tar.gz" } ] }