{ "info": { "author": "Adfinis-SyGroup", "author_email": "https://adfinis-sygroup.ch/", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "Intended Audience :: Information Technology", "License :: OSI Approved :: GNU Affero General Public License v3", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5" ], "description": "=======\nPyaptly\n=======\n\nAutomates the creation and managment of aptly mirrors and snapshots based on yml\ninput files.\n\n|pypi| |travis| |coverage| [1]_\n\n.. |pypi| image:: https://badge.fury.io/py/Pyaptly.svg\n :target: https://badge.fury.io/py/Pyaptly\n.. |travis| image:: https://travis-ci.org/adfinis-sygroup/pyaptly.png?branch=master\n :target: https://travis-ci.org/adfinis-sygroup/pyaptly\n.. |coverage| image:: https://img.shields.io/badge/coverage-100%25-brightgreen.svg\n\n`Read the Docs`_\n\n.. _`Read the Docs`: https://docs.adfinis-sygroup.ch/public/pyaptly/\n\n.. [1] Coverage enforced by tests (on travis)\n\nExample commands\n----------------\n\nInitialize a new aptly server.\n\n.. code:: shell\n\n pyaptly -c mirrors.yml mirror create\n pyaptly -c mirrors.yml mirror update\n pyaptly -c mirrors.yml snapshot create\n pyaptly -c mirrors.yml publish create\n\nUpdate mirrors and snapshots and switch publish endpoints with\n``automatic-update: true`` to the new snapshots.\n\n.. code:: shell\n\n pyaptly -c mirrors.yml mirror update\n pyaptly -c mirrors.yml snapshot create\n pyaptly -c mirrors.yml publish create\n pyaptly -c mirrors.yml publish update\n\nManually trigger a switch to the new snapshots for the publish endpoint\nubuntu/stable.\n\n.. code::\n\n pyaptly -c mirrors.yml publish update ubuntu/stable\n\nInstall Debian/Ubuntu\n=====================\n\nSources:\n\n.. code-block:: text\n\n deb http://aptly.adfinis-sygroup.ch/adsy-public/debian wheezy main\n\n deb http://aptly.adfinis-sygroup.ch/adsy-public/debian jessie main\n\n deb http://aptly.adfinis-sygroup.ch/adsy-public/ubuntu trusty main\n\n deb http://aptly.adfinis-sygroup.ch/adsy-public/ubuntu vivid main\n\n deb http://aptly.adfinis-sygroup.ch/adsy-public/ubuntu xenial main\n\nInstall:\n\n.. code-block:: bash\n\n wget -O - http://aptly.adfinis-sygroup.ch/aptly.asc | apt-key add -\n apt-get update\n apt-get install python-pyaptly\n\nTesting\n-------\n\nAutomatic\n\n.. code:: shell\n\n git submodule update --init --recursive\n make test-local\n\nManual. There is a safety check in tests. They won't work if you don't set\n$HOME.\n\n.. code:: shell\n\n git submodule update --init --recursive\n source testenv\n py.test -x\n\nor\n\n.. code:: shell\n\n git submodule update --init --recursive\n export HOME=\"$(pwd)\"\n export PATH=\"$HOME/aptly_0.9.6_linux_amd64/:$PATH\"\n py.test -x\n\nVagrant Box\n-----------\n\nThe box provisions aptly, nginx and two repos which can be used for tests:\n\n.. code::\n\n aptly mirror create mirro-fakerepo01 http://localhost/fakerepo01 main\n aptly mirror create mirro-fakerepo02 http://localhost/fakerepo02 main", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/adfinis-sygroup/pyaptly", "keywords": "aptly mirror snapshot automation", "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "pyaptly", "package_url": "https://pypi.org/project/pyaptly/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/pyaptly/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/adfinis-sygroup/pyaptly" }, "release_url": "https://pypi.org/project/pyaptly/1.2.0/", "requires_dist": null, "requires_python": null, "summary": "Aptly mirror/snapshot managment automation.", "version": "1.2.0" }, "last_serial": 3798535, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "ca83213b9a07fd6e278e059cca6a6bb3", "sha256": "41fc5ee5611a8153d083a1a6b0d59c7eee71d2887d4c43bc7d3ae583e86af05c" }, "downloads": -1, "filename": "pyaptly-1.0.0.tar.gz", "has_sig": true, "md5_digest": "ca83213b9a07fd6e278e059cca6a6bb3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24272, "upload_time": "2016-05-07T12:54:22", "url": "https://files.pythonhosted.org/packages/17/23/c81d72f62c9b573dec46a72c2bdcf0c77c57a373d5968a191ad83fd03bd1/pyaptly-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "2b953b72401f8a7ec0934f88c1fec786", "sha256": "11e7d03f6345507ecdfade9a38363c07b03a457bcb70943d24f39b95d976f343" }, "downloads": -1, "filename": "pyaptly-1.0.1.tar.gz", "has_sig": true, "md5_digest": "2b953b72401f8a7ec0934f88c1fec786", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24435, "upload_time": "2016-05-07T16:01:02", "url": "https://files.pythonhosted.org/packages/00/d8/c23df4dd29b1761560179a8756f463366bf301eeea52726637579dc90087/pyaptly-1.0.1.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "52cbc598ebdd86565dc9f6a92321f60e", "sha256": "209b33a5ac4def4fe2fd5f8c25f5bc89247d679ff7b7be2b7de9e8ae596b0798" }, "downloads": -1, "filename": "pyaptly-1.1.0.tar.gz", "has_sig": true, "md5_digest": "52cbc598ebdd86565dc9f6a92321f60e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25617, "upload_time": "2016-06-15T14:17:23", "url": "https://files.pythonhosted.org/packages/69/d7/4637229fccee32a652260884ca7d5e0460451cb43d287a3010dee06e943c/pyaptly-1.1.0.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "e3bd3f9c7d7e4e1155eb44cf712a4195", "sha256": "9eb8128f3f1cb58adcfe1ae6ba52050e59233fbcf56a3cdcc8f518c3d0f10ab9" }, "downloads": -1, "filename": "pyaptly-1.2.0.tar.gz", "has_sig": true, "md5_digest": "e3bd3f9c7d7e4e1155eb44cf712a4195", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26261, "upload_time": "2016-10-24T15:36:03", "url": "https://files.pythonhosted.org/packages/d7/36/9560d9d1e253b6ca2559525b5a209aa6b1d7fd78491164b22e72e684c066/pyaptly-1.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e3bd3f9c7d7e4e1155eb44cf712a4195", "sha256": "9eb8128f3f1cb58adcfe1ae6ba52050e59233fbcf56a3cdcc8f518c3d0f10ab9" }, "downloads": -1, "filename": "pyaptly-1.2.0.tar.gz", "has_sig": true, "md5_digest": "e3bd3f9c7d7e4e1155eb44cf712a4195", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26261, "upload_time": "2016-10-24T15:36:03", "url": "https://files.pythonhosted.org/packages/d7/36/9560d9d1e253b6ca2559525b5a209aa6b1d7fd78491164b22e72e684c066/pyaptly-1.2.0.tar.gz" } ] }