Commit graph

352 commits

Author SHA1 Message Date
enkore
9a5bc514b3 Merge pull request #2231 from leo-b/1.0-maint-patterns
Fix for PR #1971
2017-02-28 20:08:05 +01:00
Alexander 'Leo' Bergolth
fefe59589e --patterns-from was accessing args.roots instead of args.paths
add a test case that parses a command containing --patterns-from
2017-02-28 12:01:37 +01:00
enkore
3a3dfcbef5 Merge pull request #2149 from borgbackup/release-1.0.10
Release 1.0.10
2017-02-13 13:29:14 +01:00
Thomas Waldmann
e5f7121296 paperkey.html - decode as utf-8, fixes #2150
hardcoded the encoding for reading it. while utf-8 is the default
encoding on many systems, it does not work everywhere.

and when it tries to decode with the ascii decoder, it fails.
2017-02-13 04:12:12 +01:00
Marian Beermann
cf1f409871 add test for export key --qr-html 2017-02-12 22:26:06 +01:00
enkore
d188886269 Merge pull request #1971 from leo-b/1.0-maint-patterns
new --pattern and --patterns-from options
2017-02-12 19:06:35 +01:00
Alexander 'Leo' Bergolth
a908599aa9 add two tests for the order of patterns and excludes 2017-01-26 16:31:31 +01:00
TW
ca0c1dab11 Merge pull request #2015 from ThomasWaldmann/fix-location-regex
fix bad parsing of wrong syntax
2017-01-21 05:46:58 +01:00
Thomas Waldmann
c0fb8da595 fix xattr test race condition, fixes #2047 2017-01-14 23:19:40 +01:00
Alexander 'Leo' Bergolth
58c3e0cd48 flake8 beautifications 2017-01-13 17:53:41 +01:00
Alexander 'Leo' Bergolth
7b668a1b50 - change argument parsing of pattern- and exclude-files:
patterns from such files are inserted in the order of appearance on the commandline now.
- allow specifying root paths for borg create and borg extract only by root patterns ("R path")
- adopt test cases and add some test cases for pattern argument parsing
2017-01-13 17:30:07 +01:00
Thomas Waldmann
1667926c96 fix bad parsing of wrong syntax
this was like whack-a-mole: fix one regex -> another issue pops up
2017-01-12 01:01:24 +01:00
Alexander 'Leo' Bergolth
ead93b2e58 minor changes due to TWs review 2017-01-11 14:00:58 +01:00
Thomas Waldmann
2938a5f6fb work around spurious log level related test fail when using pytest-xdist 2017-01-06 05:48:50 +01:00
Thomas Waldmann
5ed6d21302 parallel testing: fix issue related to non-reproducible set / dict order 2017-01-06 05:48:50 +01:00
Marian Beermann
320a56144f helpers.Buffer: raise OSError subclass if too much memory is allocd 2017-01-04 19:28:05 +01:00
Alexander 'Leo' Bergolth
67bd303e14 flake8, second attempt :-) 2016-12-21 16:53:49 +01:00
Alexander 'Leo' Bergolth
3fdc631064 flake8 beautifications 2016-12-21 16:40:07 +01:00
Alexander 'Leo' Bergolth
fbee04ce23 simplify example in helptext. add testdata. 2016-12-21 14:34:44 +01:00
Alexander 'Leo' Bergolth
876b670d60 add two new options --pattern and --patterns-from as discussed in #1406 2016-12-21 13:48:02 +01:00
Marian Beermann
4d6141a607 upgrade: --disable-tam 2016-12-19 04:01:32 +01:00
Marian Beermann
f2f50efc28 check: handle duplicate archive items neatly
Signed-off-by: Thomas Waldmann <tw@waldmann-edv.de>
2016-12-17 20:06:41 +01:00
Marian Beermann
28ad779a6f Add tertiary authentication for metadata (TAM)
Signed-off-by: Thomas Waldmann <tw@waldmann-edv.de>
2016-12-17 20:06:41 +01:00
Thomas Waldmann
61370082d6 catch errno.ENOSYS for mknod (win 10 lxsys)
mknod raises this when running as non-root under Windows 10's Linux Subsystem.
2016-12-17 00:37:00 +01:00
Thomas Waldmann
335d599db4 fix location parser for archives with @ char, add test, fixes #1930
we must exclude colon and slash chars from the username, otherwise the term for the user part
will match everything up to a @ char in the archive name.

a slash can't be in a username as the home directory would contain a illegal slash (slash is path sep),

a colon likely also should not be in a username because chown user:group ... syntax.
2016-12-09 03:37:13 +01:00
Marian Beermann
146d586b3b check: skip corrupted chunks during manifest rebuild 2016-11-30 01:43:01 +01:00
Marian Beermann
71775bac97
check: rebuild manifest if it's corrupted 2016-11-30 01:06:23 +01:00
Thomas Waldmann
9e760a69a2 test_get_(cache|keys)_dir: clean env state, fixes #1897
make sure the BORG_(CACHE|KEYS)_DIR env var is not set initially.
2016-11-29 14:08:58 +01:00
Thomas Waldmann
e17fe2b295 borg umount, fixes #1855
this refactors umount code we already used for the testsuite into the platform module's namespace.

