{"action":"created","issue":{"url":"https://api.github.com/repos/borgbackup/borg/issues/1754","repository_url":"https://api.github.com/repos/borgbackup/borg","labels_url":"https://api.github.com/repos/borgbackup/borg/issues/1754/labels{/name}","comments_url":"https://api.github.com/repos/borgbackup/borg/issues/1754/comments","events_url":"https://api.github.com/repos/borgbackup/borg/issues/1754/events","html_url":"https://github.com/borgbackup/borg/issues/1754","id":184697577,"number":1754,"title":"rsnapshot / rsync+hardlinks importer","user":{"login":"ThomasWaldmann","id":356103,"avatar_url":"https://avatars.githubusercontent.com/u/356103?v=3","gravatar_id":"","url":"https://api.github.com/users/ThomasWaldmann","html_url":"https://github.com/ThomasWaldmann","followers_url":"https://api.github.com/users/ThomasWaldmann/followers","following_url":"https://api.github.com/users/ThomasWaldmann/following{/other_user}","gists_url":"https://api.github.com/users/ThomasWaldmann/gists{/gist_id}","starred_url":"https://api.github.com/users/ThomasWaldmann/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ThomasWaldmann/subscriptions","organizations_url":"https://api.github.com/users/ThomasWaldmann/orgs","repos_url":"https://api.github.com/users/ThomasWaldmann/repos","events_url":"https://api.github.com/users/ThomasWaldmann/events{/privacy}","received_events_url":"https://api.github.com/users/ThomasWaldmann/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/borgbackup/borg/labels/easy","name":"easy","color":"5319e7"},{"url":"https://api.github.com/repos/borgbackup/borg/labels/help%20wanted","name":"help wanted","color":"159818"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":7,"created_at":"2016-10-23T15:48:55Z","updated_at":"2016-10-27T16:54:53Z","closed_at":null,"body":"this method is quite popular and works good (except for the cases it can not handle [like renamed directories or VM disk images], where borg works much better).\r\n\r\nto ease migration, a importer could be written (as a separate project, in Python, please) and then link from borg/community.\r\n\r\nthe importer should work like this:\r\n- use an existing borg repo (usually empty, but not required to be empty)\r\n- discover and iterate over all rsnapshot / rsync+hl backups (it would be nice if the discovery is easily adaptable, a lot of people also use custom scripts, not rsnapshot)\r\n- generate a borg archive per rsync snapshot (do **not** put all rsync snapshot into 1 borg archive!)\r\n- easily adaptable borg archive name generation from discovered rsync snapshot (from dir name, from a file's timestamp, from...)\r\n\r\nthere could be 3 ways to call borg:\r\n- note: for the very first PoC it does not even need to call borg, it could just print out the generated borg commands.\r\n- subprocess calls to borg command (with/without shell=True)\r\n- import / call the (relatively stable) cli api (like the archiver tests do)\r\n- import / call borg api more directly (less stable api)\r\n\r\nNote: this project is relatively easy (does not need deep borg knowledge, only some python knowledge), but it is not quick. Likely some hours until first prototype, some days work until working good."},"comment":{"url":"https://api.github.com/repos/borgbackup/borg/issues/comments/256704627","html_url":"https://github.com/borgbackup/borg/issues/1754#issuecomment-256704627","issue_url":"https://api.github.com/repos/borgbackup/borg/issues/1754","id":256704627,"user":{"login":"ThomasWaldmann","id":356103,"avatar_url":"https://avatars.githubusercontent.com/u/356103?v=3","gravatar_id":"","url":"https://api.github.com/users/ThomasWaldmann","html_url":"https://github.com/ThomasWaldmann","followers_url":"https://api.github.com/users/ThomasWaldmann/followers","following_url":"https://api.github.com/users/ThomasWaldmann/following{/other_user}","gists_url":"https://api.github.com/users/ThomasWaldmann/gists{/gist_id}","starred_url":"https://api.github.com/users/ThomasWaldmann/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ThomasWaldmann/subscriptions","organizations_url":"https://api.github.com/users/ThomasWaldmann/orgs","repos_url":"https://api.github.com/users/ThomasWaldmann/repos","events_url":"https://api.github.com/users/ThomasWaldmann/events{/privacy}","received_events_url":"https://api.github.com/users/ThomasWaldmann/received_events","type":"User","site_admin":false},"created_at":"2016-10-27T16:54:53Z","updated_at":"2016-10-27T16:54:53Z","body":"@3sky how is it going? if you have questions, just join us on IRC (see docs)."}}
{"actor":{"display_login":"ThomasWaldmann"}}