{ "info": { "author": "Armand McQueen", "author_email": "armandmcqueen@gmail.com", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python :: 3.6" ], "description": "# ec2-cluster\n\n\n\nSimple CLI and Python library to spin up and run shell commands on clusters of EC2 instances using [`boto3`](https://boto3.amazonaws.com/v1/documentation/api/latest/index.html) and [`fabric`](https://github.com/fabric/fabric). Multi-purpose, but created to make deep learning distributed training infrastructure easier. Also very useful for running performance tests across multiple EC2 instance types.\n\n## Quickstart\n\nThis code will launch a cluster of EC2 instances, run the command `hostname` on all of them, return the results of the command and then tear down the cluster.\n\n```python\nimport ec2_cluster as ec3\n\nwith ec3.infra.ConfigCluster(\"cluster.yaml\") as cluster:\n sh = cluster.get_shell()\n results = sh.run_on_all(\"hostname\")\n hostnames = [result.stdout for result in results]\n```\n\n## Long-running tasks\n\n`ec2-cluster` is also designed for long-running tasks where you may not want to keep your local machine awake for the full duration. The library relies on EC2 tags to keep track of EC2 instances, letting you interact with a cluster across sessions without needing an always-on control plane.\n\nBelow is one way to launch complicated, long-running jobs and download the results at some later time. `check_on_job()` can be run in a different session or even a different machine than `launch_job()` as long as they have the same `cluster.yaml` and are using the same AWS account.\n\n```python\nimport ec2_cluster as ec3\n\ndef launch_job():\n cluster = ec3.infra.ConfigCluster(\"cluster.yaml\")\n cluster.launch(verbose=True)\n sh = cluster.get_shell()\n sh.copy_from_local_to_all(\"job_script.py\", \"job_script.py\")\n sh.run_on_all(\"python job_script.py > job.log 2>&1 &\") # Launch script as background process\n\n\ndef check_on_job():\n cluster = ec3.infra.ConfigCluster(\"cluster.yaml\")\n sh = cluster.get_shell()\n statuses = sh.run_on_all(\"tail -n 1 job.log\", hide=True)\n for status in statuses:\n if status.stdout.rstrip(\"\\n\") != \"job_script.py complete\":\n print(\"Job is not yet complete on all instances\")\n return\n\n print(\"Job is finally done on all instances!\")\n\n sh.copy_from_all_to_local(\"job.log\", \"./results/\")\n cluster.terminate(verbose=True)\n```\nThis will create a directory on your local machine:\n```\nresults/\n\u251c\u2500\u2500 0\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 ip.txt\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 job.log\n\u251c\u2500\u2500 1\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 ip.txt\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 job.log\n\u2514\u2500\u2500 3\n \u251c\u2500\u2500 ip.txt\n \u2514\u2500\u2500 job.log\n```\n\n\n\n\n## Overview\n\n\n`ec2-cluster` is designed for simple distributed tasks where Kubernetes is overkill. There is no setup required other than the ability to launch EC2 instances with `boto3` and the ability to SSH to those instances (only a requirement if you want to run commands on them). \n\n`ec2-cluster` provides the ability to launch a cluster, to retrieve IP addresses for all nodes/nodes in the cluster, to delete the cluster and to execute commands on some or all of the instances. \n\nUnlike like most cluster management tools, all cluster management in `ec2-cluster` happens client-side. `ec2-cluster` creates EC2 instances and gives them globally unique names (using the EC2 Name tag) which is later used to identify which instances are part of a given cluster. `ec2-cluster` then provides convenience classes to run commands on some or all of the instances via SSH (using the [`fabric`](https://github.com/fabric/fabric) library).\n\n## Other benefits\n\n- Resilient to EC2 capacity limits. If instances are not available, `ec2-cluster` will retry until the all nodes in the cluster are created or until the user-set timeout is reached.\n- Easy to quickly launch duplicate clusters for parallel training runs.\n- Can write orchestration logic that needs to be run when launching a cluster, e.g. enabling passwordless ssh between all instances for Horovod-based training\n- Iterative, not disruptive, improvements on the common methodology of manually launching EC2 instances, ssh-ing to them, configuring environments by hand and running scripts\n\n\n\n\n\n\n### Usage\n\n`ec2-cluster` can be consumed in two ways:\n\n- A CLI for launching, describing and deleting clusters. \n- A python library for scripting. \n\nThis library has three main components:L\n- **infra**: creating cluster infrastructure\n- **orch**: orchestrating simple runtime cluster configuration (e.g. generate a hostfile with runtime IPs)\n- **control**: running commands on the cluster\n\n### CLI Quick Start\n\n### Library Quick Start\n\n\n\n\n\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/armandmcqueen/ec2-cluster", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "ec2-cluster", "package_url": "https://pypi.org/project/ec2-cluster/", "platform": "", "project_url": "https://pypi.org/project/ec2-cluster/", "project_urls": { "Homepage": "https://github.com/armandmcqueen/ec2-cluster" }, "release_url": "https://pypi.org/project/ec2-cluster/0.5.0/", "requires_dist": [ "paramiko (<=2.5.1)", "fabric2 (>2.3.0)", "boto3", "pyyaml", "tabulate" ], "requires_python": "", "summary": "A tool for launching and running commands on multiple EC2 instances", "version": "0.5.0", "yanked": false, "yanked_reason": null }, "last_serial": 11057087, "releases": { "0.0.0a1": [ { "comment_text": "", "digests": { "md5": "20cf7501a1f0e4088f56c9ce636acb70", "sha256": "3705bfdcb1b2bfb9a1bc2d0b9ffe8f2966ff8e847c646862d174cbbbd3903a71" }, "downloads": -1, "filename": "ec2_cluster-0.0.0a1-py3-none-any.whl", "has_sig": false, "md5_digest": "20cf7501a1f0e4088f56c9ce636acb70", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19433, "upload_time": "2019-02-04T00:36:47", "upload_time_iso_8601": "2019-02-04T00:36:47.854389Z", "url": "https://files.pythonhosted.org/packages/da/6b/b8e7694fd584a6d33fc075752cda0fc07dba488d82b0ccc1583ea43293a6/ec2_cluster-0.0.0a1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "1f1fa54f5f4a2cfd3033bf644ccd9b8a", "sha256": "dbf1a6f1c85c37e0422a6660008759de42972fd48163d5e0f4c2275f2b3abfad" }, "downloads": -1, "filename": "ec2_cluster-0.0.0a1.tar.gz", "has_sig": false, "md5_digest": "1f1fa54f5f4a2cfd3033bf644ccd9b8a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11898, "upload_time": "2019-02-04T00:36:49", "upload_time_iso_8601": "2019-02-04T00:36:49.953172Z", "url": "https://files.pythonhosted.org/packages/ee/47/89afd310391d2ec3bdc72a5294c78c14f08ded402b053b534377bc9dcfa8/ec2_cluster-0.0.0a1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.0a2": [ { "comment_text": "", "digests": { "md5": "4d57f19f46790cfa46eeeb6fb90fa7ee", "sha256": "d919336a3590e8b02823f892aac9319880d685614e284f19d4241d90e778cb99" }, "downloads": -1, "filename": "ec2_cluster-0.0.0a2-py3-none-any.whl", "has_sig": false, "md5_digest": "4d57f19f46790cfa46eeeb6fb90fa7ee", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19430, "upload_time": "2019-02-04T00:52:39", "upload_time_iso_8601": "2019-02-04T00:52:39.893342Z", "url": "https://files.pythonhosted.org/packages/70/69/97b6f9fa0f11ef1eb8e8142fdad0a171dc77c49aaf477f9f5f88131757d4/ec2_cluster-0.0.0a2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "f2fe2b65d7a59fc77b98499cffbe40a0", "sha256": "216b97b5158e225f2dbfbff6f2146cb2ff372584e90b8b40f2eaefae0aef62eb" }, "downloads": -1, "filename": "ec2_cluster-0.0.0a2.tar.gz", "has_sig": false, "md5_digest": "f2fe2b65d7a59fc77b98499cffbe40a0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11899, "upload_time": "2019-02-04T00:52:42", "upload_time_iso_8601": "2019-02-04T00:52:42.638802Z", "url": "https://files.pythonhosted.org/packages/5d/c9/729095f34817d2bbdfe1d9c5ec29e2dc795877a2100d98c01298d1a2baef/ec2_cluster-0.0.0a2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.0a3": [ { "comment_text": "", "digests": { "md5": "71fdebd3dd38cacbe57db84dc90170d0", "sha256": "f4b44784a5f1585ccc46fe6790824c121f26a867a4b4fb8529c2a1b78b0542dc" }, "downloads": -1, "filename": "ec2_cluster-0.0.0a3-py3-none-any.whl", "has_sig": false, "md5_digest": "71fdebd3dd38cacbe57db84dc90170d0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 15710, "upload_time": "2019-02-09T06:09:00", "upload_time_iso_8601": "2019-02-09T06:09:00.521072Z", "url": "https://files.pythonhosted.org/packages/64/b6/7019e05ab21998b19d3e151e87312520f69ef48d2184fd664b4a41859b92/ec2_cluster-0.0.0a3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "16c69a34ad918dfdcd5335f9cb63ed5d", "sha256": "183cda271f3c37b7ddedb8f85846f8f8533655876e0763b573d89bb5bc26981d" }, "downloads": -1, "filename": "ec2_cluster-0.0.0a3.tar.gz", "has_sig": false, "md5_digest": "16c69a34ad918dfdcd5335f9cb63ed5d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11955, "upload_time": "2019-02-09T06:09:03", "upload_time_iso_8601": "2019-02-09T06:09:03.561851Z", "url": "https://files.pythonhosted.org/packages/57/7c/ada94ae0b91f430026c00e3e3cbed36d418e3e78397626eab1cf5687cd9d/ec2_cluster-0.0.0a3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "e86cf2171f54f71b02acb1f2467737eb", "sha256": "37283b04f742ad8031a6e0ef325b5ba43fcc5fb7d5f8fbcba15e7e8e8522424d" }, "downloads": -1, "filename": "ec2_cluster-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e86cf2171f54f71b02acb1f2467737eb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16864, "upload_time": "2019-05-12T03:08:46", "upload_time_iso_8601": "2019-05-12T03:08:46.472288Z", "url": "https://files.pythonhosted.org/packages/ee/c4/125bea01baec4e232372aa0326e0cc2d205aed52114b84e9c6d2b2d54746/ec2_cluster-0.1.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "b37a373d1f422b67238918e796258fae", "sha256": "a94126cf093f919c26ddd3acf826ff3ba9ebaf799e76add1166e0bb650c227b4" }, "downloads": -1, "filename": "ec2_cluster-0.1.0.tar.gz", "has_sig": false, "md5_digest": "b37a373d1f422b67238918e796258fae", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15976, "upload_time": "2019-05-12T03:08:48", "upload_time_iso_8601": "2019-05-12T03:08:48.215151Z", "url": "https://files.pythonhosted.org/packages/6a/e9/eb1d53350e2adbae4d3ec396d5460e8d0b10bcc582a5df0608e423b7175c/ec2_cluster-0.1.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "f81b2dc017ebb9cf25cdb6cdcb3c787a", "sha256": "b4f4cb0ccea1c35e006f8baccdc1d54d88637f4ba32dacd12f52939bf5d05adf" }, "downloads": -1, "filename": "ec2_cluster-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "f81b2dc017ebb9cf25cdb6cdcb3c787a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 20691, "upload_time": "2019-05-12T03:41:36", "upload_time_iso_8601": "2019-05-12T03:41:36.417798Z", "url": "https://files.pythonhosted.org/packages/43/9a/b62a58bc3fd23d918d1edcb28a23f61e4ad914b8e6b6acb6a9dc0ffe94f9/ec2_cluster-0.2.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "7df3764b83f9e715b6a020731579d1d9", "sha256": "1d461ac8bec3678cb98b116bdf157fb4c6c0cd7f1481602371618d25e04b1e43" }, "downloads": -1, "filename": "ec2_cluster-0.2.0.tar.gz", "has_sig": false, "md5_digest": "7df3764b83f9e715b6a020731579d1d9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19245, "upload_time": "2019-05-12T03:41:41", "upload_time_iso_8601": "2019-05-12T03:41:41.427883Z", "url": "https://files.pythonhosted.org/packages/2a/50/ef998e5aa2a5bc503390571ca1b7dfb4ee32f869c1514f024e541f13d925/ec2_cluster-0.2.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.0a1": [ { "comment_text": "", "digests": { "md5": "3f078a76946321ef397c5c2972347867", "sha256": "b6ac22e4ebd3822ca6e4a2326010bc024110a9264eb1dd5382a39e14f24716e9" }, "downloads": -1, "filename": "ec2_cluster-0.2.0a1-py3-none-any.whl", "has_sig": false, "md5_digest": "3f078a76946321ef397c5c2972347867", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16893, "upload_time": "2019-05-12T03:11:51", "upload_time_iso_8601": "2019-05-12T03:11:51.535988Z", "url": "https://files.pythonhosted.org/packages/87/7c/f5fdee38ccf1b42c81abe46a287f1d5e17a13f7530cbd79734925796b8f1/ec2_cluster-0.2.0a1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "fe591295b34c58a3e7e883d1420e8133", "sha256": "c2a79f8786536776c132045a67032b4d26ec205bcfcc3b5432970d0cc184c061" }, "downloads": -1, "filename": "ec2_cluster-0.2.0a1.tar.gz", "has_sig": false, "md5_digest": "fe591295b34c58a3e7e883d1420e8133", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15979, "upload_time": "2019-05-12T03:11:53", "upload_time_iso_8601": "2019-05-12T03:11:53.122532Z", "url": "https://files.pythonhosted.org/packages/d3/49/e174dda8a7d406cf3896be80a4df7055da8713914cc942c13f86641a4065/ec2_cluster-0.2.0a1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.0a2": [ { "comment_text": "", "digests": { "md5": "7922537f673ba12576a7a613d0f58c7f", "sha256": "c16ba068bf28bdd1e39ea358be04c449ae4ace1eeac1c9492884444ee538cf76" }, "downloads": -1, "filename": "ec2_cluster-0.2.0a2-py3-none-any.whl", "has_sig": false, "md5_digest": "7922537f673ba12576a7a613d0f58c7f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19198, "upload_time": "2019-05-12T03:19:12", "upload_time_iso_8601": "2019-05-12T03:19:12.502868Z", "url": "https://files.pythonhosted.org/packages/92/8a/6715bc320f57d8c9a2c7e88ca48cf6b8659ab9d73781d1b488b836b13715/ec2_cluster-0.2.0a2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "64d91d0172783ffd4dc1a289f8856140", "sha256": "b44bbe8b382b39891957152dbf9482bc4991688abdf3121c4f3a663f309a3c36" }, "downloads": -1, "filename": "ec2_cluster-0.2.0a2.tar.gz", "has_sig": false, "md5_digest": "64d91d0172783ffd4dc1a289f8856140", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17948, "upload_time": "2019-05-12T03:19:14", "upload_time_iso_8601": "2019-05-12T03:19:14.338562Z", "url": "https://files.pythonhosted.org/packages/a9/ae/77858aa06f019ff3eb5a1892c74d82dd2e90c9223017f6df1d5ebf1a54a5/ec2_cluster-0.2.0a2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.0a3": [ { "comment_text": "", "digests": { "md5": "e76e88476cb81b20decca6c96b23c61f", "sha256": "1d0fc053e5ce5cd25f70eb283a011064539ba7f6ce38c1b1f846d0f798366da0" }, "downloads": -1, "filename": "ec2_cluster-0.2.0a3-py3-none-any.whl", "has_sig": false, "md5_digest": "e76e88476cb81b20decca6c96b23c61f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19235, "upload_time": "2019-05-12T03:21:19", "upload_time_iso_8601": "2019-05-12T03:21:19.042023Z", "url": "https://files.pythonhosted.org/packages/85/34/2dffde47042e65975ab2888a0caad26538e1d5f4284ee304d6fb6a20fc4c/ec2_cluster-0.2.0a3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "efdd9b852cf4da696859bb8ab19d6746", "sha256": "acb17518717501c331dcdb0abb3a88939f03362ae30ad8022cb3fd19b87492fa" }, "downloads": -1, "filename": "ec2_cluster-0.2.0a3.tar.gz", "has_sig": false, "md5_digest": "efdd9b852cf4da696859bb8ab19d6746", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18025, "upload_time": "2019-05-12T03:21:21", "upload_time_iso_8601": "2019-05-12T03:21:21.173179Z", "url": "https://files.pythonhosted.org/packages/34/85/b9ff0f609b5186653050d022fb39eb028c68f2762fab531d078844088e07/ec2_cluster-0.2.0a3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.0a4": [ { "comment_text": "", "digests": { "md5": "0d2929daa96fb72c8b37b58776bc03b5", "sha256": "7eabfa7c130906da17179729e54da7166b2b350e8220f03a2dcf65e4f2e9d102" }, "downloads": -1, "filename": "ec2_cluster-0.2.0a4-py3-none-any.whl", "has_sig": false, "md5_digest": "0d2929daa96fb72c8b37b58776bc03b5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19300, "upload_time": "2019-05-12T03:30:09", "upload_time_iso_8601": "2019-05-12T03:30:09.183879Z", "url": "https://files.pythonhosted.org/packages/90/92/34e67026604351cc8756e5b82f65f4ce3c69f86aa76e34eb3d326bd6105e/ec2_cluster-0.2.0a4-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "fc577cf1a9df503be5ddbcf5a13f8888", "sha256": "50598f87ee87b0d99275004bc27eb1c94a421377c61b49396f17b84ebabd3f2a" }, "downloads": -1, "filename": "ec2_cluster-0.2.0a4.tar.gz", "has_sig": false, "md5_digest": "fc577cf1a9df503be5ddbcf5a13f8888", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18087, "upload_time": "2019-05-12T03:30:10", "upload_time_iso_8601": "2019-05-12T03:30:10.834411Z", "url": "https://files.pythonhosted.org/packages/e8/40/40c7d9d74a7c122e75404b3819f3368594a81c0b1c06689b4a3a970b362b/ec2_cluster-0.2.0a4.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.0a5": [ { "comment_text": "", "digests": { "md5": "b435fa5196f5109bdd63917d30128a50", "sha256": "ee3ff15ffc26f008520e7ca52e20a124217c773fe3ce4a42b6132695dc981178" }, "downloads": -1, "filename": "ec2_cluster-0.2.0a5-py3-none-any.whl", "has_sig": false, "md5_digest": "b435fa5196f5109bdd63917d30128a50", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19207, "upload_time": "2019-05-12T03:31:49", "upload_time_iso_8601": "2019-05-12T03:31:49.917243Z", "url": "https://files.pythonhosted.org/packages/c8/29/eb942caef449e9f8b581b3c92fb285fa8ec89b7a8e6036f3baa6e582635a/ec2_cluster-0.2.0a5-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "c7a1a2efd46a14740128f8f40df24b0a", "sha256": "cf7bd8cbb8ca50cf24b385942f0c36a3bb97d4bad0fdcdbcf047c1bda79565e1" }, "downloads": -1, "filename": "ec2_cluster-0.2.0a5.tar.gz", "has_sig": false, "md5_digest": "c7a1a2efd46a14740128f8f40df24b0a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18052, "upload_time": "2019-05-12T03:31:52", "upload_time_iso_8601": "2019-05-12T03:31:52.042639Z", "url": "https://files.pythonhosted.org/packages/0a/ae/1d31e7822b8df1b9bfdfd16b63a06d29f756d36d2e52dc374b5fc8d508b6/ec2_cluster-0.2.0a5.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.0a6": [ { "comment_text": "", "digests": { "md5": "6f65bf58cf3baa48a42a5814d02ddcfc", "sha256": "2a461d529716ae2c917b2c0fce3b2dcd970f195bdb7fbe6262e0eef56ee1ec00" }, "downloads": -1, "filename": "ec2_cluster-0.2.0a6-py3-none-any.whl", "has_sig": false, "md5_digest": "6f65bf58cf3baa48a42a5814d02ddcfc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19205, "upload_time": "2019-05-12T03:35:52", "upload_time_iso_8601": "2019-05-12T03:35:52.444005Z", "url": "https://files.pythonhosted.org/packages/13/c2/9784d397eec05fe6b2ff04477f5d432fdf472ec353c5a452a0a208bce497/ec2_cluster-0.2.0a6-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "8dc3176ccf964a35533c32aabd073a49", "sha256": "da500e440671c4fa8755c434711a90ddb4d91e81c39418fe8464f334f93a0b06" }, "downloads": -1, "filename": "ec2_cluster-0.2.0a6.tar.gz", "has_sig": false, "md5_digest": "8dc3176ccf964a35533c32aabd073a49", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19236, "upload_time": "2019-05-12T03:35:55", "upload_time_iso_8601": "2019-05-12T03:35:55.106849Z", "url": "https://files.pythonhosted.org/packages/94/bd/940146bf1f64f145e8d9355e6292d6135699b0c0b767cd4d028fa3694557/ec2_cluster-0.2.0a6.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.0a7": [ { "comment_text": "", "digests": { "md5": "f5b2508bb35d43694143313995e6b230", "sha256": "88ab6fa28d7fdc3115007ef26d54a91712c0cb126c21597146f03b16aac15c07" }, "downloads": -1, "filename": "ec2_cluster-0.2.0a7-py3-none-any.whl", "has_sig": false, "md5_digest": "f5b2508bb35d43694143313995e6b230", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19208, "upload_time": "2019-05-12T03:40:25", "upload_time_iso_8601": "2019-05-12T03:40:25.650071Z", "url": "https://files.pythonhosted.org/packages/74/3f/75f916d19a770562d7b5b9a9e09f412829309d4e62e75d0f30b2c228ed1a/ec2_cluster-0.2.0a7-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "ff4b7a42eb8e31a9488b7f41b9738adc", "sha256": "ae7dec7fc033bd778c7356d7d3fe173f033eb46f2c358a7e28c70409531a1f42" }, "downloads": -1, "filename": "ec2_cluster-0.2.0a7.tar.gz", "has_sig": false, "md5_digest": "ff4b7a42eb8e31a9488b7f41b9738adc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19231, "upload_time": "2019-05-12T03:40:31", "upload_time_iso_8601": "2019-05-12T03:40:31.191940Z", "url": "https://files.pythonhosted.org/packages/b3/bb/d941f63d03768d63a8f2d56b259565e0c8d7abfdb4a1d323904acf772201/ec2_cluster-0.2.0a7.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.0a8": [ { "comment_text": "", "digests": { "md5": "10f65e642bb15b2619d3ccdf0ba973b1", "sha256": "225d40eb00b36a73f17a539e04448fdb0c0884084c7209b6e37d01b0e2a9b9c9" }, "downloads": -1, "filename": "ec2_cluster-0.2.0a8-py3-none-any.whl", "has_sig": false, "md5_digest": "10f65e642bb15b2619d3ccdf0ba973b1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 20715, "upload_time": "2019-05-12T03:40:27", "upload_time_iso_8601": "2019-05-12T03:40:27.104957Z", "url": "https://files.pythonhosted.org/packages/ba/ef/32d336689bdaf4f0ccaba5c9e31705445b41d8bbce3a453fd4c0ba5998df/ec2_cluster-0.2.0a8-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "80592b0bc087d5f9ddc2df13c4e41e6f", "sha256": "c49f0a89338195e6998fd00fa95fd710fc21a20a9a1a81abce91ce455cbdac22" }, "downloads": -1, "filename": "ec2_cluster-0.2.0a8.tar.gz", "has_sig": false, "md5_digest": "80592b0bc087d5f9ddc2df13c4e41e6f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19246, "upload_time": "2019-05-12T03:40:32", "upload_time_iso_8601": "2019-05-12T03:40:32.818234Z", "url": "https://files.pythonhosted.org/packages/55/bd/59ca07e45c94a62b396366a468264dba9b7b6801517e895d8d722f3b1921/ec2_cluster-0.2.0a8.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "a0b9fe43874fe23003b6c74de9270105", "sha256": "f20ada7cf4acb2d094a3933fe3c639ebd9acf9a438792752d58930f9ce6aaa21" }, "downloads": -1, "filename": "ec2_cluster-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "a0b9fe43874fe23003b6c74de9270105", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 21761, "upload_time": "2019-05-14T04:41:10", "upload_time_iso_8601": "2019-05-14T04:41:10.948534Z", "url": "https://files.pythonhosted.org/packages/d9/89/7954b9d3c662ad19dbf570209331468e78d5f3837cf16a3cd20462f56005/ec2_cluster-0.3.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "51e165041da04df91905a88f9968f021", "sha256": "fbd0f162c6eda59abacac802a10ee1158a1966c2caf841eab67a307988236f67" }, "downloads": -1, "filename": "ec2_cluster-0.3.0.tar.gz", "has_sig": false, "md5_digest": "51e165041da04df91905a88f9968f021", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19427, "upload_time": "2019-05-14T04:41:12", "upload_time_iso_8601": "2019-05-14T04:41:12.233232Z", "url": "https://files.pythonhosted.org/packages/ca/9f/c1ef923b3007f47172b6639b8b33e9ab74d4ddd6c0090249c3cdb7ec52d6/ec2_cluster-0.3.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.0rc1": [ { "comment_text": "", "digests": { "md5": "2b301e3ed539d4ccc75e9950e4fc959a", "sha256": "eb89afaa2d10902b7057466f20f90e14828e1c3b2b75cdc0845e5fa2fd90d84f" }, "downloads": -1, "filename": "ec2_cluster-0.3.0rc1-py3-none-any.whl", "has_sig": false, "md5_digest": "2b301e3ed539d4ccc75e9950e4fc959a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 20211, "upload_time": "2019-05-14T04:10:28", "upload_time_iso_8601": "2019-05-14T04:10:28.033641Z", "url": "https://files.pythonhosted.org/packages/e9/dd/9e121342cb833dfb65590130b6a870380367a142c1cb5b6f614bbc0ee7a4/ec2_cluster-0.3.0rc1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "c042ccf84c19b8f591b05c11c46e808e", "sha256": "a5c5d992b7a36b79f904aa306ad4ceff9fbfc71c2cbc17e35ab613235ab25a48" }, "downloads": -1, "filename": "ec2_cluster-0.3.0rc1.tar.gz", "has_sig": false, "md5_digest": "c042ccf84c19b8f591b05c11c46e808e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18325, "upload_time": "2019-05-14T04:10:29", "upload_time_iso_8601": "2019-05-14T04:10:29.515948Z", "url": "https://files.pythonhosted.org/packages/ff/f2/cf06829da025aee9866d1bc0ab95f63f6df7a2312bc9efd138e0e2707002/ec2_cluster-0.3.0rc1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.0rc2": [ { "comment_text": "", "digests": { "md5": "5651f318a51ee613e41b3dd5d92fa52d", "sha256": "a1418beed819bd2af85df729c440cbf58e8d5200eda8af4b7e906cf7b5c25ef0" }, "downloads": -1, "filename": "ec2_cluster-0.3.0rc2-py3-none-any.whl", "has_sig": false, "md5_digest": "5651f318a51ee613e41b3dd5d92fa52d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 20258, "upload_time": "2019-05-14T04:15:16", "upload_time_iso_8601": "2019-05-14T04:15:16.315232Z", "url": "https://files.pythonhosted.org/packages/e3/c5/6d3c41acc4488f694253c2e1dab8fe235d3a38d6765c5426e788c7d1deb8/ec2_cluster-0.3.0rc2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "1f0af16cbd316001fedea55c8ca8f68b", "sha256": "7fecfc931da1c80761e155d5e48b2f17a0450e6663be0d2ad65016b148874b44" }, "downloads": -1, "filename": "ec2_cluster-0.3.0rc2.tar.gz", "has_sig": false, "md5_digest": "1f0af16cbd316001fedea55c8ca8f68b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18365, "upload_time": "2019-05-14T04:15:18", "upload_time_iso_8601": "2019-05-14T04:15:18.291718Z", "url": "https://files.pythonhosted.org/packages/6a/47/4d7e12312010d3676c9cfda35d046c1390bcf47b4fbf9c2a6a021eb3695e/ec2_cluster-0.3.0rc2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.0rc3": [ { "comment_text": "", "digests": { "md5": "dfbb80bfdd4a4fa0bad5f3c27ed3cb32", "sha256": "fd39f1b4014f5d64e132669047db5bf956e8e62406f74cd97a176b2294214329" }, "downloads": -1, "filename": "ec2_cluster-0.3.0rc3-py3-none-any.whl", "has_sig": false, "md5_digest": "dfbb80bfdd4a4fa0bad5f3c27ed3cb32", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 20254, "upload_time": "2019-05-14T04:21:17", "upload_time_iso_8601": "2019-05-14T04:21:17.358787Z", "url": "https://files.pythonhosted.org/packages/e8/43/24629d6d6f0168d63c9cbf4202226ac2cd4f22d27ca8a54a2e5a1f0847fe/ec2_cluster-0.3.0rc3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "f618556be920e51da6d2abe032c23f74", "sha256": "284e288190392ea99828ed33c4eba4cdf06ea63e52066c512e712565a2461c9b" }, "downloads": -1, "filename": "ec2_cluster-0.3.0rc3.tar.gz", "has_sig": false, "md5_digest": "f618556be920e51da6d2abe032c23f74", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18356, "upload_time": "2019-05-14T04:21:18", "upload_time_iso_8601": "2019-05-14T04:21:18.572950Z", "url": "https://files.pythonhosted.org/packages/b3/87/df271849c6d11d722ae7be16efd706a46823bf1dd75ded945e335ecfe2a8/ec2_cluster-0.3.0rc3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.0rc4": [ { "comment_text": "", "digests": { "md5": "e20374bf42c0211690671e1b53243e64", "sha256": "ebc7aece37a346888c78d2a5b7c46b9c2f387f4323e9b70d45b51d6a42403c97" }, "downloads": -1, "filename": "ec2_cluster-0.3.0rc4-py3-none-any.whl", "has_sig": false, "md5_digest": "e20374bf42c0211690671e1b53243e64", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 21795, "upload_time": "2019-05-14T04:31:23", "upload_time_iso_8601": "2019-05-14T04:31:23.152733Z", "url": "https://files.pythonhosted.org/packages/dc/87/e3fe136299b5d6393339ec139ddcdfbfb973d0ec6be0efed5660d16cc4c5/ec2_cluster-0.3.0rc4-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "05fc661b9570b654d55b089e457aa611", "sha256": "d15b9c8e63f99a1bf075f314b5d9b68d4a1749e1de7ebf233e965714243ec6b7" }, "downloads": -1, "filename": "ec2_cluster-0.3.0rc4.tar.gz", "has_sig": false, "md5_digest": "05fc661b9570b654d55b089e457aa611", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19435, "upload_time": "2019-05-14T04:31:25", "upload_time_iso_8601": "2019-05-14T04:31:25.266786Z", "url": "https://files.pythonhosted.org/packages/11/12/0c6a8a2f4d269b72de70bed8d082843851b46edcad1e8d824719b85b5c96/ec2_cluster-0.3.0rc4.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "931a0a2fa5eec1993320e53013fd6544", "sha256": "f4149bc29efa6547ae73c8b932bb2a1ea7383829cd67a92cb7e4e8788f582aa5" }, "downloads": -1, "filename": "ec2_cluster-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "931a0a2fa5eec1993320e53013fd6544", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 21791, "upload_time": "2019-05-14T04:57:10", "upload_time_iso_8601": "2019-05-14T04:57:10.268781Z", "url": "https://files.pythonhosted.org/packages/91/b9/5856c3c5992ef46fb82b4c2593db99c0c9876117d6c4419d84b1d63aeee2/ec2_cluster-0.3.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "3cbacfc422d08f8d236e573b7e7523b9", "sha256": "c3951cc72bbfac1e7da2375c067d42bbc5ed0368c77ea58411868199fc7b20e8" }, "downloads": -1, "filename": "ec2_cluster-0.3.1.tar.gz", "has_sig": false, "md5_digest": "3cbacfc422d08f8d236e573b7e7523b9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19466, "upload_time": "2019-05-14T04:57:12", "upload_time_iso_8601": "2019-05-14T04:57:12.350876Z", "url": "https://files.pythonhosted.org/packages/c8/a4/739ef767933e567cc3155774af18cf775579afb40ace09aca40e8c72fc26/ec2_cluster-0.3.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.1rc1": [ { "comment_text": "", "digests": { "md5": "5b66a8891ae6ee38828342020923fd1f", "sha256": "be5e91ee06d057cfd99d9d39f0cf189e384055d65ac1aef9a58f22930d4d7356" }, "downloads": -1, "filename": "ec2_cluster-0.3.1rc1-py3-none-any.whl", "has_sig": false, "md5_digest": "5b66a8891ae6ee38828342020923fd1f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 21829, "upload_time": "2019-05-14T04:53:58", "upload_time_iso_8601": "2019-05-14T04:53:58.867863Z", "url": "https://files.pythonhosted.org/packages/72/0c/df5db68fbbd4990ce62f02ab20aa86c0933425ef12091f46372818afb1cf/ec2_cluster-0.3.1rc1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "b8de822a046f0fd5d3399898208935ca", "sha256": "09687e75046329652f062e63ccbed6b6ae4ccc7a386c51b2e799029f6bfbb983" }, "downloads": -1, "filename": "ec2_cluster-0.3.1rc1.tar.gz", "has_sig": false, "md5_digest": "b8de822a046f0fd5d3399898208935ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19468, "upload_time": "2019-05-14T04:54:00", "upload_time_iso_8601": "2019-05-14T04:54:00.350629Z", "url": "https://files.pythonhosted.org/packages/0c/a9/ea380559b96c92ace0a0584a939449085972ad3ff32e29a4a8306b2c68b3/ec2_cluster-0.3.1rc1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "f56003037c5aac2938ff19b5e3277083", "sha256": "15102c21750f9fb40d7bbe6913555cf4eabe3ddf20bc5a16275f8c6cb7fa9670" }, "downloads": -1, "filename": "ec2_cluster-0.3.2-py3-none-any.whl", "has_sig": false, "md5_digest": "f56003037c5aac2938ff19b5e3277083", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22232, "upload_time": "2019-10-18T05:18:27", "upload_time_iso_8601": "2019-10-18T05:18:27.570888Z", "url": "https://files.pythonhosted.org/packages/b1/8f/82ddcf1b08415bae54e6ac8f7bdcbfb2bb70d136f682ce7bdf681d4a4e66/ec2_cluster-0.3.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "0f5892833496ceae607fb741e12469dd", "sha256": "6986cc0ea1a0d3a82e3b938fcc80666519d72fabd09b97a68c9f10836fab3db5" }, "downloads": -1, "filename": "ec2_cluster-0.3.2.tar.gz", "has_sig": false, "md5_digest": "0f5892833496ceae607fb741e12469dd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20816, "upload_time": "2019-10-18T05:18:29", "upload_time_iso_8601": "2019-10-18T05:18:29.434782Z", "url": "https://files.pythonhosted.org/packages/cb/b3/c92acac8728628d0f6d4d41af362b0b2e12b3b7ce3ba77b3e8e99b93b5cf/ec2_cluster-0.3.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.3a1": [ { "comment_text": "", "digests": { "md5": "909634e4db00d819650a10c69837411e", "sha256": "4d62e150dc4867cfe6d55eb848c4258d1f53421232bf01d0bf0bc5ba47b96c1b" }, "downloads": -1, "filename": "ec2_cluster-0.3.3a1-py3-none-any.whl", "has_sig": false, "md5_digest": "909634e4db00d819650a10c69837411e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23044, "upload_time": "2019-10-23T09:50:05", "upload_time_iso_8601": "2019-10-23T09:50:05.725092Z", "url": "https://files.pythonhosted.org/packages/3d/2e/fa9bc4b78f1b08d9ec51e748e5293484736e70a658e2a6fdabc23661d703/ec2_cluster-0.3.3a1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "772c7e2f614bf5aa97c9adbb99665bb1", "sha256": "3331cf493afd9bcccc9fc7194fbca5eea9c2df556fb82a8857abbdb7595350b8" }, "downloads": -1, "filename": "ec2_cluster-0.3.3a1.tar.gz", "has_sig": false, "md5_digest": "772c7e2f614bf5aa97c9adbb99665bb1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21561, "upload_time": "2019-10-23T09:50:07", "upload_time_iso_8601": "2019-10-23T09:50:07.483260Z", "url": "https://files.pythonhosted.org/packages/e6/68/afb06b52710085239d0de3777e26a9175d98d6328021055f5e7296e1f681/ec2_cluster-0.3.3a1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.3a2": [ { "comment_text": "", "digests": { "md5": "9cf194029fdf2fd4b5b774f2aaa58f83", "sha256": "68e8e9152b17e2a0892fadb38038357980110106b2634053fbfc0db4d950b065" }, "downloads": -1, "filename": "ec2_cluster-0.3.3a2-py3-none-any.whl", "has_sig": false, "md5_digest": "9cf194029fdf2fd4b5b774f2aaa58f83", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23045, "upload_time": "2019-10-23T09:53:10", "upload_time_iso_8601": "2019-10-23T09:53:10.011405Z", "url": "https://files.pythonhosted.org/packages/ac/0f/b6095de47c23306a96090b6bc14927e7327b5e19ff5cb0c465eed6d700e7/ec2_cluster-0.3.3a2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "befe467209bd882584c50af923db019a", "sha256": "52a292c1cfb55b6edc7a84fa0f275d1e318f7ba52373b2f4ff9e5976ffd2b153" }, "downloads": -1, "filename": "ec2_cluster-0.3.3a2.tar.gz", "has_sig": false, "md5_digest": "befe467209bd882584c50af923db019a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21561, "upload_time": "2019-10-23T09:53:11", "upload_time_iso_8601": "2019-10-23T09:53:11.401965Z", "url": "https://files.pythonhosted.org/packages/28/6e/14f26981adb42b6a06aa0a872772952ff1dbe61da520dffca0aed3ad0d5a/ec2_cluster-0.3.3a2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.3a3": [ { "comment_text": "", "digests": { "md5": "b824d40f3ee4512a3f7e840e19137a73", "sha256": "a5b73bb7e0e33ced066b7e3d078830dec76a575a2aa49cead019f509c422a6b9" }, "downloads": -1, "filename": "ec2_cluster-0.3.3a3-py3-none-any.whl", "has_sig": false, "md5_digest": "b824d40f3ee4512a3f7e840e19137a73", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23152, "upload_time": "2019-10-23T10:19:44", "upload_time_iso_8601": "2019-10-23T10:19:44.947239Z", "url": "https://files.pythonhosted.org/packages/2d/73/3f2ac4de432de280371b29e2da27fcc1991bd065a36af94e38600bee688e/ec2_cluster-0.3.3a3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "493e708097f878baf586037056f72b45", "sha256": "4e46a016256e1d73395b0957a6e8455975ffc0ca07ea26b8ea428db5a1c4b7d2" }, "downloads": -1, "filename": "ec2_cluster-0.3.3a3.tar.gz", "has_sig": false, "md5_digest": "493e708097f878baf586037056f72b45", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21672, "upload_time": "2019-10-23T10:19:47", "upload_time_iso_8601": "2019-10-23T10:19:47.317650Z", "url": "https://files.pythonhosted.org/packages/18/a7/9b18f6d4453a4dd8cb3ee6de330bc62ca05f85656fac6643317804ee06e5/ec2_cluster-0.3.3a3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.3a4": [ { "comment_text": "", "digests": { "md5": "8c0ba9fb9b35c6754e490d9f3d538835", "sha256": "72920facb3985e80cb19e3436b67ab4beb084c82fa7102c6e8d8ed788e1ef52c" }, "downloads": -1, "filename": "ec2_cluster-0.3.3a4-py3-none-any.whl", "has_sig": false, "md5_digest": "8c0ba9fb9b35c6754e490d9f3d538835", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23262, "upload_time": "2019-10-23T10:45:41", "upload_time_iso_8601": "2019-10-23T10:45:41.612315Z", "url": "https://files.pythonhosted.org/packages/ce/24/1e1152254bb0824d924cedf5b31ad4bb7195982c8339eed9b5bff1367a52/ec2_cluster-0.3.3a4-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "b0a579181b4c68300fea020e3da5e42f", "sha256": "bf52a815e1b61957a7cdaa3dde6e0bb489632df8944a10ce543ada28beb8e8af" }, "downloads": -1, "filename": "ec2_cluster-0.3.3a4.tar.gz", "has_sig": false, "md5_digest": "b0a579181b4c68300fea020e3da5e42f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21788, "upload_time": "2019-10-23T10:45:43", "upload_time_iso_8601": "2019-10-23T10:45:43.804474Z", "url": "https://files.pythonhosted.org/packages/7b/0b/20f15b7a4ebbb91a036e1382df5fc257bce818fed5bfce588ebad532daf8/ec2_cluster-0.3.3a4.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.3a5": [ { "comment_text": "", "digests": { "md5": "5f814e3cd980a6b5301f8e44c43f0a1e", "sha256": "2d55a93c7ef2b1c83d6de9cb9b71f7e50fbd1c3eb090049f7569c62a6cafca43" }, "downloads": -1, "filename": "ec2_cluster-0.3.3a5-py3-none-any.whl", "has_sig": false, "md5_digest": "5f814e3cd980a6b5301f8e44c43f0a1e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23261, "upload_time": "2019-10-23T11:02:01", "upload_time_iso_8601": "2019-10-23T11:02:01.342336Z", "url": "https://files.pythonhosted.org/packages/f1/61/8b537e772f54124334776cc32cc4e6badfef2ddbc9c9538c9b1aaa5a17bb/ec2_cluster-0.3.3a5-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "21649993de332b3cb4b087abea086a07", "sha256": "7746d5af3f73c64fbde42266a395ffbeaa0c8ecb69843f3abee203900a7d37ff" }, "downloads": -1, "filename": "ec2_cluster-0.3.3a5.tar.gz", "has_sig": false, "md5_digest": "21649993de332b3cb4b087abea086a07", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21784, "upload_time": "2019-10-23T11:02:03", "upload_time_iso_8601": "2019-10-23T11:02:03.046570Z", "url": "https://files.pythonhosted.org/packages/6a/44/66513121eb384e42df7031b208749e58808144b5c1f3208afdd73e68354c/ec2_cluster-0.3.3a5.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.3rc1": [ { "comment_text": "", "digests": { "md5": "9fa7cb338dea0ba976b99f5c09c7a55a", "sha256": "db191ad57eb9656eda9b4f4b59a6f6dd40fb0818443a8dfe0e0900700669f189" }, "downloads": -1, "filename": "ec2_cluster-0.3.3rc1-py3-none-any.whl", "has_sig": false, "md5_digest": "9fa7cb338dea0ba976b99f5c09c7a55a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22404, "upload_time": "2019-10-23T08:42:07", "upload_time_iso_8601": "2019-10-23T08:42:07.802418Z", "url": "https://files.pythonhosted.org/packages/8a/ea/e8eb78e53236b2ad02680231678bf3a7d4eebdbca73178923e30d441cb68/ec2_cluster-0.3.3rc1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "cccd8b67a26d3c2a8038a0ddb534e4d8", "sha256": "ef5d4c391eec497744e0ee0a3bdd81d44d12cd4d780263bf305ca93b4edff78d" }, "downloads": -1, "filename": "ec2_cluster-0.3.3rc1.tar.gz", "has_sig": false, "md5_digest": "cccd8b67a26d3c2a8038a0ddb534e4d8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21007, "upload_time": "2019-10-23T08:42:09", "upload_time_iso_8601": "2019-10-23T08:42:09.647316Z", "url": "https://files.pythonhosted.org/packages/f1/cc/88c67f5f72689877091aadac376e3511951f620de1a885385153b900a152/ec2_cluster-0.3.3rc1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.3rc2": [ { "comment_text": "", "digests": { "md5": "9524081f75373b06d6f7b78b0d0ff078", "sha256": "415de84d8aa9cf1582239d365ba4ae0e3ae4bd210f11e6a155871a81c7205df1" }, "downloads": -1, "filename": "ec2_cluster-0.3.3rc2-py3-none-any.whl", "has_sig": false, "md5_digest": "9524081f75373b06d6f7b78b0d0ff078", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22570, "upload_time": "2019-10-23T08:53:25", "upload_time_iso_8601": "2019-10-23T08:53:25.371567Z", "url": "https://files.pythonhosted.org/packages/f6/3a/da4e83b7a09e9c5fb2c5c079d1767c42009ab44727b16cc1c50af1a4453a/ec2_cluster-0.3.3rc2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "eba3bc05e6fe17ba71f70278582d8358", "sha256": "0940b05a562a88389ed92f542e54cb7a056c7ddc696169f5183b75dca5fbc024" }, "downloads": -1, "filename": "ec2_cluster-0.3.3rc2.tar.gz", "has_sig": false, "md5_digest": "eba3bc05e6fe17ba71f70278582d8358", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21123, "upload_time": "2019-10-23T08:53:27", "upload_time_iso_8601": "2019-10-23T08:53:27.725880Z", "url": "https://files.pythonhosted.org/packages/43/36/b8aa2fdc72c5e06fac4d342f8c6cdf9ad27d0c0eb17a017410eb55df5dbd/ec2_cluster-0.3.3rc2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.3rc3": [ { "comment_text": "", "digests": { "md5": "c1becabe1000b10fbe65b201b3b79528", "sha256": "24557e97e27de247d8b64c9f5f0a2cbdd34defc422864e80c0ba7138a1713936" }, "downloads": -1, "filename": "ec2_cluster-0.3.3rc3-py3-none-any.whl", "has_sig": false, "md5_digest": "c1becabe1000b10fbe65b201b3b79528", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22574, "upload_time": "2019-10-23T08:55:52", "upload_time_iso_8601": "2019-10-23T08:55:52.766383Z", "url": "https://files.pythonhosted.org/packages/cd/96/3eeef2fffd684bbef160d32b4b47e2534530a818d47b0129fd71e45fac06/ec2_cluster-0.3.3rc3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "8c52a2040ed722352b1129e63b12c425", "sha256": "45f5b6d7e69e4cb88883c417b7036a9b39777f41b13c967282b3d08635f0718e" }, "downloads": -1, "filename": "ec2_cluster-0.3.3rc3.tar.gz", "has_sig": false, "md5_digest": "8c52a2040ed722352b1129e63b12c425", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21128, "upload_time": "2019-10-23T08:55:54", "upload_time_iso_8601": "2019-10-23T08:55:54.545192Z", "url": "https://files.pythonhosted.org/packages/51/50/aa59c27ec71f3f06a9c8284f5c9ae19ac9627d954db3a029d681fa7299b1/ec2_cluster-0.3.3rc3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.3rc4": [ { "comment_text": "", "digests": { "md5": "acbb8d9d898aec9332bb6beee4ea35bc", "sha256": "d6c7fd2212bb89e54506634a68474528ca1a8b8e2641fc363c9bc0cdbf3ff51c" }, "downloads": -1, "filename": "ec2_cluster-0.3.3rc4-py3-none-any.whl", "has_sig": false, "md5_digest": "acbb8d9d898aec9332bb6beee4ea35bc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22438, "upload_time": "2019-10-23T09:25:59", "upload_time_iso_8601": "2019-10-23T09:25:59.963963Z", "url": "https://files.pythonhosted.org/packages/b5/1e/bdb5df62e1609fc99cb5bea89724c14b78394e7a3252bbb484e593d8df4e/ec2_cluster-0.3.3rc4-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "457f19c2b79e96adf8e87a8fa7ac7174", "sha256": "4aaf46ab7aa620c6d727ae49574ddfa63f6b20462bb1d69cccc8d5ef10acdb95" }, "downloads": -1, "filename": "ec2_cluster-0.3.3rc4.tar.gz", "has_sig": false, "md5_digest": "457f19c2b79e96adf8e87a8fa7ac7174", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20915, "upload_time": "2019-10-23T09:26:02", "upload_time_iso_8601": "2019-10-23T09:26:02.066849Z", "url": "https://files.pythonhosted.org/packages/f0/da/bca2bf1fdab5a7bfc37fd027513784e18493d7b731ad349f6d50817333f3/ec2_cluster-0.3.3rc4.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "0b1997531b27758b266dcb2bea27dbf0", "sha256": "4324998a4873ba1d0b5edeea4133fb0fb3cff3c5b482fd07d3eeffb4b80aca4d" }, "downloads": -1, "filename": "ec2_cluster-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "0b1997531b27758b266dcb2bea27dbf0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23246, "upload_time": "2019-10-23T11:22:54", "upload_time_iso_8601": "2019-10-23T11:22:54.015976Z", "url": "https://files.pythonhosted.org/packages/18/93/e5ddfff2fc73a2cac7b2cb172edaf62e61d74974eeb88e33ac35656a471b/ec2_cluster-0.4.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "5df848cfcf78c0ee38e92f2c2f2e89c8", "sha256": "cca0beedf35eb6a9743fe5f0a89b801c88ca960a1985870e38ecbcf0d488e972" }, "downloads": -1, "filename": "ec2_cluster-0.4.0.tar.gz", "has_sig": false, "md5_digest": "5df848cfcf78c0ee38e92f2c2f2e89c8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21760, "upload_time": "2019-10-23T11:22:55", "upload_time_iso_8601": "2019-10-23T11:22:55.706784Z", "url": "https://files.pythonhosted.org/packages/dd/12/05f04239ccd56fa4ee3ffeca93a7b4fbb777e3db65fb08cb3c298de04a89/ec2_cluster-0.4.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.0rc1": [ { "comment_text": "", "digests": { "md5": "c82253cc27f139635553d79c75943a55", "sha256": "f37915d7bb670866833cce437079f13c39eff693389fd9b050e76cf7ed50cd56" }, "downloads": -1, "filename": "ec2_cluster-0.4.0rc1-py3-none-any.whl", "has_sig": false, "md5_digest": "c82253cc27f139635553d79c75943a55", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23283, "upload_time": "2019-10-23T11:15:18", "upload_time_iso_8601": "2019-10-23T11:15:18.634293Z", "url": "https://files.pythonhosted.org/packages/a0/d2/565a6505851335c6d34ba53936d85e4ef0b560d9ac5cdf78073504809321/ec2_cluster-0.4.0rc1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "a411293accc71d1a6601d07af84c3ab5", "sha256": "f176861262f844e6bc9f7387599412b0bf4de5670f24a2111f5c6651f22cadc4" }, "downloads": -1, "filename": "ec2_cluster-0.4.0rc1.tar.gz", "has_sig": false, "md5_digest": "a411293accc71d1a6601d07af84c3ab5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21762, "upload_time": "2019-10-23T11:15:20", "upload_time_iso_8601": "2019-10-23T11:15:20.310977Z", "url": "https://files.pythonhosted.org/packages/89/f7/ade6c21a6be6127f747e30e99b7a6c48b79e6d08315ca7857da9db8147c9/ec2_cluster-0.4.0rc1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "0975fadde73c4b20699832595e23c396", "sha256": "4bc22b6ec6589ac18aeb74f4e255bc7c600c6a4de1f9d3a9229a6cd154480707" }, "downloads": -1, "filename": "ec2_cluster-0.5.0-py3-none-any.whl", "has_sig": false, "md5_digest": "0975fadde73c4b20699832595e23c396", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 25400, "upload_time": "2019-12-22T01:31:40", "upload_time_iso_8601": "2019-12-22T01:31:40.342906Z", "url": "https://files.pythonhosted.org/packages/66/43/556852e51137a7cc121d67d6739661df2802aa5da134d387774c54451d7e/ec2_cluster-0.5.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "b898fc7d8161bc27d753e68cc7d528eb", "sha256": "b2dc0d2b4e485f19ba25f196569af5ca1b4bfee7adfa7b37041d7de5af6903ee" }, "downloads": -1, "filename": "ec2_cluster-0.5.0.tar.gz", "has_sig": false, "md5_digest": "b898fc7d8161bc27d753e68cc7d528eb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24623, "upload_time": "2019-12-22T01:31:43", "upload_time_iso_8601": "2019-12-22T01:31:43.671837Z", "url": "https://files.pythonhosted.org/packages/20/32/4033d4793d1fc5dcbf52c279ad8361d06eeec8b4b4e22d8a6d73a65fcb91/ec2_cluster-0.5.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.5.0rc1": [ { "comment_text": "", "digests": { "md5": "222cbbcfa5b884db263525fa039a9ee4", "sha256": "33a07cb458a4ed67c529f3e3871e4c374750024d033d186f137b3542eddc2c66" }, "downloads": -1, "filename": "ec2_cluster-0.5.0rc1-py3-none-any.whl", "has_sig": false, "md5_digest": "222cbbcfa5b884db263525fa039a9ee4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 25438, "upload_time": "2019-12-22T01:21:47", "upload_time_iso_8601": "2019-12-22T01:21:47.039718Z", "url": "https://files.pythonhosted.org/packages/11/3a/d6bf3f989484bd95e2f1c4f3a391b45fbb2606b304708b49c4a6e06cd634/ec2_cluster-0.5.0rc1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "b03f643222a80d8e27e079a7792e945b", "sha256": "dcd3d5b70871b3ce6804d58d96b3adcb1ad5b9d66dfbfcc7187cb2d54d07845a" }, "downloads": -1, "filename": "ec2_cluster-0.5.0rc1.tar.gz", "has_sig": false, "md5_digest": "b03f643222a80d8e27e079a7792e945b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24628, "upload_time": "2019-12-22T01:21:49", "upload_time_iso_8601": "2019-12-22T01:21:49.847778Z", "url": "https://files.pythonhosted.org/packages/80/2b/424ca5219cd691a4738bc4eddbd1e0441cc79dc38a57af4ea12dfeccb0d7/ec2_cluster-0.5.0rc1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.6.0rc1": [ { "comment_text": "", "digests": { "md5": "c99f4ca129c7fe0cb73da49e4a3ca8e9", "sha256": "d33ee12dd123d8b6795e469d52f5f57ab7d46bf0a9149253d863f9b73e376ce2" }, "downloads": -1, "filename": "ec2_cluster-0.6.0rc1-py3-none-any.whl", "has_sig": false, "md5_digest": "c99f4ca129c7fe0cb73da49e4a3ca8e9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3638, "upload_time": "2021-07-25T21:46:17", "upload_time_iso_8601": "2021-07-25T21:46:17.756731Z", "url": "https://files.pythonhosted.org/packages/29/17/5764a8724db334b291147acf8f82deef609dd40e9222c8ce8688a52337cd/ec2_cluster-0.6.0rc1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "5ddfa5102ce90e6716714c8eaa002681", "sha256": "a5ffbaecfc8180ab7360e789f1dcd704b0ce143f23f5f70f1602cba229e7ef4e" }, "downloads": -1, "filename": "ec2_cluster-0.6.0rc1.tar.gz", "has_sig": false, "md5_digest": "5ddfa5102ce90e6716714c8eaa002681", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3302, "upload_time": "2021-07-25T21:46:19", "upload_time_iso_8601": "2021-07-25T21:46:19.348605Z", "url": "https://files.pythonhosted.org/packages/b0/c8/ef94a3c84b2fa7cb9ffb93bd3b7cd4e9646110f2cc05591f64c8b11777f6/ec2_cluster-0.6.0rc1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.6.0rc2": [ { "comment_text": "", "digests": { "md5": "472e6a3a32a2ed85f30d0de91bc8fc54", "sha256": "b76a6adaaccec818153f38186e9273944186e4b4b959cfe762d4c27c09490c56" }, "downloads": -1, "filename": "ec2_cluster-0.6.0rc2-py3-none-any.whl", "has_sig": false, "md5_digest": "472e6a3a32a2ed85f30d0de91bc8fc54", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3630, "upload_time": "2021-07-31T07:35:55", "upload_time_iso_8601": "2021-07-31T07:35:55.354783Z", "url": "https://files.pythonhosted.org/packages/9a/1b/f38ad723c56d4032a614fbb8ec6a2dd34b24182a2ad3271ab375758f6c5f/ec2_cluster-0.6.0rc2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "d038258eb0470d50bc7c1f09c7ddd72d", "sha256": "eb735141990c221116d8c3d38318e9660adfaadad223236e1df11fb75abf1255" }, "downloads": -1, "filename": "ec2_cluster-0.6.0rc2.tar.gz", "has_sig": false, "md5_digest": "d038258eb0470d50bc7c1f09c7ddd72d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3313, "upload_time": "2021-07-31T07:35:56", "upload_time_iso_8601": "2021-07-31T07:35:56.764080Z", "url": "https://files.pythonhosted.org/packages/08/8d/f22b2314720301b1c7469499083a5b297aa70d273b22f837ee6fe27be766/ec2_cluster-0.6.0rc2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.6.0rc3": [ { "comment_text": "", "digests": { "md5": "5c9f2411cd0cc64dd354041c92d88022", "sha256": "289bfd86285f4c3665d1f3db1f1bc2202f364969e1baee373d5def21fc91ef60" }, "downloads": -1, "filename": "ec2_cluster-0.6.0rc3-py3-none-any.whl", "has_sig": false, "md5_digest": "5c9f2411cd0cc64dd354041c92d88022", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 25308, "upload_time": "2021-07-31T07:46:27", "upload_time_iso_8601": "2021-07-31T07:46:27.512569Z", "url": "https://files.pythonhosted.org/packages/c4/bd/11a9768da067266cc6bfb0d12ffa17b4e9b29df52d591efd14ec1c1c4550/ec2_cluster-0.6.0rc3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "39681fa9fe7b0d0340de95494e0a8e62", "sha256": "677bb561a80a5a26cd102585c7bf8ad893d651c3b416ba0cd15ecbe4a35adfee" }, "downloads": -1, "filename": "ec2_cluster-0.6.0rc3.tar.gz", "has_sig": false, "md5_digest": "39681fa9fe7b0d0340de95494e0a8e62", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21691, "upload_time": "2021-07-31T07:46:29", "upload_time_iso_8601": "2021-07-31T07:46:29.140866Z", "url": "https://files.pythonhosted.org/packages/e6/cb/fa1f79473157c29e6a7baa408ba432a70dc2e597b4512c71327bad76735e/ec2_cluster-0.6.0rc3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.6.0rc4": [ { "comment_text": "", "digests": { "md5": "e37b8c217b1b81841c0fac218c24bfb3", "sha256": "49437c3b276ad4afdad951d11b2fd4ff2a1e256b8eb318edcbecca61b0f6e547" }, "downloads": -1, "filename": "ec2_cluster-0.6.0rc4-py3-none-any.whl", "has_sig": false, "md5_digest": "e37b8c217b1b81841c0fac218c24bfb3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 25326, "upload_time": "2021-07-31T08:18:25", "upload_time_iso_8601": "2021-07-31T08:18:25.734977Z", "url": "https://files.pythonhosted.org/packages/b9/53/0153542984279db42b6cb565265da07c984b3107074e61cfab0b215fed86/ec2_cluster-0.6.0rc4-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "4bd2d183d425bb6c67344df900ae7f35", "sha256": "38c1f477b452ffbad54b2c71b5961365b502cd0125a05e1e60bc39c289b3907e" }, "downloads": -1, "filename": "ec2_cluster-0.6.0rc4.tar.gz", "has_sig": false, "md5_digest": "4bd2d183d425bb6c67344df900ae7f35", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21736, "upload_time": "2021-07-31T08:18:27", "upload_time_iso_8601": "2021-07-31T08:18:27.479552Z", "url": "https://files.pythonhosted.org/packages/bf/87/53ccc7cb08b65bfc6f588be214d561634f55db7c83494742cf84a41f0545/ec2_cluster-0.6.0rc4.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0975fadde73c4b20699832595e23c396", "sha256": "4bc22b6ec6589ac18aeb74f4e255bc7c600c6a4de1f9d3a9229a6cd154480707" }, "downloads": -1, "filename": "ec2_cluster-0.5.0-py3-none-any.whl", "has_sig": false, "md5_digest": "0975fadde73c4b20699832595e23c396", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 25400, "upload_time": "2019-12-22T01:31:40", "upload_time_iso_8601": "2019-12-22T01:31:40.342906Z", "url": "https://files.pythonhosted.org/packages/66/43/556852e51137a7cc121d67d6739661df2802aa5da134d387774c54451d7e/ec2_cluster-0.5.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "b898fc7d8161bc27d753e68cc7d528eb", "sha256": "b2dc0d2b4e485f19ba25f196569af5ca1b4bfee7adfa7b37041d7de5af6903ee" }, "downloads": -1, "filename": "ec2_cluster-0.5.0.tar.gz", "has_sig": false, "md5_digest": "b898fc7d8161bc27d753e68cc7d528eb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24623, "upload_time": "2019-12-22T01:31:43", "upload_time_iso_8601": "2019-12-22T01:31:43.671837Z", "url": "https://files.pythonhosted.org/packages/20/32/4033d4793d1fc5dcbf52c279ad8361d06eeec8b4b4e22d8a6d73a65fcb91/ec2_cluster-0.5.0.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }