{"action":"created","issue":{"url":"https://api.github.com/repos/vatesfr/xo-server/issues/401","repository_url":"https://api.github.com/repos/vatesfr/xo-server","labels_url":"https://api.github.com/repos/vatesfr/xo-server/issues/401/labels{/name}","comments_url":"https://api.github.com/repos/vatesfr/xo-server/issues/401/comments","events_url":"https://api.github.com/repos/vatesfr/xo-server/issues/401/events","html_url":"https://github.com/vatesfr/xo-server/pull/401","id":179025900,"number":401,"title":"Create filelock while backup is being written","user":{"login":"bcdonadio","id":1458878,"avatar_url":"https://avatars.githubusercontent.com/u/1458878?v=3","gravatar_id":"","url":"https://api.github.com/users/bcdonadio","html_url":"https://github.com/bcdonadio","followers_url":"https://api.github.com/users/bcdonadio/followers","following_url":"https://api.github.com/users/bcdonadio/following{/other_user}","gists_url":"https://api.github.com/users/bcdonadio/gists{/gist_id}","starred_url":"https://api.github.com/users/bcdonadio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bcdonadio/subscriptions","organizations_url":"https://api.github.com/users/bcdonadio/orgs","repos_url":"https://api.github.com/users/bcdonadio/repos","events_url":"https://api.github.com/users/bcdonadio/events{/privacy}","received_events_url":"https://api.github.com/users/bcdonadio/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":8,"created_at":"2016-09-24T11:33:28Z","updated_at":"2016-09-26T12:44:40Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/vatesfr/xo-server/pulls/401","html_url":"https://github.com/vatesfr/xo-server/pull/401","diff_url":"https://github.com/vatesfr/xo-server/pull/401.diff","patch_url":"https://github.com/vatesfr/xo-server/pull/401.patch"},"body":"This PR creates a simple filelock on the remote just before the backup output file is created and delete it when the operation finishes (both on error and success). Additionally, it deletes the partial output file if the export is not successful.\r\n\r\nRationale: On my use case, I have a staging NFS mount where XO saves its backups. When the save is completed, I need to compress it (I don't want to run the compressor on the same system as XO) and then send it to S3. However, on XO current implementation I have no way to know if the backup file is still being written, potentially leading to corrupted backups.\r\n\r\nSuggestions on improvements or alternative ways to achieve this are welcome."},"comment":{"url":"https://api.github.com/repos/vatesfr/xo-server/issues/comments/249559122","html_url":"https://github.com/vatesfr/xo-server/pull/401#issuecomment-249559122","issue_url":"https://api.github.com/repos/vatesfr/xo-server/issues/401","id":249559122,"user":{"login":"fufroma","id":5324476,"avatar_url":"https://avatars.githubusercontent.com/u/5324476?v=3","gravatar_id":"","url":"https://api.github.com/users/fufroma","html_url":"https://github.com/fufroma","followers_url":"https://api.github.com/users/fufroma/followers","following_url":"https://api.github.com/users/fufroma/following{/other_user}","gists_url":"https://api.github.com/users/fufroma/gists{/gist_id}","starred_url":"https://api.github.com/users/fufroma/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fufroma/subscriptions","organizations_url":"https://api.github.com/users/fufroma/orgs","repos_url":"https://api.github.com/users/fufroma/repos","events_url":"https://api.github.com/users/fufroma/events{/privacy}","received_events_url":"https://api.github.com/users/fufroma/received_events","type":"User","site_admin":false},"created_at":"2016-09-26T12:44:40Z","updated_at":"2016-09-26T12:44:40Z","body":"> Would this be better implemented as an XO plugin?\r\n\r\nI really think this should be mainstream."}}
{"actor":{"display_login":"fufroma"}}