{ "info": { "author": "Nicholas Christian", "author_email": "ndchristian@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "# low-earth-orbit (leo)\n\n------------\nAbout\n------------\n\nA better, faster way to deploy AWS CloudFormation templates.\n\n------------\nInstallation\n------------\n\nRecommended way to install leo is to use [`pip` in a `virtualenv`](https://packaging.python.org/guides/installing-using-pip-and-virtualenv/):\n\n`pip install lowearthorbit`\n\nIf you want to install globally:\n\n`sudo pip install lowearthorbit`\n\nJust for your user:\n\n`sudo pip install --user lowearthorbit`\n\nUpdating to the latest version:\n\n`sudo pip install --upgrade lowearthorbit`\n\n\n\n---------------\nGetting Started\n---------------\nBefore getting started with leo, you need to set up AWS credentials. There are several different ways to do this:\n\n* Environment variables\n* Shared credentials file\n* Config file\n* IAM Role\n\nHowever, the recommended way is to install [aws-cli](https://github.com/aws/aws-cli) and running the `aws configure` command.\n\nMore about [AWS Credentials](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/setup-credentials.html).\n\nLeo creates a file called *.leo* at `~/.leo` on Linux, macOS, or Unix, or at `C:\\Users\\*USERNAME*\\.leo` on Windows. This is for specifically Leo config commands.\n\nIn Leo, templates must be numbered in the order to be deployed in.\n\n*Example:*\n\n```\n00-template.yml\n01-template.yml\n02-template.yml\n```\n\n## Synopsis\n\n`leo [options] [parameters]`\n\nUse *leo --help* for all options and commands or *leo \\ --help* for specific command parameters.\n\n## Options\n\n*--aws-access-key-id (String)*\n\nThe AWS access key used to access AWS. This is optional, if not used the default credentials configured will be used. This should be used if you want to override the default credentials.\n\n*--aws-secret-access-key-id (String)*\n\nThe secret AWS access key used to access AWS. This is optional, if not used the default credentials configured will be used. This should be used if you want to override the default credentials.\n\n*--aws-session-token (String)*\n\nThe session token used to access AWS. This is optional, if not used the default credentials configured will be used. This should be used if you want to override the default credentials.\n\n*--botocore-session (String)*\n\nAn already created botocore session. This is optional, use this if you want to use an already created botocore session instead of creating a new one.\n\n*--profile (String)*\n\nThe name of a profile to use. If not used, then the default profile is used.\n\n*--region (String)*\n\nAWS Region to use. If not used, then the default region is used.\n\n*--debug (Boolean)*\n\nThis is optional, use to show debugging information.\n\nCommands:\n----------------------------\n\n### delete\n\n#### Description:\n\nUploads all files in the given local path with the file extensions: .json, .template, .txt, yaml, or yml into S3 for CloudFormation.\n\n#### Synopsis:\n\n```\ndelete\n--job-identifier \n--config-name \n```\n\n#### Options:\n\n*--job-identifier (String)*\n\nIdentifies which stack(s) to delete. This is required unless *--config-name* is used.\n\n***Note:***\n\n*Job identifiers must only be alphanumeric characters and hyphens. It must start with an alphabetic character due to stack name restraints.*\n\n*--config-name (String)*\n\nName of the config to use. This is required unless *--job-identifier* is used.\n\n***Note:***\n\n*If values from other options are specified, then they will override the respective value in the configuration.*\n\n#### Example:\n\n##### *To delete a stack or stacks:*\n\n```\nleo --region us-west-2 delete --job-identifier jobident\n```\n\n------\n\n\n\n### deploy\n\n#### Description:\n\nCreates or updates CloudFormation stacks.\n\n#### Synopsis:\n\n```\ndeploy\n--bucket \n--prefix \n--gated \n--job-identifier \n--parameters \n--notification-arns \n--rollback-configuration \n--tags \n--config-name \n```\n\n#### Options:\n\n*--bucket (String)*\n\nName of the S3 bucket used to deploy the CloudFormation templates from. This is required unless *--config-name* is used.\n\n*--prefix (String)*\n\nThe location within the bucket where the CloudFormation templates are.\n\n*--gated (Boolean)*\n\nDefault is 'False'. If set to 'True' a prompt asking to deploy will be displayed every time a stack is ready\n\n*--job-identifier (String)*\n\nAdds a prefix to the stack name to help identify a group of stacks. This is required unless *--config-name* is used.\n\n***Note:***\n\n*Job identifiers must only be alphanumeric characters and hyphens. It must start with an alphabetic character due to stack name restraints.*\n\n*--parameters (JSON)*\n\nParameter keys and parameter values required by the CloudFormation templates to deploy. If a parameter key and parameter value is not given, a prompt will ask the user to give a parameter value.\n\nJSON Syntax:\n\n```\n[\n {\n \"ParameterKey\": \"string\",\n \"ParameterValue\": \"string\",\n \"UsePreviousValue\": true|false,\n \"ResolvedValue\": \"string\"\n }\n ...\n]\n```\n\n***Note:***\n\n*JSON syntax must be wrapped in opposing quotations that are in the JSON syntax. For example, the example above would be wrapped in single quotations.* \n\n*--notification-arns (JSON)*\n\nThe SNS (Simple Notification Service) topic ARNs to notify about stack related events.\n\nJSON Syntax:\n\n```\n[\n\"string\", \n\"string\", \n\"string\"\n]\n```\n\n***Note:***\n\n*JSON syntax must be wrapped in opposing quotations that are in the JSON syntax. For example, the example above would be wrapped in single quotations.* \n\n*--rollback-configuration (JSON)*\n\nThe rollback triggers that CloudFormation monitors for during deployment, and for the specified period afterwards.\n\n```\n{\n\"RollbackTriggers\": [\n{\n\"Arn\": \"string\",\n\"Type\": \"string\"\n}\n...\n],\n\"MonitoringTimeInMinutes\": integer\n}\n```\n\n***Note:***\n\n*JSON syntax must be wrapped in opposing quotations that are in the JSON syntax. For example, the example above would be wrapped in single quotations.* \n\n*--tags (JSON)*\n\nThe key-value pairs associated with each deployed stack. These tags will also be propagated to the resources created by deployment. There is a limit of 50 tags that can be specified.\n\nJSON Syntax:\n\n```\n[\n {\n \"Key\": \"string\",\n \"Value\": \"string\"\n }\n ...\n]\n```\n\n***Note:***\n\n*JSON syntax must be wrapped in opposing quotations that are in the JSON syntax. For example, the example above would be wrapped in single quotations.* \n\n*--config-name (String)*\n\nName of the config to be used. This is required unless *--bucket* and/or *--job-identifier* is used.\n\n***Note:***\n\n*If values from other options are specified, then they will override the respective value in the configuration.*\n\n#### Example:\n\n##### *To deploy stack(s):*\n\n```\nleo deploy --bucket foobucket --parameters \"[{'ParameterKey':'AccountNo','ParameterValue':'*********'},{'ParameterKey':'S3BucketCode','ParameterValue':'BUCKET'},{'ParameterKey':'S3KeyCode','ParameterValue':'KEY'},{'ParameterKey':'Endpoint','ParameterValue':'USER@EXAMPLE.COM'},{'ParameterKey':'Protocol','ParameterValue':'email'},{'ParameterKey':'TagEnvironment','ParameterValue':'NONPROD'},{'ParameterKey':'TagPoC','ParameterValue':'USER@EXAMPLE.COM'}]\" --config-name fooconfig\n```\n\n----------------------------\n\n### plan\n\n#### Description:\n\nGathers information about an upcoming deployment. Displays what resources will be created/changed and the estimated cost URL.\n\n#### Synopsis:\n\n```\nplan\n--bucket \n--prefix \n--job-identifier \n--parameters \n--config-name \n```\n\n#### Options:\n\n*--bucket (String)*\n\nName of the S3 bucket used to gather CloudFormation templates from. This is required unless *--config-name* is used.\n\n*--prefix (String)*\n\nThe location within the bucket where the CloudFormation templates are.\n\n*--job-identifier (String)*\n\nPrefix used to identify CloudFormation stacks. This is required unless *--config-name* is used.\n\n*--parameters (JSON)*\n\nParameter keys and parameter values required by the CloudFormation templates to gather a plan. If a parameter key and parameter value is not given, a prompt will ask the user to give a parameter value.\n\nJSON Syntax:\n\n```\n[\n {\n \"ParameterKey\": \"string\",\n \"ParameterValue\": \"string\",\n \"UsePreviousValue\": true|false,\n \"ResolvedValue\": \"string\"\n }\n ...\n]\n```\n\n***Note:***\n\n*JSON syntax must be wrapped in opposing quotations that are in the JSON syntax. For example, the example above would be wrapped in single quotations.* \n\n*--config-name (String)*\n\nName of the config to be used. This is required unless *--bucket* and/or *--job-identifier* are used.\n\n***Note:***\n\n*If values from other options are specified, then they will override the respective value in the configuration.*\n\n#### Example:\n\n##### *To plan for a deployment*\n\n```\nleo plan --config-name fooconfig\n```\n\n----------------------------\n\n### upload\n\n#### Description:\n\nUploads all files in the given local path with the file extensions: .json, .template, .txt, yaml, or yml into S3 for CloudFormation.\n\n#### Synopsis:\n\n```\nupload\n--bucket \n--prefix \n--local-path \n--config-name \n```\n\n#### Options:\n\n*--bucket (String)*\n\nBucket that the CloudFormation templates will be uploaded to. This is required unless *--config-name* is used.\n\n*--prefix (String)*\n\nLocation within the bucket that the CloudFormation templates will be uploaded to.\n\n*--local-path (String)*\n\nLocal path where the CloudFormations templates are located.\n\n*--config-name (String)*\n\nName of the config to be used. This is required unless *--bucket* and/or *--local-path* are used.\n\n***Note:***\n\n*If values from other options are specified, then they will override the respective value in the configuration.*\n\n#### Example:\n\n#### Examples:\n\n##### *To upload CloudFormation templates:*\n\n```\nleo upload --bucket foobucket --localpath /path/to/templates/\n```\n\n----------------------------\n\n### validate\n\n#### Description:\n\nValidates all files with the file extensions: .json, .template, .txt, yaml, or yml for CloudFormation in the specified bucket.\n\n#### Synopsis:\n\n```\nvalidate\n--bucket \n--prefix \n--config-name \n```\n\n#### Options:\n\n*--bucket (String)*\n\nBucket that the Cloudformation templates are in. This is required unless *--config-name* is used.\n\n*--prefix*\n\nThe location within the bucket where the CloudFormation templates are located.\n\n*--config-name*\n\nName of the config to be used. This is required unless *--bucket* is used.\n\n***Note:***\n\n*If values from other options are specified, then they will override the respective value in the configuration.*\n\n#### Example:\n\n##### *To validate templates:*\n\n```\nleo validate --bucket foobucket\n```\n\n### create-config\n\n#### Description:\n\nCreates a configuration entry that stores all given values.\n\n#### Synopsis:\n\n```\ncreate-config\n--bucket \n--prefix \n--gated \n--local-path \n--job-identifier \n--parameters \n--notification-arns \n--rollback-configuration \n--tags \n--config-name \n```\n\n#### Options:\n\n*--bucket (String)*\n\nName of the S3 bucket used to deploy/upload/validate the CloudFormation templates from. \n\n*--prefix (String)*\n\nThe location within the bucket where the CloudFormation templates are.\n\n*--gated (Boolean)*\n\nIf set to 'True' a prompt asking to deploy will be displayed every time a stack is ready\n\n*--local-path (String)*\n\nLocal path where the CloudFormations templates are located.\n\n*--job-identifier (String)*\n\nAdds a prefix to the stack name to help identify a group of stacks.\n\n***Note:***\n\n*Job identifiers must only be alphanumeric characters and hyphens. It must start with an alphabetic character due to stack name restraints.*\n\n*--parameters (JSON)*\n\nParameter keys and parameter values required by the CloudFormation templates to deploy. If a parameter key and parameter value is not given, a prompt will ask the user to give a parameter value.\n\nJSON Syntax:\n\n```\n[\n {\n \"ParameterKey\": \"string\",\n \"ParameterValue\": \"string\",\n \"UsePreviousValue\": true|false,\n \"ResolvedValue\": \"string\"\n }\n ...\n]\n```\n\n***Note:***\n\n*JSON syntax must be wrapped in opposing quotations that are in the JSON syntax. For example, the example above would be wrapped in single quotations.* \n\n*--notification-arns (JSON)*\n\nThe SNS (Simple Notification Service) topic ARNs to notify about stack related events.\n\nJSON Syntax:\n\n```\n[\n\"string\", \n\"string\", \n\"string\"\n]\n```\n\n***Note:***\n\n*JSON syntax must be wrapped in opposing quotations that are in the JSON syntax. For example, the example above would be wrapped in single quotations.* \n\n*--rollback-configuration (JSON)*\n\nThe rollback triggers that CloudFormation monitors for during deployment, and for the specified period afterwards.\n\n```\n{\n\"RollbackTriggers\": [\n{\n\"Arn\": \"string\",\n\"Type\": \"string\"\n}\n...\n],\n\"MonitoringTimeInMinutes\": integer\n}\n```\n\n***Note:***\n\n*JSON syntax must be wrapped in opposing quotations that are in the JSON syntax. For example, the example above would be wrapped in single quotations.* \n\n*--tags (JSON)*\n\nThe key-value pairs associated with each deployed stack. These tags will also be propagated to the resources created by deployment. There is a limit of 50 tags that can be specified.\n\nJSON Syntax:\n\n```\n[\n {\n \"Key\": \"string\",\n \"Value\": \"string\"\n }\n ...\n]\n```\n\n***Note:***\n\n*JSON syntax must be wrapped in opposing quotations that are in the JSON syntax. For example, the example above would be wrapped in single quotations.* \n\n*--config-name (String)*\n\nName of the config.\n\n***Note:***\n\n*If values from other options are specified, then they will override the respective value in the configuration.*\n\n#### Example:\n\n##### *To create a config:*\n\n```\nleo create-config --bucket foobucket --parameters \"[{'ParameterKey':'AccountNo','ParameterValue':'*********'},{'ParameterKey':'S3BucketCode','ParameterValue':'BUCKET'},{'ParameterKey':'S3KeyCode','ParameterValue':'KEY'},{'ParameterKey':'Endpoint','ParameterValue':'USER@EXAMPLE.COM'},{'ParameterKey':'Protocol','ParameterValue':'email'},{'ParameterKey':'TagEnvironment','ParameterValue':'NONPROD'},{'ParameterKey':'TagPoC','ParameterValue':'USER@EXAMPLE.COM'}]\" --config-name fooconfig\n```\n\n### edit-config\n\n#### Description:\n\nEdits an already existing configuration. Any values specified will replace the values in the config.\n\n#### Synopsis:\n\n```\nedit-config\n--bucket \n--prefix \n--gated \n--local-path \n--job-identifier \n--parameters \n--notification-arns \n--rollback-configuration \n--tags \n--config-name \n```\n\n#### Options:\n\n*--bucket (String)*\n\nName of the S3 bucket used to deploy/upload/validate the CloudFormation templates from. \n\n*--prefix (String)*\n\nThe location within the bucket where the CloudFormation templates are.\n\n*--gated (Boolean)*\n\nIf set to 'True' a prompt asking to deploy will be displayed every time a stack is ready\n\n*--local-path (String)*\n\nLocal path where the CloudFormations templates are located.\n\n*--job-identifier (String)*\n\nAdds a prefix to the stack name to help identify a group of stacks.\n\n***Note:***\n\n*Job identifiers must only be alphanumeric characters and hyphens. It must start with an alphabetic character due to stack name restraints.*\n\n*--parameters (JSON)*\n\nParameter keys and parameter values required by the CloudFormation templates to deploy. If a parameter key and parameter value is not given, a prompt will ask the user to give a parameter value.\n\nJSON Syntax:\n\n```\n[\n {\n \"ParameterKey\": \"string\",\n \"ParameterValue\": \"string\",\n \"UsePreviousValue\": true|false,\n \"ResolvedValue\": \"string\"\n }\n ...\n]\n```\n\n***Note:***\n\n*JSON syntax must be wrapped in opposing quotations that are in the JSON syntax. For example, the example above would be wrapped in single quotations.* \n\n*--notification-arns (JSON)*\n\nThe SNS (Simple Notification Service) topic ARNs to notify about stack related events.\n\nJSON Syntax:\n\n```\n[\n\"string\", \n\"string\", \n\"string\"\n]\n```\n\n***Note:***\n\n*JSON syntax must be wrapped in opposing quotations that are in the JSON syntax. For example, the example above would be wrapped in single quotations.* \n\n*--rollback-configuration (JSON)*\n\nThe rollback triggers that CloudFormation monitors for during deployment, and for the specified period afterwards.\n\n```\n{\n\"RollbackTriggers\": [\n{\n\"Arn\": \"string\",\n\"Type\": \"string\"\n}\n...\n],\n\"MonitoringTimeInMinutes\": integer\n}\n```\n\n***Note:***\n\n*JSON syntax must be wrapped in opposing quotations that are in the JSON syntax. For example, the example above would be wrapped in single quotations.* \n\n*--tags (JSON)*\n\nThe key-value pairs associated with each deployed stack. These tags will also be propagated to the resources created by deployment. There is a limit of 50 tags that can be specified.\n\nJSON Syntax:\n\n```\n[\n {\n \"Key\": \"string\",\n \"Value\": \"string\"\n }\n ...\n]\n```\n\n***Note:***\n\n*JSON syntax must be wrapped in opposing quotations that are in the JSON syntax. For example, the example above would be wrapped in single quotations.* \n\n*--config-name (String)*\n\nName of the config.\n\n***Note:***\n\n*If values from other options are specified, then they will override the respective value in the configuration.*\n\n#### Example:\n\n##### *To edit a config:*\n\n```\nleo edit-config --bucket barbucket --parameters \"[{'ParameterKey':'AccountNo','ParameterValue':'*********'},{'ParameterKey':'S3BucketCode','ParameterValue':'BUCKET'},{'ParameterKey':'S3KeyCode','ParameterValue':'KEY'},{'ParameterKey':'Endpoint','ParameterValue':'USER@EXAMPLE.COM'},{'ParameterKey':'Protocol','ParameterValue':'email'},{'ParameterKey':'TagEnvironment','ParameterValue':'NONPROD'},{'ParameterKey':'TagPoC','ParameterValue':'USER@EXAMPLE.COM'}]\" --config-name fooconfig\n```\n\n------\n\n### delete-config\n\n#### Description:\n\nDeletes a configuration.\n\n#### Synopsis:\n\n```\ndelete-config\n--config-name \n```\n\n#### Options:\n\n*--config-name (String)*\n\nName of the config.\n\n#### Example:\n\n##### *To delete a config:*\n\n```\nleo delete-config --config-name fooconfig\n\n```\n\n------\n\n### list-configs\n\n#### Description:\n\nList all configuration names. If *--config-name* is specified it will show the values of the specified configuration.\n\n#### Synopsis:\n\n```\nlist-configs\n--config-name \n```\n\n#### Options:\n\n*--config-name (String)*\n\nName of the config.\n\n#### Examples:\n\n##### *To list all configs:*\n\n```\nleo list-configs\n```\n\n##### To show a specific config contents:\n\n```\nleo list-configs --config-name fooconfig\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": "", "keywords": "", "license": "LICENSE.txt", "maintainer": "", "maintainer_email": "", "name": "LowEarthOrbit", "package_url": "https://pypi.org/project/LowEarthOrbit/", "platform": "", "project_url": "https://pypi.org/project/LowEarthOrbit/", "project_urls": null, "release_url": "https://pypi.org/project/LowEarthOrbit/0.7.7/", "requires_dist": [ "click", "botocore", "boto3" ], "requires_python": "", "summary": "A better way to deploy AWS CloudFormation", "version": "0.7.7" }, "last_serial": 5616224, "releases": { "0.1dev": [ { "comment_text": "", "digests": { "md5": "df98cc9d65ed3b2a2d359215f1a40e1b", "sha256": "2d98a2f196def25bb2afdb89dcf1f4db63b2d8db6a703b6ac099dc2fab5ee5ba" }, "downloads": -1, "filename": "LowEarthOrbit-0.1dev.tar.gz", "has_sig": false, "md5_digest": "df98cc9d65ed3b2a2d359215f1a40e1b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 628, "upload_time": "2018-07-20T21:53:46", "url": "https://files.pythonhosted.org/packages/82/b5/6717f2b985bfbfffb057b64e65f237479c52589e2641e2d9268f897d7f9d/LowEarthOrbit-0.1dev.tar.gz" } ], "0.2dev": [ { "comment_text": "", "digests": { "md5": "d4d36f9f27ad520f79b5dbfe2e0149cd", "sha256": "bb75c49ef32f7c3284a49ab4d6fa3bc9eb2202b2b4d28aa87f62eead4329b510" }, "downloads": -1, "filename": "LowEarthOrbit-0.2dev.tar.gz", "has_sig": false, "md5_digest": "d4d36f9f27ad520f79b5dbfe2e0149cd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1262, "upload_time": "2018-07-21T20:26:34", "url": "https://files.pythonhosted.org/packages/2b/8b/fb257b73ec3f8ec6c4ebf8adb42b0ae5e806703a0a4323138e4c2c3c0bd4/LowEarthOrbit-0.2dev.tar.gz" } ], "0.3.dev0": [ { "comment_text": "", "digests": { "md5": "252b8f03f17504538e3fa0566e375786", "sha256": "7eccc4c57e151cad0ce16812397d4ef4ef0abd56e3faf7010e6a0618f919a145" }, "downloads": -1, "filename": "LowEarthOrbit-0.3.dev0.tar.gz", "has_sig": false, "md5_digest": "252b8f03f17504538e3fa0566e375786", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7781, "upload_time": "2018-09-13T19:44:42", "url": "https://files.pythonhosted.org/packages/99/15/d06d59b525521fe57e085e29232a805e860bcb47796f78187e1d2a53bcb5/LowEarthOrbit-0.3.dev0.tar.gz" } ], "0.4.dev0": [ { "comment_text": "", "digests": { "md5": "95d78cc0e4f697514689fc05977355b4", "sha256": "5575009cbce52e03b356dec3193793303b2916a928bc90fad842fe8067a2f738" }, "downloads": -1, "filename": "LowEarthOrbit-0.4.dev0-py3-none-any.whl", "has_sig": false, "md5_digest": "95d78cc0e4f697514689fc05977355b4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16125, "upload_time": "2018-10-24T23:04:04", "url": "https://files.pythonhosted.org/packages/58/b6/2f1cf4fddd0866c8179b553dce7e7b6bf552247414379f8c276900814101/LowEarthOrbit-0.4.dev0-py3-none-any.whl" } ], "0.5.dev0": [ { "comment_text": "", "digests": { "md5": "86cb9c822b29d5bdf38a590a710e1ef9", "sha256": "bc2aa1ff14a513539f6b1613c9458ef49b6510d0e9b0522b6baf136bdbdcee87" }, "downloads": -1, "filename": "LowEarthOrbit-0.5.dev1.tar.gz", "has_sig": false, "md5_digest": "86cb9c822b29d5bdf38a590a710e1ef9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11240, "upload_time": "2018-11-08T01:32:39", "url": "https://files.pythonhosted.org/packages/64/9e/889c9871c2d26d0ec5d6ef7a1ce886e2db523f7375a67062ed87b756a727/LowEarthOrbit-0.5.dev1.tar.gz" } ], "0.6.6": [ { "comment_text": "", "digests": { "md5": "b7c3976240dbd675e6eac041fe193937", "sha256": "04b9a97269c9d19027d1734e8cb7c45f21e608a4532178494a648fe63620a6bc" }, "downloads": -1, "filename": "LowEarthOrbit-0.6.6.tar.gz", "has_sig": false, "md5_digest": "b7c3976240dbd675e6eac041fe193937", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12660, "upload_time": "2018-12-12T19:33:03", "url": "https://files.pythonhosted.org/packages/51/36/4e668318768b014c17ad6d45b53f260702d3aaee107c2edf1c7cc40a7be5/LowEarthOrbit-0.6.6.tar.gz" } ], "0.7.7": [ { "comment_text": "", "digests": { "md5": "2e7a5a9df7a6d4ec09de430c1b294f86", "sha256": "733fe094668966db02bacc92bb4f3d591aeb678adeb02f02a37046628cc19f9c" }, "downloads": -1, "filename": "LowEarthOrbit-0.7.7-py3-none-any.whl", "has_sig": false, "md5_digest": "2e7a5a9df7a6d4ec09de430c1b294f86", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23704, "upload_time": "2019-08-01T01:05:22", "url": "https://files.pythonhosted.org/packages/bb/72/b9583ac3b97bb427e5fd96874556a0c9a8e25c58a9331f359dad698695d8/LowEarthOrbit-0.7.7-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "2e7a5a9df7a6d4ec09de430c1b294f86", "sha256": "733fe094668966db02bacc92bb4f3d591aeb678adeb02f02a37046628cc19f9c" }, "downloads": -1, "filename": "LowEarthOrbit-0.7.7-py3-none-any.whl", "has_sig": false, "md5_digest": "2e7a5a9df7a6d4ec09de430c1b294f86", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23704, "upload_time": "2019-08-01T01:05:22", "url": "https://files.pythonhosted.org/packages/bb/72/b9583ac3b97bb427e5fd96874556a0c9a8e25c58a9331f359dad698695d8/LowEarthOrbit-0.7.7-py3-none-any.whl" } ] }