Alexander Neumann
a849edf19a
local: remove double Close()
2017-04-10 22:42:33 +02:00
Alexander Neumann
0cbd59856c
layout: Add IsNotExist
2017-04-10 22:42:33 +02:00
Alexander Neumann
698ba57597
backend/tests: Print error stacktrace if available
2017-04-10 22:42:33 +02:00
Alexander Neumann
27ce6a85e9
sftp: Rework Open/Create
2017-04-10 22:42:33 +02:00
Alexander Neumann
ae290ab374
sftp: Rename Dir -> Path
2017-04-10 22:42:33 +02:00
Alexander Neumann
ab602c9d14
sftp: Add Layout
2017-04-10 22:40:24 +02:00
Alexander Neumann
2e53af1b75
sftp: Rename Open/Create
2017-04-10 22:39:13 +02:00
Alexander Neumann
1086528ab7
sftp: Fix errors import
2017-04-03 21:42:41 +02:00
Alexander Neumann
c26dd6b76f
sftp: Integrate command
2017-04-03 21:05:42 +02:00
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
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
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
6f76a6db66
rest: Make backend honor the REST protocol
2017-03-16 21:50:26 +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
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
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
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
deddedd88f
Merge pull request #872 from middelink/fix-787
...
Suppress (non error) output of `forget` during -q
2017-03-09 21:23:36 +01:00
Pauline Middelink
b38294f236
Suppress (non error) output of forget
during -q
...
Closes #787
2017-03-09 20:20:17 +01:00
Pauline Middelink
8a05de537f
Refactor prune
and rebuild_index
...
Factor out and reuse `rebuildIndex()` in cmd_rebuild_index and cmd_prune.
Use contexts.
2017-03-08 20:30:52 +01:00
Pauline Middelink
8a92687d9a
Refactor find
and ls
commands
...
Implement filtering by using `FindFilteredSnapshots()` to iterate over the snapshots
Refactor cmd_ls' `PrintNode()` into format.go, reuse its pretty printing in both `find`
and `ls` commands.
Use contexts.
2017-03-08 20:29:31 +01:00
Pauline Middelink
3432e7edcd
Refactor tag
to use FindFilteredSnapshots()
2017-03-08 20:28:44 +01:00
Pauline Middelink
3c6c17abcd
Refactor forget
and snapshots
command
...
Implement filtering by using `FindFilteredSnapshots()` to iterate over the snapshots
Refactor cmd_snapshots' `PrintSnapshots()` so its pretty printing can be used from
both `forget` and `snapshots`.
Use contexts.
2017-03-08 20:24:58 +01:00