also, it exposes that functionality via the cli api, so users can use it via "borg umount <mountpoint>",
which is more consistent than using borg to mount and fusermount -u (or umount) to un-mount.
2016-11-17 20:16:28 +01:00
Marian Beermann
639eba1635 Fix check incorrectly reporting attic 0.13 and earlier archives as corrupt 2016-11-13 15:25:10 +01:00
Marian Beermann
2261709e78
check: handle repo w/o objects gracefully
normal check would complete, --repair would crash when trying
to write the rebuilt (empty) manifest out, since self.key was None
2016-11-13 11:45:42 +01:00
enkore
5fecac63a9 testsuite/archiver: fix missing newline before RemoteArchiverTestCase 2016-11-10 17:35:59 +01:00
Thomas Waldmann
df7191e55c skip remote tests on cygwin
remote is broken and hangs infinitely on cygwin.

https://github.com/borgbackup/borg/issues/1268
2016-11-02 04:09:16 +01:00
Thomas Waldmann
f2ed60b80b vagrant: fix fuse test for darwin, fixes #1546
otherwise the "input" dir is root.wheel -rwx------ and gives a PermissionError when trying to access it.
2016-10-31 05:02:19 +01:00
Thomas Waldmann
02ecf04780 fuse tests: catch ENOTSUP on freebsd
seems like fuse does not support xattrs there at all.
2016-10-24 05:19:50 +02:00
Thomas Waldmann
ede3b4a354 fuse: test troublesome xattrs last 2016-10-24 05:19:50 +02:00
Thomas Waldmann
48fa449e39 assert_dirs_equal: add ignore_bsdflags and ignore_xattrs argument
bsdflags are not supported in the FUSE mount.
xattrs are supported, but are tested separately.
2016-10-24 05:19:50 +02:00
Thomas Waldmann
f9aa74e7e1 skip fuse test for borg binary + fakeroot
strange: works on wheezy, blows up on xenial
2016-10-20 17:19:37 +02:00
Thomas Waldmann
ade405eae0 ignore security.selinux xattrs, fixes #1735
they fail the FUSE tests on centos7.
2016-10-19 13:37:49 +02:00
Thomas Waldmann
e829e8372d implement /./relpath hack, fixes #1655 2016-10-15 00:57:27 +02:00
Thomas Waldmann
2b27a06595 use monkeypatch to set env vars
but only on pytest based tests.
2016-10-14 04:44:06 +02:00
Thomas Waldmann
f3efcdbd2e point XDG_*_HOME to temp dirs for tests, fixes #1714
otherwise it spoils the user's nonces and cache dirs with lots of files.

also: remove all BORG_* env vars from the outer environment

fix get_*_dir tests to use monkeypatch.
2016-10-14 00:46:43 +02:00
Thomas Waldmann
8d9475f704 fuse_mount contextmanager: accept any options
not just the -o mount_options, but any options borg mount would take.
simpler, more flexible.
2016-10-13 03:53:26 +02:00
Thomas Waldmann
cf0359eba7 allow pathes with colons, fixes #1705
also:
- refactor / deduplicate the location parsing regexes
- add comments
- add more tests for Location parsing
2016-10-12 22:57:23 +02:00
Thomas Waldmann
67aafec195 backport bin_to_hex and use it
simplifies code and also porting and merging between 1.0 and 1.1/master.
2016-10-06 05:15:01 +02:00
Thomas Waldmann
8fd0e07a1c hashindex: fix iterator implementation
NSKeyIterator and ChunkKeyIterator raised StopIteration once only when they reached their end.

But they did not raise StopIteration if one called next() again after they were exhausted,
so they did not comply to the standard iterator protocol.

AFAIK, this did not cause actual problems due to the way these iterators are used,
but when I tried to use itertools.islice() to get n-long sequences from these iterators,
it failed / went into an endless loop.
2016-09-29 04:41:59 +02:00
Martin Hostettler
15444b19d1 testsuite/archiver.py: Fix key import failure with ArchiverTestCaseBinary 2016-09-26 19:47:39 +02:00
Martin Hostettler
7c2025a2c0 testsuite/archiver.py: Add a comment how to easily test ArchiverTestCaseBinary locally. 2016-09-26 19:28:00 +02:00
Martin Hostettler
29b5136da7 archiver: Move key management commands to new key subcommand. 2016-09-25 16:24:57 +02:00
Martin Hostettler
55a3331942 Implement key import / export
We recommed that users backup their keys, this adds simple to use commands
to do so.

Supported formats are the keyfile format used by borg internally and
a special format with by line checksums for printed backups.

For this format the import is an interactive process which checks
each line as soon as it is input.

Fixes #1555
2016-09-24 12:55:34 +02:00