Commit Graph

2384 Commits

Author SHA1 Message Date
Alexander Neumann d3b6f75848 sftp: Add SplitShellArgs 2017-04-03 08:57:33 +02:00
Alexander Neumann d1efdcd78e Add integration test for layouts 2017-04-02 20:35:17 +02:00
Alexander Neumann 95ab5adda1 local: Expose layout as extended option 2017-04-02 20:29:00 +02:00
Alexander Neumann c5eb36fe9d layout: improve error message for ParseLayout 2017-04-02 20:28:42 +02:00
Alexander Neumann e3e3a8a695 local: Add layout tests 2017-04-02 20:01:40 +02:00
Alexander Neumann 24ebf95f33 local: Automatically detect layout 2017-04-02 20:01:40 +02:00
Alexander Neumann 54465c92cc layout: Allow passing in a default layout 2017-04-02 20:01:36 +02:00
Alexander Neumann f7c4b3a922 Fix layout detection 2017-04-02 19:18:03 +02:00
Alexander Neumann 50dfa64a54 Add layout name parser 2017-04-02 17:57:28 +02:00
Alexander Neumann c6b8ffbb61 Add layout auto detection 2017-04-02 17:25:22 +02:00
Alexander Neumann 3e81dcdfc2 Add cloud and s3 layout 2017-03-26 22:20:10 +02:00
Alexander Neumann 782b740c95 local: Remove unused code 2017-03-26 22:14:37 +02:00
Alexander Neumann 3fd6fa6f86 local: Use Layout for filename generation 2017-03-26 21:53:26 +02:00
Alexander Neumann 6a201f7962 backend: Add Layout 2017-03-26 21:52:49 +02:00
Alexander Neumann 80a864c52c test: Add TempDir() helper 2017-03-26 20:40:45 +02:00
Alexander Neumann c8eea49909 debug: Allow creating insecure repositories
Uses low-security KDF parameters for scrypt(). Do not use in production!
2017-03-26 10:55:08 +02:00
Alexander Neumann 95c354fe81 doc: s3 backend deviations, cloud repo layout 2017-03-26 10:55:08 +02:00
Alexander Neumann 6935f82389 Merge pull request #897 from restic/add-extended-options
Add extended options
2017-03-26 10:53:36 +02:00
Alexander Neumann 719bb18316 Parse extended options 2017-03-25 17:52:16 +01:00
Alexander Neumann a8a7701f60 options: Add namespace to Apply() 2017-03-25 17:52:16 +01:00
Alexander Neumann 2924ebc124 options: Add Apply() 2017-03-25 17:52:16 +01:00
Alexander Neumann f587a5f4f0 options: fail when key is configured twice 2017-03-25 17:52:16 +01:00
Alexander Neumann 946b4f4b86 Add extended options via -o/--option 2017-03-25 17:52:12 +01:00
Alexander Neumann d0a5e86da1 Add free-form options parsing 2017-03-25 17:45:11 +01:00
Alexander Neumann 2e0b19f63f location: Move to backend/location 2017-03-25 17:45:11 +01:00
Alexander Neumann 9861f3d435 location: Reformat tests, use sub tests 2017-03-25 17:45:10 +01:00
Alexander Neumann 482a6e9840 local: Add Config struct 2017-03-25 17:45:10 +01:00
Alexander Neumann 6a8700d86c Merge pull request #896 from restic/fix-895
doc: Add section about how to change the sftp port
2017-03-25 09:31:29 +01:00
Alexander Neumann 1733b24f9d doc: Add section about how to change the sftp port
Closes #895
Related to #785
2017-03-25 09:07:50 +01:00
Alexander Neumann c85055bb03 Merge pull request #887 from restic/rest-integration-tests
WIP: rest: Make backend honor the REST protocol
2017-03-18 15:21:05 +01:00
Alexander Neumann 280f05b174 Run rest-server 2017-03-18 11:11:31 +01:00
Alexander Neumann 990b0f1c15 Travis: Run rest-server for integration tests 2017-03-16 21:59:21 +01:00
Alexander Neumann 6f76a6db66 rest: Make backend honor the REST protocol 2017-03-16 21:50:26 +01:00
Alexander Neumann 0c2834edb7 Merge pull request #883 from trbs/s3_perf_cache_stat
Cache size of last ReadAt on S3 for performance
2017-03-15 20:59:29 +01:00
trbs f1ba45723c introduce RWLock for caching obj.Stat() 2017-03-14 23:05:51 +01:00
trbs b523eef294 Cache size of last ReadAt on S3 for performance
Each obj.Stat() call adds another request to the S3 endpoint
for some commands a lot of ReadAt calls are made for the same
object in S3. This patch essentially cuts the number of calls
to S3 in this case in half. Speeding up the progress and lowering
costs to S3.
2017-03-14 14:02:50 +01:00
Alexander Neumann bf30b2831b Merge pull request #878 from middelink/fix-825
Fix restoring files ownership as non-root user
2017-03-12 18:20:28 +01:00
Pauline Middelink 642cd3bebf Fix restoring files as non-root user
As we cannot reliably detect in advance if we can set ownership, permissions,
timestamps or ext attributes, execute ALL the requested changes before
returning the first error we found.

Report total errors at end of restore and stop printing entire stacktraces
where just the error message is sufficient.

Fixes #655
2017-03-12 16:51:58 +01:00
Alexander Neumann 057dd6c590 v0.5.0
-----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCAAzFiEEz48Y8oRFdZc/edThkaaGi9P3qQcFAljD4MMVHGFsZXhhbmRl
 ckBidW1wZXJuLmRlAAoJEJGmhovT96kHt9kP/3lZIrmpBE78mLZ0vNwUI0ruC9s5
 ldiOzpQl+dN3kqU+A3c5F7lBssBCsvnZKgI4Ip1/5cGhVDTPIi6tnbko932Hhrfh
 mkxiJjQjlTQtlinRT/giRG1j4X+LW7BU2Q4cnuvG3f8Oumh9UlfuQELlK67XG8+1
 BnMPjkfFgKLI1nzxVnz+J34icAnwSnQD2PPKraqTH+pvWn8KbDxC9jZ+WoqwZdG4
 YURYKg4HE5ZluJB+l8R9x+GMuvTTHK7JhMj6IYWgdXBQtrgA34GoGbvQD/Vdfo3W
 Xkfsbvwrdzi2ndGe26qDxkMpx7Yt+beRw/dCTBvuPjdZ4hcwfoQLn+wRSQ5/QQ+d
 EnKFlu4LICI0bipSJnu1YZ1fokUZ8NYDdLVBRwWzMmwc72+tl5y8PywnmlUSli3z
 /XMIYK58zmSJgd7wFxwwH5pNEZimlTQWnzlD+u9dm9ToaPqW1iDlYzLUqw3LM7Bi
 3bz10VtIeQbH+leYyX4glCRrpQ3gmCxFMgI0cvhaXy/du+VcM0MdD/lzhSCPFT8E
 HePTGG/gT3udNCvfuFZ6agueEo21dAk4PzvM1CFHQreNMi4M4CERMdv+AeDmkgv8
 ALMUpy8dAajIuNHfHbeNWdVL9AAGPwm1o72oHp2+2UW2bXMffale0iYv8ARWaqtq
 OU6r0wXOrr8ZaHbd
 =jjG7
 -----END PGP SIGNATURE-----

Merge tag 'v0.5.0'

v0.5.0
2017-03-11 21:14:39 +01:00
Alexander Neumann 0bd7db9efe Add VERSION file for 0.5.0 2017-03-11 12:36:35 +01:00
Alexander Neumann f678c97346 Add VERSION file for 0.5.0 2017-03-11 12:34:27 +01:00
Alexander Neumann 887e81188f Merge pull request #877 from middelink/fix-875
Fix crash at restoring pre-existing hardlinked files
2017-03-11 10:13:43 +01:00
Alexander Neumann 8d0140aabe Merge pull request #876 from middelink/fix-836
Restore does not truncate files it restores
2017-03-11 10:12:53 +01:00
Alexander Neumann 2a8f275a28 Manual: Document `TMPDIR` env variable
Closes #873
2017-03-11 10:02:33 +01:00
Alexander Neumann 55c3150946 Manual: Fix section about JSON 2017-03-11 09:59:36 +01:00
Pauline Middelink b56e16acd0 Fix crash at restoring pre-existing hardlinked files
Remove target file, ignore non existing file errors.

Small memory saving: Only keep inodes around for files with a link count > 1.
(We will/can never be asked to restore a hardlinked file with one of the
files having a link count of 1.)

Closes #836
2017-03-11 00:06:58 +01:00
Pauline Middelink b75186533d Restore does not truncate files it restores
Missing O_TRUNC when doing O_CREAT.

Closes #875
2017-03-10 22:46:13 +01:00
Alexander Neumann 8958efba60 Merge pull request #871 from middelink/fix-869
Refactor output of `find` to allow for json and normal output.
2017-03-10 20:03:26 +01:00
Pauline Middelink a9707a5728 Refactor output of `find` to allow for json and normal output.
Rather complicated solution becaused I wanted to retain the streaming
character of the output, which means for json I have to manually add
headers and footers per snapshot scanned + a list around the whole
set.

As the json ouput is now partly handcrafted, add proper testing to catch
unintentional changes to the output, making it non-json compliant.

Closes #869
2017-03-10 16:23:58 +01:00
Alexander Neumann 7635feb591 Add cross-compilation to README and Manual 2017-03-09 21:24:38 +01:00