{ "info": { "author": "Mario Harjac", "author_email": "m@harja.ch", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# ROSBackup\n\n## Summary\n\nSimple utility for backing up RouterOS configuration.\n\n## Installation\n### Create backup user account\nIt is recommended to create a dedicated user account with limited permissions for backup purposes. This user should have ssh and read permissions. Please check [RouterOs manual](https://wiki.mikrotik.com/wiki/Manual:Router_AAA) if you are not sure how to do this. \n\n### Installation form PyPI:\n```\npip3 install rosbackup\n```\n### Docker\nYou can download the image from Docker Hub:\n```\ndocker pull mharjac/rosbackup\n```\nOr build it on your own:\n```\ndocker build -t rosbackup . -f docker/Dockerfile\n```\nCreate a volume for storing backups:\n```\ndocker volume create mikrotik-router-1\n```\nCreate a container:\n```\ndocker run -d --name=mikrotik-router-1 -e ROS_HOST=\"https://192.168.1.1\" -e ROS_USER=\"backusr\" -e ROS_PASS=\"somesuperstrongpassword\" --mount=src=mikrotik-router-1,dst=/backup rosbackup:latest\n```\nAnd finally, for unattended regular backups, create a cron job which will execute:\n```\ndocker start mikrotik-router-1\n```\n### Install from Snap Store\n```\nsnap install rosbackup\n```\n## Usage\nIt can be used as an interactive tool from CLI:\n```\nrosbackup -H https://192.168.1.1 -u user1 -p passw0rd -f ./backup.cfg\n```\nWhen used in CLI, it will prompt for password if -p (--password) flag is not provided. Also, without -f (--file) flag, config will be printed to the stdout. \n\nIt can also be used for unattended backups (e.g., in containers), in which case, it requires following environment variables: \n* ROS_HOST: for storing IP address or hostname (e.g., 192.168.1.1)\n* ROS_USER: username for making backups\n* ROS_PASS: password for provided username\n* ROS_DELAY: execution delay between commands (optional; required on older devices; default 5)\n```\nexport ROS_HOST=\"192.168.1.1\" ROS_USER=\"user1\" ROS_PASS=\"passw0rd\" ROS_DELAY=\"3\"\nrosbackup\n```\nWhen executed in unattended mode, configuration backup will be saved in execution directory as `config-{time_stamp}.cfg`.\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/mharjac/rosbackup", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "rosbackup", "package_url": "https://pypi.org/project/rosbackup/", "platform": "", "project_url": "https://pypi.org/project/rosbackup/", "project_urls": { "Homepage": "https://github.com/mharjac/rosbackup" }, "release_url": "https://pypi.org/project/rosbackup/1.1.0/", "requires_dist": [ "netmiko" ], "requires_python": ">=3.6", "summary": "RouterOS config backup tool", "version": "1.1.0", "yanked": false, "yanked_reason": null }, "last_serial": 6045979, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "f3aacf06c0023bff1a58031e1143cacb", "sha256": "bee43bbb4b6e4eb337bd903c6abd1301b5e7aa18f754e89fc7cbc8b0bc6a3f5d" }, "downloads": -1, "filename": "rosbackup-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "f3aacf06c0023bff1a58031e1143cacb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 5347, "upload_time": "2019-10-25T10:16:30", "upload_time_iso_8601": "2019-10-25T10:16:30.062781Z", "url": "https://files.pythonhosted.org/packages/15/98/8480e765d310d43d5ccbb9f22bcfe4621ec0592b0b7f8d9e2bdc2042a387/rosbackup-1.0.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "76d427edd0e7d6a24ecb2eba6b785b30", "sha256": "440d3968c722d98786aae874d9f92db520d839191e06723e05c03ed181ff9c57" }, "downloads": -1, "filename": "rosbackup-1.0.0.tar.gz", "has_sig": false, "md5_digest": "76d427edd0e7d6a24ecb2eba6b785b30", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 3154, "upload_time": "2019-10-25T10:16:32", "upload_time_iso_8601": "2019-10-25T10:16:32.365334Z", "url": "https://files.pythonhosted.org/packages/f2/45/39f34c775224134e995f77d180940b5cd86b3f21f65c47b8c6ae28a1d071/rosbackup-1.0.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "a971d8ebec19b2f95491cb511cea2cdd", "sha256": "7301458c276caa3e37118a7cdd7c6f492b02784bd21e11f1eb85d072c868f9cf" }, "downloads": -1, "filename": "rosbackup-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "a971d8ebec19b2f95491cb511cea2cdd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 5547, "upload_time": "2019-10-29T08:45:26", "upload_time_iso_8601": "2019-10-29T08:45:26.476418Z", "url": "https://files.pythonhosted.org/packages/e2/73/c7c42f6faa5102c372ec37c4e3bd4e606890f7f2fdab8f66c414eca27009/rosbackup-1.1.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "fcce030ddae79b489f8ed4df63940017", "sha256": "f14c94d1808d3be050d406905976b5d1d1be93689a8c354fca97962da1f4d705" }, "downloads": -1, "filename": "rosbackup-1.1.0.tar.gz", "has_sig": false, "md5_digest": "fcce030ddae79b489f8ed4df63940017", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 3315, "upload_time": "2019-10-29T08:45:27", "upload_time_iso_8601": "2019-10-29T08:45:27.950778Z", "url": "https://files.pythonhosted.org/packages/ba/22/454aea52020d174cfc7aefd3d905514849cae1717a894add0d54bb9cd91c/rosbackup-1.1.0.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a971d8ebec19b2f95491cb511cea2cdd", "sha256": "7301458c276caa3e37118a7cdd7c6f492b02784bd21e11f1eb85d072c868f9cf" }, "downloads": -1, "filename": "rosbackup-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "a971d8ebec19b2f95491cb511cea2cdd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 5547, "upload_time": "2019-10-29T08:45:26", "upload_time_iso_8601": "2019-10-29T08:45:26.476418Z", "url": "https://files.pythonhosted.org/packages/e2/73/c7c42f6faa5102c372ec37c4e3bd4e606890f7f2fdab8f66c414eca27009/rosbackup-1.1.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "fcce030ddae79b489f8ed4df63940017", "sha256": "f14c94d1808d3be050d406905976b5d1d1be93689a8c354fca97962da1f4d705" }, "downloads": -1, "filename": "rosbackup-1.1.0.tar.gz", "has_sig": false, "md5_digest": "fcce030ddae79b489f8ed4df63940017", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 3315, "upload_time": "2019-10-29T08:45:27", "upload_time_iso_8601": "2019-10-29T08:45:27.950778Z", "url": "https://files.pythonhosted.org/packages/ba/22/454aea52020d174cfc7aefd3d905514849cae1717a894add0d54bb9cd91c/rosbackup-1.1.0.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }