{ "info": { "author": "Guillaume Jorandon", "author_email": "jorandon@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: System Administrators", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3 :: Only", "Topic :: System :: Archiving :: Backup" ], "description": "Backupper\n=========\n\nA simple backup utility. Configurable with a YAML file.\n\nSee ``backupper -h`` for command usage.\n\nAllows you to manage backups and encrypt them. You can then use\n``rclone`` to store them on a distant storage.\n\nInstallation\n------------\n\n::\n\n pip3 install backupper\n\nRecommended minimum python version is 3.5. It won't work with version\n3.4 and older.\n\nConfiguration reference\n-----------------------\n\nMinimal backupfile.yml\n~~~~~~~~~~~~~~~~~~~~~~\n\n::\n\n backup_dir: /backup/root\n artifacts:\n - a/file\n - a/directory\n - /another/directory/\n - et/caetera\n\n``backup_dir``\n~~~~~~~~~~~~~~\n\n- **Definition:** specifies the folder in which the backup directory\n will be created. If the folder doesn't exist, it will be created.\n- **Type:** relative or absolute path.\n- **Mandatory:** no, unless ``delete_old_backups`` is set to ``true``.\n- **Default value:** current working directory.\n\n``delete_old_backups``\n~~~~~~~~~~~~~~~~~~~~~~\n\n- **Definition:** allows you to delete old backups from the backup\n directory specified in ``backup_dir``. If ``cleaning_policy`` isn't\n set, all previous backups will be deleted.\n- **Type:** boolean.\n- **Mandatory:** no.\n- **Default value:** ``false``.\n\n``cleaning_policy``\n~~~~~~~~~~~~~~~~~~~\n\n- **Definition:** allows you to define a fine-tuned deletion policy.\n Will do nothing if ``delete_old_backups`` is set to ``false``.\n- **Type:** at least one of the following parameters.\n- **Mandatory:** no (if not set, all older backups will be deleted).\n\nEach parameter below can be set (at least one). The following schema\nvisually presents how they work, assuming this *cleaning policy*:\n\n::\n\n cleaning_policy:\n most_recents: 2\n first_daily: 1\n first_weekly: 6\n first_monthly: 4\n\n.. figure:: https://github.com/dolfinsbizou/backupper/raw/master/cleaning_policy.png\n :alt: such design wow\n\n Backup management schema\n\nN.B.: please keep in mind that if you increase one of the parameters\nbetween two backups, deleted backups won't magically pop back from\nnowhere. We strongly advise you to be careful with these values.\n\n``most_recents``\n^^^^^^^^^^^^^^^^\n\n- **Definition:** number of recent backups to keep (in addition to the\n current one).\n- **Type:** natural integer.\n- **Mandatory:** no.\n- **Default value:** ``0``.\n\n``first_daily``\n^^^^^^^^^^^^^^^\n\n- **Definition:** number of daily backups to keep (keeps the n first\n backups of the current day).\n- **Type:** natural integer.\n- **Mandatory:** no.\n- **Default value:** ``0``.\n\n``first_weekly``\n^^^^^^^^^^^^^^^^\n\n- **Definition:** number of weekly backups to keep (keeps the n first\n backups of the current week).\n- **Type:** natural integer.\n- **Mandatory:** no.\n- **Default value:** ``0``.\n\n``first_monthly``\n^^^^^^^^^^^^^^^^^\n\n- **Definition:** number of monthly backups to keep (keeps the n first\n backups of the current month).\n- **Type:** natural integer.\n- **Mandatory:** no.\n- **Default value:** ``0``.\n\n``encrypt``\n~~~~~~~~~~~\n\n- **Definition:** specifies if the backup should be encrypted.\n Encryption is performed with GnuPG, so make sure it's properly\n installed on your system.\n- **Type:** boolean.\n- **Mandatory:** no.\n- **Default value:** ``false``.\n\n``gnupg``\n~~~~~~~~~\n\n- **Definition:** GnuPG configuration.\n- **Type:** a list of the following parameters.\n- **Mandatory:** yes, if ``encrypt`` is set to ``true``.\n\n``home``\n^^^^^^^^\n\n- **Definition:** GnuPG home (where keys are stored).\n- **Type:** string.\n- **Mandatory:** no.\n- **Default value:** ``~/.gnupg``.\n\n``keyid``\n^^^^^^^^^\n\n- **Definition:** GnuPG key identifier (it could be the key id, user\n id, key comment...).\n- **Type:** string.\n- **Mandatory:** yes.\n\n``artifacts``\n~~~~~~~~~~~~~\n\n- **Definition:** specifies a list of files and folders to backup.\n- **Type:** a list of absolute or relative paths.\n- **Mandatory:** yes.\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/dolfinsbizou/backupper", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "backupper", "package_url": "https://pypi.org/project/backupper/", "platform": "", "project_url": "https://pypi.org/project/backupper/", "project_urls": { "Homepage": "https://github.com/dolfinsbizou/backupper" }, "release_url": "https://pypi.org/project/backupper/0.3b1/", "requires_dist": [ "python-gnupg", "pyyaml" ], "requires_python": "", "summary": "Easy and configurable backup tool", "version": "0.3b1" }, "last_serial": 3360244, "releases": { "0.1a2": [ { "comment_text": "", "digests": { "md5": "2684ba916e924a177cc86762b1a8f6e8", "sha256": "d2fb5ed1b412e7743afd1794d35a67572fb0ce689290da90bf9b3eb607f03598" }, "downloads": -1, "filename": "backupper-0.1a2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2684ba916e924a177cc86762b1a8f6e8", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8678, "upload_time": "2017-11-20T10:05:58", "url": "https://files.pythonhosted.org/packages/6a/a2/b69f6e7715466a4008945e353964e78a735c69b6c03d51ad16a199ef2c48/backupper-0.1a2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2c5bfd9114509e9f5edb59e571db2e6b", "sha256": "87ca44e7fd66338fa3677464666985cf2468abf39ff1344666607cb74a3e6274" }, "downloads": -1, "filename": "backupper-0.1a2.tar.gz", "has_sig": false, "md5_digest": "2c5bfd9114509e9f5edb59e571db2e6b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28842, "upload_time": "2017-11-20T10:06:00", "url": "https://files.pythonhosted.org/packages/47/f4/4181b9721245f7a859a6fff1e61df1f23eeaae6ba51bfd174deda5f8276b/backupper-0.1a2.tar.gz" } ], "0.1a3": [ { "comment_text": "", "digests": { "md5": "ba2033952c054459cdc557b8e1a6599f", "sha256": "2a5a35293c5ed291e24b7eec9f4804fa7512c10322d7898ac8fdd3aba54c2bd0" }, "downloads": -1, "filename": "backupper-0.1a3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ba2033952c054459cdc557b8e1a6599f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8619, "upload_time": "2017-11-20T10:08:14", "url": "https://files.pythonhosted.org/packages/66/cc/7af356ef16dc548f706b9a25a3125a3db9e70f009786b7feac5f68b8fcee/backupper-0.1a3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0d269dc5f23af6257bbd2c62ae9e55e2", "sha256": "327da749f5174675e5ff3680319750bfb787d8aa0bd61ac5f969280668139eb1" }, "downloads": -1, "filename": "backupper-0.1a3.tar.gz", "has_sig": false, "md5_digest": "0d269dc5f23af6257bbd2c62ae9e55e2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28816, "upload_time": "2017-11-20T10:08:16", "url": "https://files.pythonhosted.org/packages/53/29/cf753741771839e82e22131e55846d7402ba690ace9d8b15cd35724fc082/backupper-0.1a3.tar.gz" } ], "0.1a4": [ { "comment_text": "", "digests": { "md5": "f358e7c7d03bd5601893c1eb01ebfd56", "sha256": "f12673e89f2d0848330d026635e29ee8b9bf8cbe44626b200bb5d37030ef4382" }, "downloads": -1, "filename": "backupper-0.1a4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f358e7c7d03bd5601893c1eb01ebfd56", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8721, "upload_time": "2017-11-20T12:14:54", "url": "https://files.pythonhosted.org/packages/57/37/531865d7836fd2f6f1c38c22f70a1a796fbbb2c92e77656f428c137ddf3e/backupper-0.1a4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8dadf7175ce7e6e8b4b0839c7c83fec9", "sha256": "38e54099d613c7fe4a18f39c0eb874d8a2cd71cad3b23d1abcf1f2cca915a177" }, "downloads": -1, "filename": "backupper-0.1a4.tar.gz", "has_sig": false, "md5_digest": "8dadf7175ce7e6e8b4b0839c7c83fec9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28879, "upload_time": "2017-11-20T12:14:55", "url": "https://files.pythonhosted.org/packages/6f/74/2539c2672fbd187c5c822d3ec26f63a249e8c7593cccd66e21535b9a1aec/backupper-0.1a4.tar.gz" } ], "0.2a1": [ { "comment_text": "", "digests": { "md5": "4354b264253489f51f02be5d0abb955d", "sha256": "e8f019822a07389f44df4522433541ab62501658795636cfa9f02df97cb488e5" }, "downloads": -1, "filename": "backupper-0.2a1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4354b264253489f51f02be5d0abb955d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15068, "upload_time": "2017-11-23T08:32:59", "url": "https://files.pythonhosted.org/packages/05/92/7a248c68ce78e8a6f11ebd27c0d11bbc10f4064705c85ec4ef3809f2f79e/backupper-0.2a1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1b60b3853e11f619f0ae2472d73cb48a", "sha256": "22d994cd120cbd521f0278016fbc392af5a3cc0280506f291e90e59048b6e714" }, "downloads": -1, "filename": "backupper-0.2a1.tar.gz", "has_sig": false, "md5_digest": "1b60b3853e11f619f0ae2472d73cb48a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34174, "upload_time": "2017-11-23T08:33:01", "url": "https://files.pythonhosted.org/packages/ec/98/fabe8532d56224e3da8d75f77111a5358220deb798a8570502630e8987f0/backupper-0.2a1.tar.gz" } ], "0.3a1": [ { "comment_text": "", "digests": { "md5": "2e383c8b39afc91be7bdbfecc1cd2cdf", "sha256": "6170b00b856af692dea66a4fceae46cdb1bb00c41d0dcac808626cdc05fd6e36" }, "downloads": -1, "filename": "backupper-0.3a1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2e383c8b39afc91be7bdbfecc1cd2cdf", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16217, "upload_time": "2017-11-23T14:21:46", "url": "https://files.pythonhosted.org/packages/ea/c4/1fc0ecc732aa6ab4f756b940c6490c6afd9c1bd6a494ad5b9f669f7aada1/backupper-0.3a1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4a118c25999434a2a74788093185c9c9", "sha256": "186ce6d41e0d128b4a01e7023b30e3dc2f44b8e461cf35399d9d3857727bd862" }, "downloads": -1, "filename": "backupper-0.3a1.tar.gz", "has_sig": false, "md5_digest": "4a118c25999434a2a74788093185c9c9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35365, "upload_time": "2017-11-23T14:21:48", "url": "https://files.pythonhosted.org/packages/01/e2/5c478db88f2e2d339feed0ad3b5c93c9294f73220a2e746671873fefddf2/backupper-0.3a1.tar.gz" } ], "0.3a2": [ { "comment_text": "", "digests": { "md5": "d4424bde6647fb5f52b07823c1c0b212", "sha256": "cd37faa0ccbf0f644b577b961a29b193e40ed0b8383fd42a2dad5a38a069594c" }, "downloads": -1, "filename": "backupper-0.3a2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d4424bde6647fb5f52b07823c1c0b212", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16246, "upload_time": "2017-11-23T14:57:32", "url": "https://files.pythonhosted.org/packages/dd/16/b3c0d06fc8fb3c67afdf4209d86b2493c53470f2b070f3a30a85dd50dbb2/backupper-0.3a2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "360e19c9278e30e7372b401ca173dcf7", "sha256": "931954027e018b6ce14fff46b9abeb07c72239b5030c225527decfcd42d121c5" }, "downloads": -1, "filename": "backupper-0.3a2.tar.gz", "has_sig": false, "md5_digest": "360e19c9278e30e7372b401ca173dcf7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35415, "upload_time": "2017-11-23T14:57:34", "url": "https://files.pythonhosted.org/packages/72/31/a9efc7841daea8142354a4d5fdbb7cf947e87272faea9f9f91de5c005daa/backupper-0.3a2.tar.gz" } ], "0.3a3": [ { "comment_text": "", "digests": { "md5": "a8afe2fb779d969004305cb8a373444c", "sha256": "4d01a8ac609c3ba8fbceeffbc4382dd3df59a7e0c611ec10252b7d3bab7d3148" }, "downloads": -1, "filename": "backupper-0.3a3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a8afe2fb779d969004305cb8a373444c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16235, "upload_time": "2017-11-23T15:12:07", "url": "https://files.pythonhosted.org/packages/e5/2a/6260c00ef93dbd870bb3324042ec09a6b51752cd5f51180e5215c90dffdd/backupper-0.3a3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4a4a6ceede8ce6adc703cf3678d131fe", "sha256": "43afb0d41685087fec86dc83821a63531fafd95d84995c451bc586cd023a81d7" }, "downloads": -1, "filename": "backupper-0.3a3.tar.gz", "has_sig": false, "md5_digest": "4a4a6ceede8ce6adc703cf3678d131fe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35431, "upload_time": "2017-11-23T15:12:15", "url": "https://files.pythonhosted.org/packages/c9/4f/6d2eb584e1ce7c24b3c60bca4251a41a1b248a99cc8020ab8f7e436df42a/backupper-0.3a3.tar.gz" } ], "0.3b1": [ { "comment_text": "", "digests": { "md5": "bc814184cac1ea289795acf7233724e4", "sha256": "ded9190f4ac4ba89a86b6e5eaed9f2fd6ceaa10cea440608c175698d0341be7b" }, "downloads": -1, "filename": "backupper-0.3b1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bc814184cac1ea289795acf7233724e4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16431, "upload_time": "2017-11-24T08:40:07", "url": "https://files.pythonhosted.org/packages/0c/d3/ed7a1e083f2f986426dc33a08555d6e969a5aa772c2fd261616efb20d6d2/backupper-0.3b1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "55b5b65fd250a988234d8800c0963968", "sha256": "511450cbe8ecb032eacc5b22dbb59412dd6819f67ac665439ea2826cbdfc2ac4" }, "downloads": -1, "filename": "backupper-0.3b1.tar.gz", "has_sig": false, "md5_digest": "55b5b65fd250a988234d8800c0963968", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35589, "upload_time": "2017-11-24T08:40:09", "url": "https://files.pythonhosted.org/packages/9e/c5/0f86b9e6f5a1a6d7918b18dd326405d8b9854b5013667f4a97e88ac7dbbe/backupper-0.3b1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "bc814184cac1ea289795acf7233724e4", "sha256": "ded9190f4ac4ba89a86b6e5eaed9f2fd6ceaa10cea440608c175698d0341be7b" }, "downloads": -1, "filename": "backupper-0.3b1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bc814184cac1ea289795acf7233724e4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16431, "upload_time": "2017-11-24T08:40:07", "url": "https://files.pythonhosted.org/packages/0c/d3/ed7a1e083f2f986426dc33a08555d6e969a5aa772c2fd261616efb20d6d2/backupper-0.3b1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "55b5b65fd250a988234d8800c0963968", "sha256": "511450cbe8ecb032eacc5b22dbb59412dd6819f67ac665439ea2826cbdfc2ac4" }, "downloads": -1, "filename": "backupper-0.3b1.tar.gz", "has_sig": false, "md5_digest": "55b5b65fd250a988234d8800c0963968", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35589, "upload_time": "2017-11-24T08:40:09", "url": "https://files.pythonhosted.org/packages/9e/c5/0f86b9e6f5a1a6d7918b18dd326405d8b9854b5013667f4a97e88ac7dbbe/backupper-0.3b1.tar.gz" } ] }