{ "info": { "author": "Joshua Beemster", "author_email": "support@snowplowanalytics.com", "bugtrack_url": null, "classifiers": [], "description": "|Release| |License| |Travis|\n\nOverview\n--------\n\nThe release-manager is a Python utility for easily uploading zipped\nor plain binaries to a destination target. It allows you to:\n\n- Create new package versions\n- Upload artifacts to said version\n- Currently only support zip\n- Upload to multiple targets\n- Currently supports Bintray and AWS S3\n- Combine N binaries into the artifact that is then uploaded\n- Upload N artifacts to for the package\n\nInstalling\n----------\n\n- Option 1: Download this repository and run:\n ``python setup.py install``\n- Option 2: Install from pip: ``pip install release-manager``\n\nUsage\n-----\n\n::\n\n usage: release-manager.py [-h] [--config CONFIG] [--make-version]\n [--make-artifact] [--upload-artifact]\n [--check-version] [--version]\n\n Bintray utility for creating and uploading zip packages.\n\n optional arguments:\n -h, --help show this help message and exit\n --config CONFIG the path to the configuration yaml file\n --make-version makes a new version for the package\n --make-artifact makes the artifacts that will be uploaded\n --upload-artifact uploads the artifacts to the targets\n --check-version checks that the version specified matches the build\n --version show program's version number and exit\n\nPlease note when specifying the options to run that they will be applied\nto every package in your config file.\n\nOptions:\n\n- You cannot upload the artifacts without also making the artifacts:\n- ``--upload-artifact`` requires ``--make-artifact``\n- Checking the version is useful for automated build tools such as\n travis to assert that you have the correct build versions specified\n\nConfig\n~~~~~~\n\nThe release-manager requires a config be passed to it in the form of a\nyaml file. You can find a sample config in the **resources** directory.\n\nEnvironment resolver\n^^^^^^^^^^^^^^^^^^^^\n\nTo get values from the environment at runtime set the value like the\nfollowing:\n\n::\n\n some_env_key: <%= ENV['SOME_ENV_VALUE'] %>\n\nShell resolver\n^^^^^^^^^^^^^^\n\nTo evaluate a shell command at runtime set the value like the following:\n\n::\n\n some_cmd_value: <%= CMD['cat VERSION'] %>\n\n**NOTE**: If the command does not exit with code 0 the config will not\nload.\n\nVariable resolver\n^^^^^^^^^^^^^^^^^\n\nIf you need to access a variable many-times in your config and it is okay \nfor it to be hardcoded you can use the local variable resolver.\n\nThis works like so:\n\n::\n\n some_var_value: \"hello_world\"\n some_ref_var_value: {{ some_var_value }}\n\nFunction resolver\n^^^^^^^^^^^^^^^^^\n\nrelease-manager provides you one (for now) predefined function - \n`sbt_version(path)`. Using it you can extract version of SBT project in \nspecified `path`.\n\nThis works like so:\n\n::\n\n some_cmd_value: <%= FUNC['sbt_version(../scalaz)'] %>\n\n\nExample config\n^^^^^^^^^^^^^^\n\n::\n \n # Required: local settings\n local:\n root_dir : <%= ENV['TRAVIS_BUILD_DIR'] %>\n\n # Required: deployment targets\n targets:\n - type : \"bintray\" # Options: bintray\n user : <%= ENV['BINTRAY_USER'] %>\n password : <%= ENV['BINTRAY_PASSWORD'] %>\n\n # Required: packages to be deployed\n packages:\n - repo : \"generic\"\n name : \"release-manager\"\n user_org : \"jbeemster\"\n publish : true\n\n # Will attempt to overwrite a published entity if one is found\n override : false\n\n # If the artifact already exists will determine whether or not\n # to fail the release\n continue_on_conflict : false\n\n # The version of this package\n version : <%= CMD['cat VERSION'] %>\n \n # Required IF '--check-version' is passed: will assert that \n # both versions are the same\n build_version : <%= ENV['TRAVIS_TAG'] %>\n \n # Optional: Build commands\n # You can nest your artifact creation commands here!\n build_commands:\n - ls -ls\n\n # Required: Artifact\n artifacts:\n # The artifact name is composed like so:\n # {{prefix}}{{version}}{{suffix}}.zip\n - prefix : \"release_manager_\"\n suffix : \"\"\n type : \"zip\"\n\n # The binaries to put in the zip\n binary_paths:\n - setup.py\n\n\nMultiple locations\n^^^^^^^^^^^^^^^^^^\nSame artifact can be uploaded into two or more buckets, without unnecessary boilerplate if you use `locations` keyword instead of first-level `buckets`, `path` and `region`.\n\n::\n\n packages:\n - name : \"acme-app-multiple-locations\"\n locations:\n - bucket : \"acme-hosted-assets-us-east-1\"\n path : \"software/acme-app\"\n region : \"us-east-1\"\n - bucket : \"acme-hosted-assets-us-west-1\"\n path : \"software/acme-app\"\n region : \"us-west-1\"\n publish : true\n override : false\n continue_on_conflict : false\n version : \"0.1.0\"\n\nNote that if you're using `locations` array - first-level `bucket`, `path` and `region` must be absent.\n\nAWS S3 target\n^^^^^^^^^^^^^\n\nIn addition to Bintray you can also upload your files to Amazon S3. \n\n::\n\n targets:\n - type : \"awss3\" # Options: bintray\n user : <%= ENV['AWS_ACCESS_KEY'] %>\n password : <%= ENV['AWS_SECRET_KEY'] %>\n\nAs is artifacts\n^^^^^^^^^^^^^^^\n\nIn addition to zip artifacts you can also upload plain files from your local FS.\n\n::\n\n artifacts:\n - prefix : \"release_manager_\"\n suffix : \"\"\n type : \"asis\"\n\n binary_paths:\n - setup.py\n\nFile `setup.py` will be renamed to `release_manager_{{ version}}` and upload \ninto specified path.\n\nCopyright and license\n---------------------\n\nThe Release Manager is copyright 2016 Snowplow Analytics Ltd.\n\nLicensed under the `Apache License, Version\n2.0 `__ (the \"License\"); you\nmay not use this software except in compliance with the License.\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n\n.. |Release| image:: https://badge.fury.io/py/release-manager.svg\n :target: https://badge.fury.io/py/release-manager\n.. |License| image:: http://img.shields.io/badge/license-Apache--2-blue.svg?style=flat\n :target: http://www.apache.org/licenses/LICENSE-2.0\n.. |Travis| image:: https://travis-ci.org/snowplow/release-manager.svg?branch=master\n :target: https://travis-ci.org/snowplow/release-manager\n", "description_content_type": "", "docs_url": null, "download_url": "https://github.com/snowplow/release-manager/tarball/0.4.1", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/snowplow/release-manager", "keywords": "", "license": "http://www.apache.org/licenses/LICENSE-2.0", "maintainer": "", "maintainer_email": "", "name": "release-manager", "package_url": "https://pypi.org/project/release-manager/", "platform": "", "project_url": "https://pypi.org/project/release-manager/", "project_urls": { "Download": "https://github.com/snowplow/release-manager/tarball/0.4.1", "Homepage": "https://github.com/snowplow/release-manager" }, "release_url": "https://pypi.org/project/release-manager/0.4.1/", "requires_dist": null, "requires_python": "", "summary": "Utility for creating and uploading zip packages", "version": "0.4.1" }, "last_serial": 4958668, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "333286a02c47513660ccf80e3feef875", "sha256": "eb1ed267e3829053da3064a1fcafa27b87e2bb6a40f41d5e2a15ccf672aeb29f" }, "downloads": -1, "filename": "release-manager-0.1.0.tar.gz", "has_sig": false, "md5_digest": "333286a02c47513660ccf80e3feef875", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12502, "upload_time": "2016-09-22T10:54:42", "url": "https://files.pythonhosted.org/packages/e6/05/bedd7cac36842005e1bcee6071f441b7100e81e5cf05ac2c6a0deefe6c6e/release-manager-0.1.0.tar.gz" } ], "0.1.0-rc1": [ { "comment_text": "", "digests": { "md5": "9d0fccc70746b6dddbfbe0e6c8ff5458", "sha256": "e7181a7309c1674a90c638739a9fdb6f6b62671aaacc51b92a5a12e9bc90d482" }, "downloads": -1, "filename": "release-manager-0.1.0-rc1.tar.gz", "has_sig": false, "md5_digest": "9d0fccc70746b6dddbfbe0e6c8ff5458", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12821, "upload_time": "2016-09-14T13:21:31", "url": "https://files.pythonhosted.org/packages/d5/4b/59b2ce543312737ae4c964dd985c75d77da8f6c389b9f1bc5c7c7632f425/release-manager-0.1.0-rc1.tar.gz" } ], "0.1.0-rc2": [ { "comment_text": "", "digests": { "md5": "dc63e87d056b5d0c0163325ebe941bff", "sha256": "e1d5e22bbbe717f0e9127e360ec40c2f3092543a900329ad3b4b412d3ba6c67e" }, "downloads": -1, "filename": "release-manager-0.1.0-rc2.tar.gz", "has_sig": false, "md5_digest": "dc63e87d056b5d0c0163325ebe941bff", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12850, "upload_time": "2016-09-16T13:28:39", "url": "https://files.pythonhosted.org/packages/ea/f2/bda0bf9609abf2e02b0a851b9e09351ef35e2b2d714202119b807e5622c1/release-manager-0.1.0-rc2.tar.gz" } ], "0.1.0-rc3": [ { "comment_text": "", "digests": { "md5": "ebfa0a405e214fef340c6d96d57d2597", "sha256": "059061fbf2e19ce382da781f7c1a92a15f1dec31d0250148fb3b3878d5ae0e69" }, "downloads": -1, "filename": "release-manager-0.1.0-rc3.tar.gz", "has_sig": false, "md5_digest": "ebfa0a405e214fef340c6d96d57d2597", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13249, "upload_time": "2016-09-16T15:52:56", "url": "https://files.pythonhosted.org/packages/86/38/58fbfcb05188006736ef00351b5d76e73d0b167b9914e6209a4158b5b526/release-manager-0.1.0-rc3.tar.gz" } ], "0.1.0rc4": [ { "comment_text": "", "digests": { "md5": "0f96058278f09b82a26157fd48eb85f0", "sha256": "28b4ae44e8519f7a69390329cd0dcd49868eae442c836f6b84a22ee1c31f79e8" }, "downloads": -1, "filename": "release-manager-0.1.0rc4.tar.gz", "has_sig": false, "md5_digest": "0f96058278f09b82a26157fd48eb85f0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12512, "upload_time": "2016-09-22T09:35:43", "url": "https://files.pythonhosted.org/packages/9f/8b/9df77fc320e114b313823adc995426d938686465aae3adb53daec951769a/release-manager-0.1.0rc4.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "3a8623763ea49c6c0982574bf7186824", "sha256": "ccf942d134126f84e0352f636620d57987defb86bbbf1d07064f370c7128eeb2" }, "downloads": -1, "filename": "release-manager-0.2.0.tar.gz", "has_sig": false, "md5_digest": "3a8623763ea49c6c0982574bf7186824", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14558, "upload_time": "2016-12-02T12:19:50", "url": "https://files.pythonhosted.org/packages/27/1c/6c1680f516ca39dcbec8620819022cd0220e74d644091c0e258d24d40da5/release-manager-0.2.0.tar.gz" } ], "0.2.0rc1": [ { "comment_text": "", "digests": { "md5": "2e2097fa73130877e961bf07c551c3e4", "sha256": "de594245ad21f8d8e75be16a599f4e4ccb8dc00d1f05cfab2aef1638e5d29979" }, "downloads": -1, "filename": "release-manager-0.2.0rc1.tar.gz", "has_sig": false, "md5_digest": "2e2097fa73130877e961bf07c551c3e4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14545, "upload_time": "2016-12-02T06:49:25", "url": "https://files.pythonhosted.org/packages/05/1e/af9dcb207524f3f907ba21cf3e46c55be5cc1c958496cd4bcd147daa1518/release-manager-0.2.0rc1.tar.gz" } ], "0.2.0rc2": [ { "comment_text": "", "digests": { "md5": "5f997630dde887c49673338677eeb562", "sha256": "f132fd5c086f9eb9a0d1ff8ba670a25d704dfa19172babd73aa55e0eec8ceef0" }, "downloads": -1, "filename": "release-manager-0.2.0rc2.tar.gz", "has_sig": false, "md5_digest": "5f997630dde887c49673338677eeb562", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14563, "upload_time": "2016-12-02T07:10:01", "url": "https://files.pythonhosted.org/packages/3e/cb/d92d7d2a6fd73d9d651445ce7f94fea468f0a01e5bf49f179981883b9ecb/release-manager-0.2.0rc2.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "6b4a04f37ef3fa423ebe13539731ed5f", "sha256": "97b4df813d984771e89c8d82d3eb41432b0ab113a9123a59775f0af39091a50e" }, "downloads": -1, "filename": "release-manager-0.3.0.tar.gz", "has_sig": false, "md5_digest": "6b4a04f37ef3fa423ebe13539731ed5f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15347, "upload_time": "2017-07-26T15:25:46", "url": "https://files.pythonhosted.org/packages/c9/45/c834d88dd141eed55fe1466ef51dfc5cde661254f6dab5a1abe0e90fcf7c/release-manager-0.3.0.tar.gz" } ], "0.3.0rc1": [ { "comment_text": "", "digests": { "md5": "55376adcaf4db736190227f6091f6fde", "sha256": "e1856b6ba11243d496e018ef68fe1199365b9ebd14272a4e5cc4062638edcd34" }, "downloads": -1, "filename": "release-manager-0.3.0rc1.tar.gz", "has_sig": false, "md5_digest": "55376adcaf4db736190227f6091f6fde", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15361, "upload_time": "2017-06-30T12:09:34", "url": "https://files.pythonhosted.org/packages/7e/cc/8c56f769a732a5256b4982f0451f6a0780b92ac3a1e65176505376b92fd1/release-manager-0.3.0rc1.tar.gz" } ], "0.3.1rc1": [ { "comment_text": "", "digests": { "md5": "1509fadefb467ba0b986a47fe1d44dda", "sha256": "7ee0fe093847637ecf23bd98b5d57b1cb658bd51e4d42c9b84cfb56830407be7" }, "downloads": -1, "filename": "release-manager-0.3.1rc1.tar.gz", "has_sig": false, "md5_digest": "1509fadefb467ba0b986a47fe1d44dda", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16268, "upload_time": "2019-03-05T12:25:08", "url": "https://files.pythonhosted.org/packages/36/dc/6d816fefd51f16b99ee14cd5893ec36603e998004871308b31b166f2bee7/release-manager-0.3.1rc1.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "1d3be3f4d811ab0060f2defc3595d05a", "sha256": "7b40265ce9d2a7d3c14c82f57b410a99790f372faaa848d52f8a2a486848c35d" }, "downloads": -1, "filename": "release-manager-0.4.0.tar.gz", "has_sig": false, "md5_digest": "1d3be3f4d811ab0060f2defc3595d05a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16255, "upload_time": "2019-03-08T17:26:44", "url": "https://files.pythonhosted.org/packages/fc/aa/79ca886715e724adad7cbf782c108be660ef7739753a15ae622d7e487579/release-manager-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "6388886a3a612207afb0c73a1b1f0deb", "sha256": "4ddffe281382fab5b5c0fb373b721fc23688253557c8d2ebfd503021f80cd8b5" }, "downloads": -1, "filename": "release-manager-0.4.1.tar.gz", "has_sig": false, "md5_digest": "6388886a3a612207afb0c73a1b1f0deb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16297, "upload_time": "2019-03-19T13:28:49", "url": "https://files.pythonhosted.org/packages/6e/08/180c4a7bc2b0ffaadd7028bb722d8552f0d3b7db43912d172faf977cfa83/release-manager-0.4.1.tar.gz" } ], "0.4.1rc1": [ { "comment_text": "", "digests": { "md5": "7fe0f629273ae106bfba32689500f087", "sha256": "f7b935f5c5d1f503f688d0da162500ed505872ae7ec7f53408d9cde00126e817" }, "downloads": -1, "filename": "release-manager-0.4.1rc1.tar.gz", "has_sig": false, "md5_digest": "7fe0f629273ae106bfba32689500f087", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16312, "upload_time": "2019-03-12T17:24:13", "url": "https://files.pythonhosted.org/packages/ce/79/5d79e009d2a4ab4469686692468579ee44846214c81269b69ee70fb3f151/release-manager-0.4.1rc1.tar.gz" } ], "0.4.1rc2": [ { "comment_text": "", "digests": { "md5": "00df44682852aec68b05911bd0050908", "sha256": "216028bee7ac4138577a0204e09cf03db8e16b6414b455ac0e177c3e8aa34826" }, "downloads": -1, "filename": "release-manager-0.4.1rc2.tar.gz", "has_sig": false, "md5_digest": "00df44682852aec68b05911bd0050908", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16314, "upload_time": "2019-03-18T15:48:02", "url": "https://files.pythonhosted.org/packages/f3/f8/618dcc1ce6f71ccb8a67c316998920eb133b7d32ab6766c384607f8227b8/release-manager-0.4.1rc2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6388886a3a612207afb0c73a1b1f0deb", "sha256": "4ddffe281382fab5b5c0fb373b721fc23688253557c8d2ebfd503021f80cd8b5" }, "downloads": -1, "filename": "release-manager-0.4.1.tar.gz", "has_sig": false, "md5_digest": "6388886a3a612207afb0c73a1b1f0deb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16297, "upload_time": "2019-03-19T13:28:49", "url": "https://files.pythonhosted.org/packages/6e/08/180c4a7bc2b0ffaadd7028bb722d8552f0d3b7db43912d172faf977cfa83/release-manager-0.4.1.tar.gz" } ] }