diff options
author | Kali Kaneko (leap communications) <kali@leap.se> | 2016-09-20 17:51:46 -0400 |
---|---|---|
committer | Kali Kaneko (leap communications) <kali@leap.se> | 2016-09-20 19:47:09 -0400 |
commit | f5579605c4905dc71e8605081ba0263563f6926e (patch) | |
tree | 7efab2db265f4f28c5e951f5cd7cf9136c0b8493 /src/leap/bitmask/util.py | |
parent | 04e19184499dfa6a9ca49dc8324175cfe29e65b8 (diff) |
[bug] revert usage of twisted which
the test environment isn't finding the path properly, due to pytest
internals.
so:
- add path extension
- fix the order in which we're happy with a gpg option (to avoid symlinks)
Diffstat (limited to 'src/leap/bitmask/util.py')
-rw-r--r-- | src/leap/bitmask/util.py | 34 |
1 files changed, 18 insertions, 16 deletions
diff --git a/src/leap/bitmask/util.py b/src/leap/bitmask/util.py index 272334b..3a99e13 100644 --- a/src/leap/bitmask/util.py +++ b/src/leap/bitmask/util.py @@ -22,7 +22,8 @@ import platform import sys from twisted.python import log -from twisted.python.procutils import which + +from leap.common.files import which STANDALONE = getattr(sys, 'frozen', False) @@ -49,20 +50,6 @@ def get_gpg_bin_path(): """ gpgbin = None - # During the transition towards gpg2, we can look for /usr/bin/gpg1 - # binary, in case it was renamed using dpkg-divert or manually. - # We could just pick gpg2, but we need to solve #7564 first. - try: - gpgbin_options = which("gpg1") - for opt in gpgbin_options: - if not os.path.islink(opt): - gpgbin = opt - break - except IndexError as e: - log.msg("Couldn't find the gpg1 binary!: %s" % (e,)) - if gpgbin is not None: - return gpgbin - if STANDALONE: gpgbin = os.path.join( get_path_prefix(), "..", "apps", "mail", "gpg") @@ -70,7 +57,7 @@ def get_gpg_bin_path(): gpgbin += ".exe" else: try: - gpgbin_options = which("gpg") + gpgbin_options = which("gpg", path_extension='/usr/bin/') # gnupg checks that the path to the binary is not a # symlink, so we need to filter those and come up with # just one option. @@ -85,6 +72,21 @@ def get_gpg_bin_path(): gpgbin = os.path.abspath( os.path.join(here(), "apps", "mail", "gpg")) + if gpgbin is not None: + return gpgbin + + # During the transition towards gpg2, we can look for /usr/bin/gpg1 + # binary, in case it was renamed using dpkg-divert or manually. + # We could just pick gpg2, but we need to solve #7564 first. + try: + gpgbin_options = which("gpg1") + for opt in gpgbin_options: + if not os.path.islink(opt): + gpgbin = opt + break + except IndexError as e: + log.msg("Couldn't find the gpg1 binary!: %s" % (e,)) + if gpgbin is None: log.msg("Could not find gpg1 binary") return gpgbin |